From f823b065ebbc4ee635a5c4c3e103d76b12b2a466 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Thu, 8 Jun 2023 15:20:47 -0400 Subject: [PATCH 001/703] Adding permissions table --- .../manage-access/enterprise-permissions.md | 8 ++++++ .../snippets/enterprise-permissions-table.md | 26 +++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 website/snippets/enterprise-permissions-table.md diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index 3e12bed9939..8f0c8c3b2aa 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -24,6 +24,14 @@ The following permission sets are available for assignment in dbt Cloud Enterpri can be granted to dbt Cloud groups which are then in turn granted to users. A dbt Cloud group can be associated with more than one permission sets. +:::info Role permisisons + +The following table lists the standard roles and permissions associated with them in dbt Cloud. Some roles, such as _Stakeholder_ have more nuanced access to features. View the individual role descriptions for more information beyond the table definitions. + +::: + + + ### Account Admin - **Has permissions on:** Authorized projects, account-level settings diff --git a/website/snippets/enterprise-permissions-table.md b/website/snippets/enterprise-permissions-table.md new file mode 100644 index 00000000000..6c021707a89 --- /dev/null +++ b/website/snippets/enterprise-permissions-table.md @@ -0,0 +1,26 @@ + +Key: + +* (C)reate — Create new feature +* (M)odify — Change existing fields. +* (D)elete — Remove feature fields entirely +* (V)iew — Read-only access +* ❌ = No access to the feature +* ✅ = Can access feature that does not use C/M/D/V permissions + +_Scroll to view all fields_ + +| Role | Environments | Projects | Connections | Jobs | Repositories | Groups | Group memberships | Account settings | Webhooks | Account-level artifacts | Notifications | Use IDE | +|-----------------|:------------:|:--------:|:-----------:|:-----:|:------------:|:------:|:-----------------:|:----------------:|:--------:|:-----------------------:|:-------------:|:-------:| +| Account admin | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | ✅ | +| Account viewer | V | V | V | V | V | V | V | V | ❌ | V | V | ❌ | +| Admin | C/M/D | V | C/M/D | C/M/D | C/M/D | V | C/M/D | V | C/M/D | ❌ | V | ✅ | +| Analyst | V | ❌ | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | +| Database admin | V | V | C/M/D | V | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Developer | ❌ | ❌ | ❌ | C/M/D | ❌ | ❌ | ❌ | ❌ | C/M/D | ❌ | ❌ | ✅ | +| Git admin | V | V | V | V | C/M/D | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Job admin | C/M/V | ❌ | V | C/M/D | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Job viewer | V | ❌ | ❌ | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Project creator | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | V | V | V | ❌ | ❌ | V | ✅ | +| Stakeholder | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Team admin | V | V | ❌ | V | V | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | From f2853dbb5c939a13eda516be423cae56129487bd Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Tue, 13 Jun 2023 17:59:01 -0700 Subject: [PATCH 002/703] Update redshift-setup.md --- .../connect-data-platform/redshift-setup.md | 244 ++++++++++++++++++ 1 file changed, 244 insertions(+) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index 4d5042a26be..b8108247ecd 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -47,6 +47,250 @@ pip is the easiest way to install the adapter:

For further info, refer to the GitHub repository: {frontMatter.meta.github_repo}.

+--------remove this bit yo +## Authentication Methods + +The authentication methods that dbt Core supports are: + +- `database` — Password-based authentication (default, will be used if `method` is not provided) +- `IAM` — Kerberos + + +Click on one of these authentication methods for further details on how to configure your connection profile. Each tab also includes an example `profiles.yml` configuration file for you to review. + + + + + +The following table contains the parameters for database (password-based) connection method. + + +| Profile field | Example | Description | +| ------------- | ------- | ------------ | +| `method` | `database`| Leave this parameter unconfigured, or set this to database. | +| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster. | +| `user` | `username` | Account username to log into your cluster. | +| `password` | `password1` | Password for authentication. | +| `port` | `5439` | | +| `dbname` | `my_db` | Database name.| +| `schema` | `my_schema` | Schema name.| +| `connect_timeout` | `None` or 30 | Number of seconds before connection times out.| +| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below TODO| +| `role` | TODO | optional| +| `ra3_node` | true | Optional, default False. Enables cross-database sources| +| `autocommit` | true | Optional, default True. Enables autocommit after each statement| +| `region` | us-east-1 | region to connect to your cluster with | + +
+ +#### Example profiles.yml for database authentication + + + +```yaml +company-name: + target: dev + outputs: + dev: + type: redshift + host: hostname.region.redshift.amazonaws.com + user: username + password: password1 + port: 5439 + dbname: analytics + schema: analytics + connect_timeout: None + sslmode: prefer + role: TODO + ra3_node: true + autocommit: true + region: +``` + + + +
+ + + +The following table lists the authentication parameters to set for Kerberos. + +For more information, refer to [Kerberos authentication](https://trino.io/docs/current/security/kerberos.html) in the Trino docs. + +| Profile field | Example | Description | +| ------------------------------------------- | ------------------- | ---------------------------------------------------------------- | +| `method` | `kerberos`| Set Kerberos as the authentication method. | +| `user` | `commander` | Username for authentication | +| `keytab` | `/tmp/trino.keytab` | Path to keytab | +| `krb5_config` | `/tmp/krb5.conf` | Path to config | +| `principal` | `trino@EXAMPLE.COM` | Principal | +| `service_name` (optional) | `abc123` | Service name (default is `trino`) | +| `hostname_override` (optional) | `EXAMPLE.COM` | Kerberos hostname for a host whose DNS name doesn't match | +| `mutual_authentication` (optional) | `false` | Boolean flag for mutual authentication | +| `force_preemptive` (optional) | `false` | Boolean flag to preemptively initiate the Kerberos GSS exchange | +| `sanitize_mutual_error_response` (optional) | `true` | Boolean flag to strip content and headers from error responses | +| `delegate` (optional) | `false` | Boolean flag for credential delegation (`GSS_C_DELEG_FLAG`) | + +
+ +#### Example profiles.yml for Kerberos + + + +```yaml +trino: + target: dev + outputs: + dev: + type: trino + method: kerberos + user: commander + keytab: /tmp/trino.keytab + krb5_config: /tmp/krb5.conf + principal: trino@EXAMPLE.COM + host: trino.example.com + port: 443 + database: analytics + schema: public +``` + + + +
+ + + +The following table lists the authentication parameters to set for JSON Web Token. + +For more information, refer to [JWT authentication](https://trino.io/docs/current/security/jwt.html) in the Trino docs. + +| Profile field | Example | Description | +| -------------------- | -------------- | -------------------------- | +| `method` | `jwt`| Set JWT as the authentication method. | +| `jwt_token` | `aaaaa.bbbbb.ccccc` | The JWT string. | + +
+ +#### Example profiles.yml for JWT + + + +```yaml +trino: + target: dev + outputs: + dev: + type: trino + method: jwt + jwt_token: [my_long_jwt_token_string] + host: [hostname] + database: [database name] + schema: [your dbt schema] + port: [port number] + threads: [1 or more] +``` + + + +
+ + + +The following table lists the authentication parameters to set for certificates. + +For more information, refer to [Certificate authentication](https://trino.io/docs/current/security/certificate.html) in the Trino docs. + +| Profile field | Example | Description | +| -------------------- | -------------- | ----------------------------------- | +| `method` | `certificate`| Set certificate-based authentication as the method | +| `client_certificate` | `/tmp/tls.crt` | Path to client certificate | +| `client_private_key` | `/tmp/tls.key` | Path to client private key | +| `cert` | | The full path to a certificate file | + +
+ +#### Example profiles.yml for certificate + + + +```yaml +trino: + target: dev + outputs: + dev: + type: trino + method: certificate + cert: [path/to/cert_file] + client_certificate: [path/to/client/cert] + client_private_key: [path to client key] + database: [database name] + schema: [your dbt schema] + port: [port number] + threads: [1 or more] +``` + + + +
+ + + +The only authentication parameter to set for OAuth 2.0 is `method: oauth`. If you're using Starburst Enterprise or Starburst Galaxy, you must enable OAuth 2.0 in Starburst before you can use this authentication method. + +For more information, refer to both [OAuth 2.0 authentication](https://trino.io/docs/current/security/oauth2.html) in the Trino docs and the [README](https://github.com/trinodb/trino-python-client#oauth2-authentication) for the Trino Python client. + +It's recommended that you install `keyring` to cache the OAuth 2.0 token over multiple dbt invocations by running `pip install 'trino[external-authentication-token-cache]'`. The `keyring` package is not installed by default. + +#### Example profiles.yml for OAuth + +```yaml +sandbox-galaxy: + target: oauth + outputs: + oauth: + type: trino + method: oauth + host: bunbundersders.trino.galaxy-dev.io + catalog: dbt_target + schema: dataders + port: 433 +``` + + + + + +You don't need to set up authentication (`method: none`), however, dbt Labs strongly discourages people from using it in any real application. Its use case is only for toy purposes (as in to play around with it), like local examples such as running Trino and dbt entirely within a single Docker container. + +#### Example profiles.yml for no authentication + + + +```yaml +trino: + target: dev + outputs: + dev: + type: trino + method: none + user: commander + host: trino.example.com + port: 443 + database: analytics + schema: public +``` + + + + +
+ ## Authentication Methods ### Password-based authentication From f1aeba68f3d16de90d593d9d28e4dba86d65c650 Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Wed, 14 Jun 2023 09:01:32 -0700 Subject: [PATCH 003/703] remove unrelated bit --- .../connect-data-platform/redshift-setup.md | 205 +----------------- 1 file changed, 2 insertions(+), 203 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index b8108247ecd..fd0ba9c1ee6 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -53,7 +53,7 @@ pip is the easiest way to install the adapter: The authentication methods that dbt Core supports are: - `database` — Password-based authentication (default, will be used if `method` is not provided) -- `IAM` — Kerberos +- `IAM` — IAM Click on one of these authentication methods for further details on how to configure your connection profile. Each tab also includes an example `profiles.yml` configuration file for you to review. @@ -117,7 +117,7 @@ company-name: - + The following table lists the authentication parameters to set for Kerberos. @@ -164,211 +164,10 @@ trino: - - -The following table lists the authentication parameters to set for JSON Web Token. - -For more information, refer to [JWT authentication](https://trino.io/docs/current/security/jwt.html) in the Trino docs. - -| Profile field | Example | Description | -| -------------------- | -------------- | -------------------------- | -| `method` | `jwt`| Set JWT as the authentication method. | -| `jwt_token` | `aaaaa.bbbbb.ccccc` | The JWT string. | - -
- -#### Example profiles.yml for JWT - - - -```yaml -trino: - target: dev - outputs: - dev: - type: trino - method: jwt - jwt_token: [my_long_jwt_token_string] - host: [hostname] - database: [database name] - schema: [your dbt schema] - port: [port number] - threads: [1 or more] -``` - - - -
- - - -The following table lists the authentication parameters to set for certificates. - -For more information, refer to [Certificate authentication](https://trino.io/docs/current/security/certificate.html) in the Trino docs. - -| Profile field | Example | Description | -| -------------------- | -------------- | ----------------------------------- | -| `method` | `certificate`| Set certificate-based authentication as the method | -| `client_certificate` | `/tmp/tls.crt` | Path to client certificate | -| `client_private_key` | `/tmp/tls.key` | Path to client private key | -| `cert` | | The full path to a certificate file | - -
- -#### Example profiles.yml for certificate - - - -```yaml -trino: - target: dev - outputs: - dev: - type: trino - method: certificate - cert: [path/to/cert_file] - client_certificate: [path/to/client/cert] - client_private_key: [path to client key] - database: [database name] - schema: [your dbt schema] - port: [port number] - threads: [1 or more] -``` - - - -
- - - -The only authentication parameter to set for OAuth 2.0 is `method: oauth`. If you're using Starburst Enterprise or Starburst Galaxy, you must enable OAuth 2.0 in Starburst before you can use this authentication method. - -For more information, refer to both [OAuth 2.0 authentication](https://trino.io/docs/current/security/oauth2.html) in the Trino docs and the [README](https://github.com/trinodb/trino-python-client#oauth2-authentication) for the Trino Python client. - -It's recommended that you install `keyring` to cache the OAuth 2.0 token over multiple dbt invocations by running `pip install 'trino[external-authentication-token-cache]'`. The `keyring` package is not installed by default. - -#### Example profiles.yml for OAuth - -```yaml -sandbox-galaxy: - target: oauth - outputs: - oauth: - type: trino - method: oauth - host: bunbundersders.trino.galaxy-dev.io - catalog: dbt_target - schema: dataders - port: 433 -``` - - - - - -You don't need to set up authentication (`method: none`), however, dbt Labs strongly discourages people from using it in any real application. Its use case is only for toy purposes (as in to play around with it), like local examples such as running Trino and dbt entirely within a single Docker container. - -#### Example profiles.yml for no authentication - - - -```yaml -trino: - target: dev - outputs: - dev: - type: trino - method: none - user: commander - host: trino.example.com - port: 443 - database: analytics - schema: public -``` - - - - -## Authentication Methods -### Password-based authentication - - -```yaml -company-name: - target: dev - outputs: - dev: - type: redshift - host: hostname.region.redshift.amazonaws.com - user: username - password: password1 - port: 5439 - dbname: analytics - schema: analytics - threads: 4 - connect_timeout: None # optional, number of seconds before connection times out - # search_path: public # optional, not recommended - sslmode: prefer # optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. - role: # optional - ra3_node: true # enables cross-database sources - autocommit: true # enables autocommit after each statement - region: # optional, if not provided, will be determined from host (e.g. host.123.us-east-1.redshift-serverless.amazonaws.com) -``` - - - -### IAM Authentication - -To set up a Redshift profile using IAM Authentication, set the `method` -parameter to `iam` as shown below. Note that a password is not required when -using IAM Authentication. For more information on this type of authentication, -consult the [Redshift Documentation](https://docs.aws.amazon.com/redshift/latest/mgmt/generating-user-credentials.html) -and [boto3 -docs](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/redshift.html#Redshift.Client.get_cluster_credentials) -on generating user credentials with IAM Auth. - -If you receive the "You must specify a region" error when using IAM -Authentication, then your aws credentials are likely misconfigured. Try running -`aws configure` to set up AWS access keys, and pick a default region. If you have any questions, -please refer to the official AWS documentation on [Configuration and credential file settings](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html). - - - -```yaml -my-redshift-db: - target: dev - outputs: - dev: - type: redshift - method: iam - cluster_id: CLUSTER_ID - host: hostname.region.redshift.amazonaws.com - user: alice - iam_profile: data_engineer # optional - autocreate: true # optional - db_groups: ['ANALYSTS'] # optional - - # Other Redshift configs: - port: 5439 - dbname: analytics - schema: analytics - threads: 4 - connect_timeout: None # optional, number of seconds before connection times out - [retries](#retries): 1 # default 1 retry on error/timeout when opening connections - role: # optional - sslmode: prefer # optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. - ra3_node: true # enables cross-database sources - autocommit: true # optional, enables autocommit after each statement - region: # optional, if not provided, will be determined from host (e.g. host.123.us-east-1.redshift-serverless.amazonaws.com) - - -``` - - ### Specifying an IAM Profile From b8dd2f547682c966cd3f075979fa8237f7752f1a Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Wed, 14 Jun 2023 10:02:37 -0700 Subject: [PATCH 004/703] Update redshift-setup.md --- .../connect-data-platform/redshift-setup.md | 96 ++++++++++++------- 1 file changed, 59 insertions(+), 37 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index fd0ba9c1ee6..dfed7903faf 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -47,7 +47,6 @@ pip is the easiest way to install the adapter:

For further info, refer to the GitHub repository: {frontMatter.meta.github_repo}.

---------remove this bit yo ## Authentication Methods The authentication methods that dbt Core supports are: @@ -73,19 +72,19 @@ The following table contains the parameters for database (password-based) connec | Profile field | Example | Description | | ------------- | ------- | ------------ | -| `method` | `database`| Leave this parameter unconfigured, or set this to database. | -| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster. | -| `user` | `username` | Account username to log into your cluster. | -| `password` | `password1` | Password for authentication. | +| `type` | redshift | The type of data warehouse you are connecting to| +| `method` | `database`| Leave this parameter unconfigured, or set this to database | +| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | +| `user` | `username` | Account username to log into your cluster | +| `password` | `password1` | Password for authentication | | `port` | `5439` | | -| `dbname` | `my_db` | Database name.| -| `schema` | `my_schema` | Schema name.| -| `connect_timeout` | `None` or 30 | Number of seconds before connection times out.| +| `dbname` | `my_db` | Database name| +| `schema` | `my_schema` | Schema name| +| `connect_timeout` | `None` or 30 | Number of seconds before connection times out| | `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below TODO| | `role` | TODO | optional| | `ra3_node` | true | Optional, default False. Enables cross-database sources| | `autocommit` | true | Optional, default True. Enables autocommit after each statement| -| `region` | us-east-1 | region to connect to your cluster with |
@@ -119,45 +118,68 @@ company-name: -The following table lists the authentication parameters to set for Kerberos. - -For more information, refer to [Kerberos authentication](https://trino.io/docs/current/security/kerberos.html) in the Trino docs. +The following table lists the authentication parameters to use IAM autentication. + +Note that a password is not required when using IAM Authentication. For more information on this type of authentication, consult the Redshift Documentation and boto3 docs on generating user credentials with IAM Auth. + +If you receive the "You must specify a region" error when using IAM Authentication, then your aws credentials are likely misconfigured. Try running aws configure to set up AWS access keys, and pick a default region. If you have any questions, please refer to the official AWS documentation on Configuration and credential file settings. -| Profile field | Example | Description | -| ------------------------------------------- | ------------------- | ---------------------------------------------------------------- | -| `method` | `kerberos`| Set Kerberos as the authentication method. | -| `user` | `commander` | Username for authentication | -| `keytab` | `/tmp/trino.keytab` | Path to keytab | -| `krb5_config` | `/tmp/krb5.conf` | Path to config | -| `principal` | `trino@EXAMPLE.COM` | Principal | -| `service_name` (optional) | `abc123` | Service name (default is `trino`) | -| `hostname_override` (optional) | `EXAMPLE.COM` | Kerberos hostname for a host whose DNS name doesn't match | -| `mutual_authentication` (optional) | `false` | Boolean flag for mutual authentication | -| `force_preemptive` (optional) | `false` | Boolean flag to preemptively initiate the Kerberos GSS exchange | -| `sanitize_mutual_error_response` (optional) | `true` | Boolean flag to strip content and headers from error responses | -| `delegate` (optional) | `false` | Boolean flag for credential delegation (`GSS_C_DELEG_FLAG`) | +| Profile field | Example | Description | +| ------------- | ------- | ------------ | +| `type` | redshift | The type of data warehouse you are connecting to| +| `method` | `IAM`| use IAM to authenticate | +| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | +| `iam_profile` | default| TODO | +| `cluster_id` | `CLUSTER_ID`| Required for IAM | +| `user` | `username` | Account username to log into your cluster | +| `password` | `password1` | Password for authentication | +| `port` | `5439` | | +| `dbname` | `my_db` | Database name| +| `schema` | `my_schema` | Schema name| +| `connect_timeout` | `None` or 30 | Number of seconds before connection times out| +| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below TODO| +| `role` | TODO | optional| +| `autocreate` | false | Optional, default false. Creates user if they do not exist | +| `db_groups` | ['ANALYSTS'] | Optional. A list of existing database group names that the DbUser joins for the current session | +| `ra3_node` | true | Optional, default False. Enables cross-database sources| +| `autocommit` | true | Optional, default True. Enables autocommit after each statement| +| `retries` | 1 | Number of retries | +| `region` | us-east-1 | Region to connect to your cluster with. Required for IAM |
-#### Example profiles.yml for Kerberos + +#### Example profiles.yml for IAM ```yaml -trino: + my-redshift-db: target: dev outputs: dev: - type: trino - method: kerberos - user: commander - keytab: /tmp/trino.keytab - krb5_config: /tmp/krb5.conf - principal: trino@EXAMPLE.COM - host: trino.example.com - port: 443 - database: analytics - schema: public + type: redshift + method: iam + cluster_id: CLUSTER_ID + host: hostname.region.redshift.amazonaws.com + user: alice + iam_profile: default + autocreate: true + db_groups: ['ANALYSTS'] + + # Other Redshift configs: + port: 5439 + dbname: analytics + schema: analytics + threads: 4 + connect_timeout: None + [retries](#retries): 1 + role: None + sslmode: prefer + ra3_node: true + autocommit: true + region: us-east-1 + ``` From fa30318658d1b1aa729ef9af5bb4570d8183cec8 Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Wed, 14 Jun 2023 12:10:45 -0700 Subject: [PATCH 005/703] Update redshift-setup.md --- .../core/connect-data-platform/redshift-setup.md | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index dfed7903faf..959514f044f 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -81,8 +81,8 @@ The following table contains the parameters for database (password-based) connec | `dbname` | `my_db` | Database name| | `schema` | `my_schema` | Schema name| | `connect_timeout` | `None` or 30 | Number of seconds before connection times out| -| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below TODO| -| `role` | TODO | optional| +| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below | +| `role` | None | optional| | `ra3_node` | true | Optional, default False. Enables cross-database sources| | `autocommit` | true | Optional, default True. Enables autocommit after each statement| @@ -106,7 +106,7 @@ company-name: schema: analytics connect_timeout: None sslmode: prefer - role: TODO + role: None ra3_node: true autocommit: true region: @@ -129,7 +129,7 @@ If you receive the "You must specify a region" error when using IAM Authenticati | `type` | redshift | The type of data warehouse you are connecting to| | `method` | `IAM`| use IAM to authenticate | | `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | -| `iam_profile` | default| TODO | +| `iam_profile` | analyst | dbt will use the specified profile from your ~/.aws/config file | | `cluster_id` | `CLUSTER_ID`| Required for IAM | | `user` | `username` | Account username to log into your cluster | | `password` | `password1` | Password for authentication | @@ -137,8 +137,8 @@ If you receive the "You must specify a region" error when using IAM Authenticati | `dbname` | `my_db` | Database name| | `schema` | `my_schema` | Schema name| | `connect_timeout` | `None` or 30 | Number of seconds before connection times out| -| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below TODO| -| `role` | TODO | optional| +| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below| +| `role` | None | optional| | `autocreate` | false | Optional, default false. Creates user if they do not exist | | `db_groups` | ['ANALYSTS'] | Optional. A list of existing database group names that the DbUser joins for the current session | | `ra3_node` | true | Optional, default False. Enables cross-database sources| @@ -163,7 +163,7 @@ If you receive the "You must specify a region" error when using IAM Authenticati cluster_id: CLUSTER_ID host: hostname.region.redshift.amazonaws.com user: alice - iam_profile: default + iam_profile: analyst autocreate: true db_groups: ['ANALYSTS'] @@ -190,7 +190,6 @@ If you receive the "You must specify a region" error when using IAM Authenticati - ### Specifying an IAM Profile When the `iam_profile` configuration is set, dbt will use the specified profile from your `~/.aws/config` file instead of using the profile name `default` From 42dbeb25ce153403a2b7c85128a755a441ece589 Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Wed, 14 Jun 2023 13:16:19 -0700 Subject: [PATCH 006/703] Update redshift-setup.md --- website/docs/docs/core/connect-data-platform/redshift-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index 959514f044f..f5255f3904d 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -61,7 +61,7 @@ Click on one of these authentication methods for further details on how to confi defaultValue="database" values={[ {label: 'database', value: 'database'}, - {label: 'Kerberos', value: 'kerberos'}, + {label: 'IAM', value: 'IAM'}, ]} > From 9a927c6a2a7e192616eb41acdf11747557242924 Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Wed, 14 Jun 2023 14:15:44 -0700 Subject: [PATCH 007/703] Update redshift-setup.md --- .../connect-data-platform/redshift-setup.md | 48 ++++++++----------- 1 file changed, 21 insertions(+), 27 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index f5255f3904d..1e0fd7ab880 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -46,8 +46,27 @@ pip is the easiest way to install the adapter:

For further info, refer to the GitHub repository: {frontMatter.meta.github_repo}.

+## Configurations + +| Profile field | Example | Description | +| ------------- | ------- | ------------ | +| `type` | redshift | The type of data warehouse you are connecting to| +| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | +| `port` | `5439` | | +| `dbname` | `my_db` | Database name| +| `schema` | `my_schema` | Schema name| +| `connect_timeout` | `None` or 30 | Number of seconds before connection times out| +| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below| +| `role` | None | Optional| +| `autocreate` | false | Optional, default false. Creates user if they do not exist | +| `db_groups` | ['ANALYSTS'] | Optional. A list of existing database group names that the DbUser joins for the current session | +| `ra3_node` | true | Optional, default False. Enables cross-database sources| +| `autocommit` | true | Optional, default True. Enables autocommit after each statement| +| `retries` | 1 | Number of retries | +| `region` | us-east-1 | Optional | -## Authentication Methods + +## Authentication Parameters The authentication methods that dbt Core supports are: @@ -72,19 +91,10 @@ The following table contains the parameters for database (password-based) connec | Profile field | Example | Description | | ------------- | ------- | ------------ | -| `type` | redshift | The type of data warehouse you are connecting to| | `method` | `database`| Leave this parameter unconfigured, or set this to database | | `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | | `user` | `username` | Account username to log into your cluster | | `password` | `password1` | Password for authentication | -| `port` | `5439` | | -| `dbname` | `my_db` | Database name| -| `schema` | `my_schema` | Schema name| -| `connect_timeout` | `None` or 30 | Number of seconds before connection times out| -| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below | -| `role` | None | optional| -| `ra3_node` | true | Optional, default False. Enables cross-database sources| -| `autocommit` | true | Optional, default True. Enables autocommit after each statement|
@@ -126,25 +136,10 @@ If you receive the "You must specify a region" error when using IAM Authenticati | Profile field | Example | Description | | ------------- | ------- | ------------ | -| `type` | redshift | The type of data warehouse you are connecting to| | `method` | `IAM`| use IAM to authenticate | -| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | | `iam_profile` | analyst | dbt will use the specified profile from your ~/.aws/config file | | `cluster_id` | `CLUSTER_ID`| Required for IAM | -| `user` | `username` | Account username to log into your cluster | -| `password` | `password1` | Password for authentication | -| `port` | `5439` | | -| `dbname` | `my_db` | Database name| -| `schema` | `my_schema` | Schema name| -| `connect_timeout` | `None` or 30 | Number of seconds before connection times out| -| `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below| -| `role` | None | optional| -| `autocreate` | false | Optional, default false. Creates user if they do not exist | -| `db_groups` | ['ANALYSTS'] | Optional. A list of existing database group names that the DbUser joins for the current session | -| `ra3_node` | true | Optional, default False. Enables cross-database sources| -| `autocommit` | true | Optional, default True. Enables autocommit after each statement| -| `retries` | 1 | Number of retries | -| `region` | us-east-1 | Region to connect to your cluster with. Required for IAM | +| `user` | `username` | Account user to log into your cluster |
@@ -189,7 +184,6 @@ If you receive the "You must specify a region" error when using IAM Authenticati - ### Specifying an IAM Profile When the `iam_profile` configuration is set, dbt will use the specified profile from your `~/.aws/config` file instead of using the profile name `default` From 62a91cec6d90c680704ec650c1e6c76844a154ff Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Wed, 14 Jun 2023 16:52:21 -0700 Subject: [PATCH 008/703] add hyperlinks --- .../core/connect-data-platform/redshift-setup.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index 1bec7684640..103025b31f6 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -130,9 +130,17 @@ company-name: The following table lists the authentication parameters to use IAM autentication. -Note that a password is not required when using IAM Authentication. For more information on this type of authentication, consult the Redshift Documentation and boto3 docs on generating user credentials with IAM Auth. - -If you receive the "You must specify a region" error when using IAM Authentication, then your aws credentials are likely misconfigured. Try running aws configure to set up AWS access keys, and pick a default region. If you have any questions, please refer to the official AWS documentation on Configuration and credential file settings. +To set up a Redshift profile using IAM Authentication, set the `method` parameter to `iam` as shown below. Note that a password is not required when using IAM Authentication. For more information on this type of authentication, +consult the [Redshift Documentation](https://docs.aws.amazon.com/redshift/latest/mgmt/generating-user-credentials.html) +and [boto3 +docs](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/redshift.html#Redshift.Client.get_cluster_credentials) +on generating user credentials with IAM Auth. + +If you receive the "You must specify a region" error when using IAM +Authentication, then your aws credentials are likely misconfigured. Try running +`aws configure` to set up AWS access keys, and pick a default region. If you have any questions, +please refer to the official AWS documentation on [Configuration and credential file settings](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html). + | Profile field | Example | Description | | ------------- | ------- | ------------ | From 0f2e3e17d675ebdd47ce966216d8e8afaab76874 Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Wed, 14 Jun 2023 17:02:49 -0700 Subject: [PATCH 009/703] clean up syntax --- .../connect-data-platform/redshift-setup.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index 103025b31f6..ed01b28501d 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -51,10 +51,10 @@ pip is the easiest way to install the adapter: | Profile field | Example | Description | | ------------- | ------- | ------------ | | `type` | redshift | The type of data warehouse you are connecting to| -| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | -| `port` | `5439` | | -| `dbname` | `my_db` | Database name| -| `schema` | `my_schema` | Schema name| +| `host` | hostname.region.redshift.amazonaws.com| Host of cluster | +| `port` | 5439 | | +| `dbname` | my_db | Database name| +| `schema` | my_schema | Schema name| | `connect_timeout` | `None` or 30 | Number of seconds before connection times out| | `sslmode` | prefer | optional, set the sslmode to connect to the database. Default prefer, which will use 'verify-ca' to connect. For more information on `sslmode`, see Redshift note below| | `role` | None | Optional| @@ -91,10 +91,10 @@ The following table contains the parameters for database (password-based) connec | Profile field | Example | Description | | ------------- | ------- | ------------ | -| `method` | `database`| Leave this parameter unconfigured, or set this to database | -| `host` | `hostname.region.redshift.amazonaws.com`| Host of cluster | -| `user` | `username` | Account username to log into your cluster | -| `password` | `password1` | Password for authentication | +| `method` | database| Leave this parameter unconfigured, or set this to database | +| `host` | hostname.region.redshift.amazonaws.com| Host of cluster | +| `user` | username | Account username to log into your cluster | +| `password` | password1 | Password for authentication |
@@ -144,10 +144,10 @@ please refer to the official AWS documentation on [Configuration and credential | Profile field | Example | Description | | ------------- | ------- | ------------ | -| `method` | `IAM`| use IAM to authenticate | +| `method` |IAM| use IAM to authenticate | | `iam_profile` | analyst | dbt will use the specified profile from your ~/.aws/config file | -| `cluster_id` | `CLUSTER_ID`| Required for IAM | -| `user` | `username` | Account user to log into your cluster | +| `cluster_id` | CLUSTER_ID| Required for IAM | +| `user` | username | Account user to log into your cluster |
From 57cad16ead804bb1ba3d1d698937d6b8fb4e884b Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Wed, 5 Jul 2023 13:25:05 -0400 Subject: [PATCH 010/703] add checker config --- .github/lychee.toml | 51 +++++++++++++++++++++++++++++++++++++ .github/workflows/links.yml | 17 +++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 .github/lychee.toml create mode 100644 .github/workflows/links.yml diff --git a/.github/lychee.toml b/.github/lychee.toml new file mode 100644 index 00000000000..8f8c52088f5 --- /dev/null +++ b/.github/lychee.toml @@ -0,0 +1,51 @@ +### +### Display +### + +# Verbose program output +# Accepts log level: "error", "warn", "info", "debug", "trace" +verbose = "info" + +# Don't show interactive progress bar while checking links. +no_progress = true + +### +### Cache +### + +# Enable link caching. This can be helpful to avoid checking the same links on +# multiple runs. +cache = false + +### +### Requests +### + +# Website timeout from connect to response finished. +timeout = 30 + +# Comma-separated list of accepted status codes for valid links. +accept = [200, 403, 429] + +# Base URL or website root directory to check relative URLs. +base = "https://docs.getdbt.com" + +### +### Exclusions +### + +# Exclude URLs from checking (supports regex) +exclude = [ + 'frontMatter.', + 'https://badge.fury.io', + 'https://img.shields.io', + 'https://gitlab.com', + 'https://dbtlabs.postman.co', +] + +# Exclude all mail addresses from checking +exclude_mail = true + +# Check links inside `` and `
` blocks as well as Markdown code
+# blocks.
+include_verbatim = false
diff --git a/.github/workflows/links.yml b/.github/workflows/links.yml
new file mode 100644
index 00000000000..48409555d70
--- /dev/null
+++ b/.github/workflows/links.yml
@@ -0,0 +1,17 @@
+name: Check Docs Links
+
+on: [push]
+  # schedule:
+  #   # Run every Monday morning at 6:00AM UTC
+  #   - cron: '0 6 * * 1'
+
+jobs:
+  markdown-link-check:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v3
+      - name: Link Checker
+        uses: lycheeverse/lychee-action@master
+        with:
+          args: --verbose --config .github/lychee.toml './website/**/*.md'

From d18ab6edc8854c98f25b4f6d7f04a2effdd10457 Mon Sep 17 00:00:00 2001
From: Jason Karlavige 
Date: Wed, 5 Jul 2023 13:31:09 -0400
Subject: [PATCH 011/703] add excluded urls

---
 .github/lychee.toml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.github/lychee.toml b/.github/lychee.toml
index 8f8c52088f5..48aa972bf37 100644
--- a/.github/lychee.toml
+++ b/.github/lychee.toml
@@ -41,6 +41,8 @@ exclude = [
   'https://img.shields.io',
   'https://gitlab.com',
   'https://dbtlabs.postman.co',
+  'https://mobile.twitter.com',
+  'https://twitter.com',
 ]
 
 # Exclude all mail addresses from checking

From 3c3ac515b383d48eeafb32684a4309901de78e4d Mon Sep 17 00:00:00 2001
From: Jason Karlavige 
Date: Wed, 5 Jul 2023 13:34:23 -0400
Subject: [PATCH 012/703] add 2nd twitter exclude

---
 .github/lychee.toml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.github/lychee.toml b/.github/lychee.toml
index 48aa972bf37..2d9f0185496 100644
--- a/.github/lychee.toml
+++ b/.github/lychee.toml
@@ -43,6 +43,7 @@ exclude = [
   'https://dbtlabs.postman.co',
   'https://mobile.twitter.com',
   'https://twitter.com',
+  'https://www.twitter.com',
 ]
 
 # Exclude all mail addresses from checking

From dd52e92496f819376f892353b5fa12e88c61cc63 Mon Sep 17 00:00:00 2001
From: Jason Karlavige 
Date: Wed, 5 Jul 2023 14:25:22 -0400
Subject: [PATCH 013/703] update faq prop name

---
 website/docs/docs/build/jinja-macros.md       | 14 ++++----
 website/docs/docs/build/seeds.md              | 18 +++++------
 website/docs/docs/build/snapshots.md          | 14 ++++----
 website/docs/docs/build/sources.md            | 16 +++++-----
 website/docs/docs/build/sql-models.md         | 32 +++++++++----------
 website/docs/docs/build/tests.md              | 16 +++++-----
 .../dbt-cloud-ide/develop-in-the-cloud.md     |  2 +-
 .../docs/docs/cloud/git/authenticate-azure.md |  2 +-
 website/docs/docs/cloud/git/connect-github.md |  2 +-
 website/docs/docs/cloud/git/connect-gitlab.md |  6 ++--
 .../docs/docs/collaborate/documentation.md    | 12 +++----
 .../connect-data-platform/bigquery-setup.md   |  4 +--
 website/docs/docs/core/pip-install.md         |  6 ++--
 website/docs/docs/core/source-install.md      |  6 ++--
 .../docs/docs/dbt-cloud-apis/user-tokens.md   |  4 +--
 website/docs/quickstarts/bigquery-qs.md       | 16 +++++-----
 website/docs/quickstarts/databricks-qs.md     | 16 +++++-----
 website/docs/quickstarts/manual-install-qs.md | 30 ++++++++---------
 website/docs/quickstarts/redshift-qs.md       | 16 +++++-----
 website/docs/quickstarts/snowflake-qs.md      |  6 ++--
 .../docs/quickstarts/starburst-galaxy-qs.md   | 16 +++++-----
 website/docs/reference/commands/compile.md    |  2 +-
 .../docs/reference/configs-and-properties.md  | 12 +++----
 .../reference/dbt-jinja-functions/dispatch.md |  2 +-
 .../resource-configs/full_refresh.md          |  2 +-
 .../resource-configs/target_schema.md         |  2 +-
 .../change-way-model-materialized.md          |  6 ++--
 .../quickstarts/delete-example-models.md      |  4 +--
 .../snippets/quickstarts/schedule-a-job.md    |  2 +-
 .../test-and-document-your-project.md         |  4 +--
 .../snippets/tutorial-add-tests-to-models.md  | 14 ++++----
 website/src/components/faqs/index.js          |  8 ++---
 website/src/pages/styles.js                   |  6 ++--
 33 files changed, 159 insertions(+), 159 deletions(-)

diff --git a/website/docs/docs/build/jinja-macros.md b/website/docs/docs/build/jinja-macros.md
index 5b0df69e898..8375eed594f 100644
--- a/website/docs/docs/build/jinja-macros.md
+++ b/website/docs/docs/build/jinja-macros.md
@@ -148,13 +148,13 @@ You can also qualify a macro in your own project by prefixing it with your [pack
 
 ## FAQs
 
-
-
-
-
-
-
-
+
+
+
+
+
+
+
 
 ## dbtonic Jinja
 
diff --git a/website/docs/docs/build/seeds.md b/website/docs/docs/build/seeds.md
index 5ea92a78d4a..6b1abf8f1c3 100644
--- a/website/docs/docs/build/seeds.md
+++ b/website/docs/docs/build/seeds.md
@@ -80,12 +80,12 @@ Seeds are configured in your `dbt_project.yml`, check out the [seed configuratio
 You can document and test seeds in YAML by declaring properties — check out the docs on [seed properties](/reference/seed-properties) for more information.
 
 ## FAQs
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/website/docs/docs/build/snapshots.md b/website/docs/docs/build/snapshots.md
index 01330c5f0aa..947d4ebef38 100644
--- a/website/docs/docs/build/snapshots.md
+++ b/website/docs/docs/build/snapshots.md
@@ -408,10 +408,10 @@ Snapshot results:
 
 
 ## FAQs
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/website/docs/docs/build/sources.md b/website/docs/docs/build/sources.md
index 8c7cf934464..d1b269cdd13 100644
--- a/website/docs/docs/build/sources.md
+++ b/website/docs/docs/build/sources.md
@@ -124,11 +124,11 @@ sources:
 You can find more details on the available properties for sources in the [reference section](/reference/source-properties).
 
 ### FAQs
-
-
-
-
-
+
+
+
+
+
 
 ## Snapshotting source data freshness
 With a couple of extra configs, dbt can optionally snapshot the "freshness" of the data in your source tables. This is useful for understanding if your data pipelines are in a healthy state, and is a critical component of defining SLAs for your warehouse.
@@ -204,6 +204,6 @@ where _etl_loaded_at >= date_sub(current_date(), interval 1 day)
 ```
 
 ### FAQs
-
-
-
+
+
+
diff --git a/website/docs/docs/build/sql-models.md b/website/docs/docs/build/sql-models.md
index bfe844e394e..65fdd58adf0 100644
--- a/website/docs/docs/build/sql-models.md
+++ b/website/docs/docs/build/sql-models.md
@@ -103,11 +103,11 @@ Why a _view_ named `dbt_alice.customers`? By default dbt will:
 You can use _configurations_ to change any of these behaviors — more on that later.
 
 ### FAQs
-
-
-
-
-
+
+
+
+
+
 
 ## Configuring models
 Configurations are "model settings"  that can be set in your `dbt_project.yml` file, _and_ in your model file using a `config` block. Some example configurations include:
@@ -158,8 +158,8 @@ It is important to note that configurations are applied hierarchically — a con
 You can learn more about configurations in the [reference docs](/reference/model-configs).
 
 ### FAQs
-
-
+
+
 
 
 ## Building dependencies between models
@@ -265,12 +265,12 @@ Additionally, the `ref` function encourages you to write modular transformations
 You can also document and test models — skip ahead to the section on [testing](/docs/build/tests) and [documentation](/docs/collaborate/documentation) for more information.
 
 ## Additional FAQs
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/website/docs/docs/build/tests.md b/website/docs/docs/build/tests.md
index 51a0346443f..1a40dd42b53 100644
--- a/website/docs/docs/build/tests.md
+++ b/website/docs/docs/build/tests.md
@@ -261,11 +261,11 @@ Note that, if you elect to store test failures:
 
 ## FAQs
 
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md
index c5bb2dc8b9e..a128cbb9bd1 100644
--- a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md
+++ b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md
@@ -141,7 +141,7 @@ The dbt Cloud IDE makes it possible to [build and view](/docs/collaborate/build-
 
 ## Related questions
 
- 
+
Is there a cost to using the Cloud IDE? diff --git a/website/docs/docs/cloud/git/authenticate-azure.md b/website/docs/docs/cloud/git/authenticate-azure.md index f3a534ac923..9e755519e67 100644 --- a/website/docs/docs/cloud/git/authenticate-azure.md +++ b/website/docs/docs/cloud/git/authenticate-azure.md @@ -25,4 +25,4 @@ You will be directed back to dbt Cloud, and your profile should be linked. You a ## FAQs - + diff --git a/website/docs/docs/cloud/git/connect-github.md b/website/docs/docs/cloud/git/connect-github.md index 6113e3ccb42..410b28c9767 100644 --- a/website/docs/docs/cloud/git/connect-github.md +++ b/website/docs/docs/cloud/git/connect-github.md @@ -74,4 +74,4 @@ The next time you log into dbt Cloud, you will be able to do so via OAuth throug ## FAQs - + diff --git a/website/docs/docs/cloud/git/connect-gitlab.md b/website/docs/docs/cloud/git/connect-gitlab.md index e66fa577e5b..1ec8fb08817 100644 --- a/website/docs/docs/cloud/git/connect-gitlab.md +++ b/website/docs/docs/cloud/git/connect-gitlab.md @@ -119,6 +119,6 @@ If you imported a repository using the dbt Cloud native integration with GitLab, ## FAQs - - - + + + diff --git a/website/docs/docs/collaborate/documentation.md b/website/docs/docs/collaborate/documentation.md index a28ea8ff55f..b613fd7a5ef 100644 --- a/website/docs/docs/collaborate/documentation.md +++ b/website/docs/docs/collaborate/documentation.md @@ -67,12 +67,12 @@ First, run `dbt docs generate` — this command tells dbt to compile relevant in Then, run `dbt docs serve` to use these `.json` files to populate a local website. ## FAQs - - - - - - + + + + + + ## Using Docs Blocks diff --git a/website/docs/docs/core/connect-data-platform/bigquery-setup.md b/website/docs/docs/core/connect-data-platform/bigquery-setup.md index bfb97237b29..99ae473b0e2 100644 --- a/website/docs/docs/core/connect-data-platform/bigquery-setup.md +++ b/website/docs/docs/core/connect-data-platform/bigquery-setup.md @@ -457,8 +457,8 @@ my-profile: For a general overview of this process, see the official docs for [Creating Short-lived Service Account Credentials](https://cloud.google.com/iam/docs/creating-short-lived-service-account-credentials). - - + + ### Execution project New in v0.21.0 diff --git a/website/docs/docs/core/pip-install.md b/website/docs/docs/core/pip-install.md index 912af40b9b7..26a15d8ad37 100644 --- a/website/docs/docs/core/pip-install.md +++ b/website/docs/docs/core/pip-install.md @@ -8,9 +8,9 @@ You need to use `pip` to install dbt Core on Windows or Linux operating systems. You can install dbt Core and plugins using `pip` because they are Python modules distributed on [PyPI](https://pypi.org/project/dbt/). We recommend using virtual environments when installing with `pip`. - - - + + + Once you know [which adapter](/docs/supported-data-platforms) you're using, you can install it as `dbt-`. For example, if using Postgres: diff --git a/website/docs/docs/core/source-install.md b/website/docs/docs/core/source-install.md index 6714e88cd10..be9918223fe 100644 --- a/website/docs/docs/core/source-install.md +++ b/website/docs/docs/core/source-install.md @@ -35,6 +35,6 @@ You do _not_ need to install `dbt-core` before installing an adapter plugin -- t To install in editable mode, such as while contributing, use `pip install -e .` instead. - - - + + + diff --git a/website/docs/docs/dbt-cloud-apis/user-tokens.md b/website/docs/docs/dbt-cloud-apis/user-tokens.md index 70f3f8f615f..e56d8b2f974 100644 --- a/website/docs/docs/dbt-cloud-apis/user-tokens.md +++ b/website/docs/docs/dbt-cloud-apis/user-tokens.md @@ -17,5 +17,5 @@ label. ## FAQs - - \ No newline at end of file + + diff --git a/website/docs/quickstarts/bigquery-qs.md b/website/docs/quickstarts/bigquery-qs.md index ed913cda647..2ff0ad92606 100644 --- a/website/docs/quickstarts/bigquery-qs.md +++ b/website/docs/quickstarts/bigquery-qs.md @@ -179,11 +179,11 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs - - - - - + + + + + ## Change the way your model is materialized @@ -287,9 +287,9 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs {#faq-2} - - - + + + diff --git a/website/docs/quickstarts/databricks-qs.md b/website/docs/quickstarts/databricks-qs.md index 096f6d2b04a..706e87352ee 100644 --- a/website/docs/quickstarts/databricks-qs.md +++ b/website/docs/quickstarts/databricks-qs.md @@ -257,11 +257,11 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs - - - - - + + + + + ## Change the way your model is materialized @@ -365,9 +365,9 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs {#faq-2} - - - + + + diff --git a/website/docs/quickstarts/manual-install-qs.md b/website/docs/quickstarts/manual-install-qs.md index f7d15b897f7..97eb8f8e8ea 100644 --- a/website/docs/quickstarts/manual-install-qs.md +++ b/website/docs/quickstarts/manual-install-qs.md @@ -130,11 +130,11 @@ When developing locally, dbt connects to your using #### FAQs - - - - - + + + + + ### Perform your first dbt run @@ -200,11 +200,11 @@ When you return to the BigQuery console, you can `select` from this model. #### FAQs - - - - - + + + + + ### Change the way your model is materialized @@ -411,9 +411,9 @@ When you return to the BigQuery console, you can `select` from this model. #### FAQs {#faq-2} - - - + + + ### Next steps @@ -438,8 +438,8 @@ You can also explore: #### FAQs - - + + #### Next steps diff --git a/website/docs/quickstarts/redshift-qs.md b/website/docs/quickstarts/redshift-qs.md index b5277a47559..f672f16c4ed 100644 --- a/website/docs/quickstarts/redshift-qs.md +++ b/website/docs/quickstarts/redshift-qs.md @@ -273,11 +273,11 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs - - - - - + + + + + ## Change the way your model is materialized @@ -381,9 +381,9 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs {#faq-2} - - - + + + diff --git a/website/docs/quickstarts/snowflake-qs.md b/website/docs/quickstarts/snowflake-qs.md index 6ae3b66097e..9fa30439563 100644 --- a/website/docs/quickstarts/snowflake-qs.md +++ b/website/docs/quickstarts/snowflake-qs.md @@ -395,9 +395,9 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs {#faq-2} - - - + + + ## Build models on top of sources diff --git a/website/docs/quickstarts/starburst-galaxy-qs.md b/website/docs/quickstarts/starburst-galaxy-qs.md index eb3691d4e04..783a91c47da 100644 --- a/website/docs/quickstarts/starburst-galaxy-qs.md +++ b/website/docs/quickstarts/starburst-galaxy-qs.md @@ -293,11 +293,11 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs - - - - - + + + + + ## Change the way your model is materialized @@ -401,9 +401,9 @@ Later, you can connect your business intelligence (BI) tools to these views and #### FAQs {#faq-2} - - - + + + diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index 7b3f18a9c15..5cb4c4ec9ab 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -43,4 +43,4 @@ The command accesses the data platform to cache related metadata, and to run int ### FAQs - + diff --git a/website/docs/reference/configs-and-properties.md b/website/docs/reference/configs-and-properties.md index 1001d7b177e..c2ad5b77629 100644 --- a/website/docs/reference/configs-and-properties.md +++ b/website/docs/reference/configs-and-properties.md @@ -161,12 +161,12 @@ You can find an exhaustive list of each supported property and config, broken do * Exposure [properties](/reference/exposure-properties) ## FAQs - - - - - - + + + + + + ## Troubleshooting common errors diff --git a/website/docs/reference/dbt-jinja-functions/dispatch.md b/website/docs/reference/dbt-jinja-functions/dispatch.md index d615bbdb430..a165ae59eb0 100644 --- a/website/docs/reference/dbt-jinja-functions/dispatch.md +++ b/website/docs/reference/dbt-jinja-functions/dispatch.md @@ -266,4 +266,4 @@ In rare cases, the child adapter may prefer the default implementation to its pa ## FAQs - + diff --git a/website/docs/reference/resource-configs/full_refresh.md b/website/docs/reference/resource-configs/full_refresh.md index bc875c2ad2b..f75fe3a583b 100644 --- a/website/docs/reference/resource-configs/full_refresh.md +++ b/website/docs/reference/resource-configs/full_refresh.md @@ -85,7 +85,7 @@ This logic is encoded in the [`should_full_refresh()`](https://github.com/dbt-la ### Seeds - + ## Recommendation Set `full_refresh: false` for models of especially large datasets, which you would _never_ want dbt to fully drop and recreate. diff --git a/website/docs/reference/resource-configs/target_schema.md b/website/docs/reference/resource-configs/target_schema.md index c612a99604d..041f004e20c 100644 --- a/website/docs/reference/resource-configs/target_schema.md +++ b/website/docs/reference/resource-configs/target_schema.md @@ -35,7 +35,7 @@ On **BigQuery**, this is analogous to a `dataset`. This is a **required** parameter, no default is provided. ## FAQs - + ## Examples ### Build all snapshots in a schema named `snapshots` diff --git a/website/snippets/quickstarts/change-way-model-materialized.md b/website/snippets/quickstarts/change-way-model-materialized.md index 04f92aac9a7..08d1b5ca0d8 100644 --- a/website/snippets/quickstarts/change-way-model-materialized.md +++ b/website/snippets/quickstarts/change-way-model-materialized.md @@ -59,6 +59,6 @@ By default, everything gets created as a view. You can override that by material #### FAQs - - - + + + diff --git a/website/snippets/quickstarts/delete-example-models.md b/website/snippets/quickstarts/delete-example-models.md index e290877437c..b2ce36a40f2 100644 --- a/website/snippets/quickstarts/delete-example-models.md +++ b/website/snippets/quickstarts/delete-example-models.md @@ -31,5 +31,5 @@ You can now delete the files that dbt created when you initialized the project: #### FAQs - - + + diff --git a/website/snippets/quickstarts/schedule-a-job.md b/website/snippets/quickstarts/schedule-a-job.md index 55504636192..59d428bdfaa 100644 --- a/website/snippets/quickstarts/schedule-a-job.md +++ b/website/snippets/quickstarts/schedule-a-job.md @@ -40,6 +40,6 @@ Congratulations 🎉! You've just deployed your first dbt project! #### FAQs - + diff --git a/website/snippets/quickstarts/test-and-document-your-project.md b/website/snippets/quickstarts/test-and-document-your-project.md index e5315b13a09..932f58712af 100644 --- a/website/snippets/quickstarts/test-and-document-your-project.md +++ b/website/snippets/quickstarts/test-and-document-your-project.md @@ -10,6 +10,6 @@ #### FAQs - - + + diff --git a/website/snippets/tutorial-add-tests-to-models.md b/website/snippets/tutorial-add-tests-to-models.md index 937a444a1f0..491fc72ba85 100644 --- a/website/snippets/tutorial-add-tests-to-models.md +++ b/website/snippets/tutorial-add-tests-to-models.md @@ -52,10 +52,10 @@ When you run `dbt test`, dbt iterates through your YAML files, and constructs a #### FAQs - - - - - - - + + + + + + + diff --git a/website/src/components/faqs/index.js b/website/src/components/faqs/index.js index e1f1e5b2cf4..52c4573d883 100644 --- a/website/src/components/faqs/index.js +++ b/website/src/components/faqs/index.js @@ -2,18 +2,18 @@ import React, { useState, useEffect } from 'react'; import styles from './styles.module.css'; import { usePluginData } from '@docusaurus/useGlobalData'; -function FAQ({ src, alt_header = null }) { +function FAQ({ path, alt_header = null }) { const [isOn, setOn] = useState(false); - const [filePath, setFilePath] = useState(src) + const [filePath, setFilePath] = useState(path) const [fileContent, setFileContent] = useState({}) // Get all faq file paths from plugin const { faqFiles } = usePluginData('docusaurus-build-global-data-plugin'); useEffect(() => { - // Search for faq where frontmatter ID matches src prop - const faqFile = faqFiles.find(file => file.id === src) + // Search for faq where frontmatter ID matches path prop + const faqFile = faqFiles.find(file => file.id === path) // If faqFile found with ID, set filePath for this file if (faqFile?.id) { diff --git a/website/src/pages/styles.js b/website/src/pages/styles.js index 6e65d9775c3..d0bcf2f227c 100644 --- a/website/src/pages/styles.js +++ b/website/src/pages/styles.js @@ -95,9 +95,9 @@ description: "this is \[an escaped link](docs.getdbt.com)"

FAQ

-
{``}
- - +
{``}
+ +
From a05e0d726a216d199e6915432542277d0d43f910 Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Wed, 5 Jul 2023 14:25:45 -0400 Subject: [PATCH 014/703] update snippet prop name --- contributing/single-sourcing-content.md | 4 ++-- website/docs/docs/build/hooks-operations.md | 2 +- website/docs/docs/build/incremental-models.md | 2 +- website/docs/docs/build/jinja-macros.md | 2 +- website/docs/docs/build/materializations.md | 2 +- website/docs/docs/build/metrics.md | 2 +- website/docs/docs/build/project-variables.md | 2 +- website/docs/docs/cloud/about-cloud/tenancy.md | 2 +- .../connect-apache-spark.md | 2 +- .../connect-data-platform/connect-snowflake.md | 2 +- .../connect-starburst-trino.md | 4 ++-- .../docs/docs/cloud/git/connect-azure-devops.md | 2 +- website/docs/docs/cloud/git/setup-azure.md | 2 +- .../docs/cloud/manage-access/auth0-migration.md | 2 +- .../set-up-sso-azure-active-directory.md | 2 +- .../manage-access/set-up-sso-google-workspace.md | 2 +- .../docs/cloud/manage-access/set-up-sso-okta.md | 4 ++-- .../cloud/manage-access/set-up-sso-saml-2.0.md | 14 +++++++------- .../docs/cloud/manage-access/sso-overview.md | 2 +- .../core/connect-data-platform/bigquery-setup.md | 2 +- .../connect-data-platform/databricks-setup.md | 2 +- .../core/connect-data-platform/postgres-setup.md | 2 +- .../core/connect-data-platform/redshift-setup.md | 2 +- .../connect-data-platform/snowflake-setup.md | 2 +- .../core/connect-data-platform/spark-setup.md | 4 ++-- .../core/connect-data-platform/trino-setup.md | 6 +++--- .../docs/dbt-cloud-apis/discovery-querying.md | 2 +- .../schema-discovery-environment.mdx | 2 +- .../schema-discovery-modelByEnv.mdx | 2 +- website/docs/docs/dbt-versions/core-versions.md | 4 ++-- .../docs/dbt-versions/upgrade-core-in-cloud.md | 4 ++-- website/docs/docs/deploy/job-notifications.md | 2 +- website/docs/docs/introduction.md | 2 +- .../use-dbt-semantic-layer/dbt-semantic-layer.md | 4 ++-- .../quickstart-semantic-layer.md | 6 +++--- .../set-dbt-semantic-layer.md | 6 +++--- website/docs/faqs/Accounts/slack.md | 2 +- .../orchestration/webhooks/zapier-ms-teams.md | 4 ++-- .../webhooks/zapier-new-cloud-job.md | 4 ++-- .../orchestration/webhooks/zapier-slack.md | 4 ++-- website/docs/quickstarts/bigquery-qs.md | 12 ++++++------ website/docs/quickstarts/databricks-qs.md | 12 ++++++------ website/docs/quickstarts/manual-install-qs.md | 16 ++++++++-------- website/docs/quickstarts/redshift-qs.md | 12 ++++++------ website/docs/quickstarts/snowflake-qs.md | 14 +++++++------- website/docs/quickstarts/starburst-galaxy-qs.md | 12 ++++++------ .../docs/reference/dbt-jinja-functions/this.md | 2 +- website/docs/reference/node-selection/syntax.md | 2 +- .../project-configs/on-run-start-on-run-end.md | 2 +- .../resource-configs/bigquery-configs.md | 4 ++-- .../docs/reference/resource-configs/grants.md | 2 +- .../resource-configs/pre-hook-post-hook.md | 8 ++++---- .../reference/resource-configs/spark-configs.md | 2 +- .../test-and-document-your-project.md | 4 ++-- website/snippets/tutorial-managed-repo.md | 4 ++-- website/src/components/snippet/index.js | 4 ++-- 56 files changed, 118 insertions(+), 118 deletions(-) diff --git a/contributing/single-sourcing-content.md b/contributing/single-sourcing-content.md index 7a80e71728c..2b854dbff13 100644 --- a/contributing/single-sourcing-content.md +++ b/contributing/single-sourcing-content.md @@ -226,7 +226,7 @@ The Snippet component allows for content to be reusable throughout the Docs. Thi Creating and using a snippet requires two steps: 1. Create a new markdown snippet file in the `website/snippets` directory. -2. Use the `` component within a Docs file. +2. Use the `` component within a Docs file. ### Snippet properties @@ -247,7 +247,7 @@ Now, we can add this snippet to a Docs file with the Snippet component: ```markdown Docs content here. - + Docs content here. ``` diff --git a/website/docs/docs/build/hooks-operations.md b/website/docs/docs/build/hooks-operations.md index 660a8d379c5..1abc5657bad 100644 --- a/website/docs/docs/build/hooks-operations.md +++ b/website/docs/docs/build/hooks-operations.md @@ -38,7 +38,7 @@ Hooks are snippets of SQL that are executed at different times: Hooks are a more-advanced capability that enable you to run custom SQL, and leverage database-specific actions, beyond what dbt makes available out-of-the-box with standard materializations and configurations. - + diff --git a/website/docs/docs/build/incremental-models.md b/website/docs/docs/build/incremental-models.md index 15b24520711..28345ba1873 100644 --- a/website/docs/docs/build/incremental-models.md +++ b/website/docs/docs/build/incremental-models.md @@ -456,5 +456,5 @@ The syntax depends on how you configure your `incremental_strategy`: - + diff --git a/website/docs/docs/build/jinja-macros.md b/website/docs/docs/build/jinja-macros.md index 8375eed594f..a4122dfe09b 100644 --- a/website/docs/docs/build/jinja-macros.md +++ b/website/docs/docs/build/jinja-macros.md @@ -185,5 +185,5 @@ Writing a macro for the first time? Check whether we've open sourced one in [dbt {% endfor %} ``` - + diff --git a/website/docs/docs/build/materializations.md b/website/docs/docs/build/materializations.md index d639e9f3ebf..70c7878bd69 100644 --- a/website/docs/docs/build/materializations.md +++ b/website/docs/docs/build/materializations.md @@ -179,6 +179,6 @@ def model(dbt, session): **Note:** Incremental models are supported on BigQuery/Dataproc for the `merge` incremental strategy. The `insert_overwrite` strategy is not yet supported. - + diff --git a/website/docs/docs/build/metrics.md b/website/docs/docs/build/metrics.md index 4f24dface7e..8475cfe8684 100644 --- a/website/docs/docs/build/metrics.md +++ b/website/docs/docs/build/metrics.md @@ -714,5 +714,5 @@ The above example will return a dataset that contains the metric provided in the - + diff --git a/website/docs/docs/build/project-variables.md b/website/docs/docs/build/project-variables.md index b6e1b564ec8..a69132d6a3b 100644 --- a/website/docs/docs/build/project-variables.md +++ b/website/docs/docs/build/project-variables.md @@ -120,5 +120,5 @@ If dbt is unable to find a definition for a variable after checking these four p **Note:** Variable scope is based on the node ultimately using that variable. Imagine the case where a model defined in the root project is calling a macro defined in an installed package. That macro, in turn, uses the value of a variable. The variable will be resolved based on the _root project's_ scope, rather than the package's scope. - + diff --git a/website/docs/docs/cloud/about-cloud/tenancy.md b/website/docs/docs/cloud/about-cloud/tenancy.md index 0d312767b82..5785533264e 100644 --- a/website/docs/docs/cloud/about-cloud/tenancy.md +++ b/website/docs/docs/cloud/about-cloud/tenancy.md @@ -24,4 +24,4 @@ _To learn more about setting up a dbt Cloud single tenant deployment, [please co ### Available features - + diff --git a/website/docs/docs/cloud/connect-data-platform/connect-apache-spark.md b/website/docs/docs/cloud/connect-data-platform/connect-apache-spark.md index f9a48233977..670b628547b 100644 --- a/website/docs/docs/cloud/connect-data-platform/connect-apache-spark.md +++ b/website/docs/docs/cloud/connect-data-platform/connect-apache-spark.md @@ -5,7 +5,7 @@ description: "Setup instructions for connecting Apache Spark to dbt Cloud" sidebar_label: "Connect Apache Spark" --- - + :::note See [Connect Databricks](#connect-databricks) for the Databricks version of this page. diff --git a/website/docs/docs/cloud/connect-data-platform/connect-snowflake.md b/website/docs/docs/cloud/connect-data-platform/connect-snowflake.md index 600e1dddaa3..4f31c56e8aa 100644 --- a/website/docs/docs/cloud/connect-data-platform/connect-snowflake.md +++ b/website/docs/docs/cloud/connect-data-platform/connect-snowflake.md @@ -9,7 +9,7 @@ The following fields are required when creating a Snowflake connection | Field | Description | Examples | | ----- | ----------- | -------- | -| Account | The Snowflake account to connect to. Take a look [here](/docs/core/connect-data-platform/snowflake-setup#account) to determine what the account field should look like based on your region.| | +| Account | The Snowflake account to connect to. Take a look [here](/docs/core/connect-data-platform/snowflake-setup#account) to determine what the account field should look like based on your region.| | | Role | A mandatory field indicating what role should be assumed after connecting to Snowflake | `transformer` | | Database | The logical database to connect to and run queries against. | `analytics` | | Warehouse | The virtual warehouse to use for running queries. | `transforming` | diff --git a/website/docs/docs/cloud/connect-data-platform/connect-starburst-trino.md b/website/docs/docs/cloud/connect-data-platform/connect-starburst-trino.md index 224cf4d9691..db0d3f61728 100644 --- a/website/docs/docs/cloud/connect-data-platform/connect-starburst-trino.md +++ b/website/docs/docs/cloud/connect-data-platform/connect-starburst-trino.md @@ -17,11 +17,11 @@ The following are the required fields for setting up a connection with a [Starbu ## Roles in Starburst Enterprise - + ## Catalogs and schemas - + ## Configuration diff --git a/website/docs/docs/cloud/git/connect-azure-devops.md b/website/docs/docs/cloud/git/connect-azure-devops.md index 7e656a11f7e..a84e593a1e2 100644 --- a/website/docs/docs/cloud/git/connect-azure-devops.md +++ b/website/docs/docs/cloud/git/connect-azure-devops.md @@ -3,7 +3,7 @@ title: "Connect to Azure DevOps" id: "connect-azure-devops" --- - + ## About Azure DevOps and dbt Cloud diff --git a/website/docs/docs/cloud/git/setup-azure.md b/website/docs/docs/cloud/git/setup-azure.md index 363e63eb088..9eca77d7014 100644 --- a/website/docs/docs/cloud/git/setup-azure.md +++ b/website/docs/docs/cloud/git/setup-azure.md @@ -5,7 +5,7 @@ description: "You can set up your Azure DevOps by creating an Azure AD app and a sidebar_label: "Set up Azure DevOps" --- - + ## Overview diff --git a/website/docs/docs/cloud/manage-access/auth0-migration.md b/website/docs/docs/cloud/manage-access/auth0-migration.md index af430772ca4..68598d92f91 100644 --- a/website/docs/docs/cloud/manage-access/auth0-migration.md +++ b/website/docs/docs/cloud/manage-access/auth0-migration.md @@ -16,7 +16,7 @@ If you have not yet configured SSO in dbt Cloud, refer instead to our setup guid ## Auth0 Multi-tenant URIs - + ## Start the migration diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md b/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md index 13f49422832..fcc9a79e860 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md @@ -156,7 +156,7 @@ To complete setup, follow the steps below in the dbt Cloud application. here, you can navigate to the login URL generated for your account's _slug_ to test logging in with Azure AD. - + diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md b/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md index 314d1128cb0..1cfa9a49286 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md @@ -113,7 +113,7 @@ Settings. If the verification information looks appropriate, then you have completed the configuration of GSuite SSO. - + ## Setting up RBAC Now you have completed setting up SSO with GSuite, the next steps will be to set up diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-okta.md b/website/docs/docs/cloud/manage-access/set-up-sso-okta.md index 70de8285450..0d493bcf29f 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-okta.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-okta.md @@ -72,7 +72,7 @@ dashes. It should contain only letters, numbers, and dashes. For example, the _l `dbt-labs`. Login slugs must be unique across all dbt Cloud accounts, so pick a slug that uniquely identifies your company. - + * **Single sign on URL**: `https://YOUR_AUTH0_URI/login/callback?connection=` * **Audience URI (SP Entity ID)**: `urn:auth0::{login slug}` @@ -187,7 +187,7 @@ configured in the steps above. test logging in with Okta. Additionally, users added the the Okta app will be able to log in to dbt Cloud from Okta directly. - + ## Setting up RBAC diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md b/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md index 297e92600f7..d5a16e91792 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md @@ -18,7 +18,7 @@ provider in order to configure Single Sign On and [role-based access control](/d ## Auth0 Multi-tenant URIs - + ## Generic SAML 2.0 integrations @@ -39,7 +39,7 @@ You'll need administrator access to your SAML 2.0 compliant identity provider to #### Configuring the application - + To complete this section, you will need to create a login slug. This slug controls the URL where users on your account can log into your application. Login slugs are typically the lowercased name of your organization. It should contain only letters, numbers, and dashes. separated with dashes. For example, the login slug for dbt Labs would be `dbt-labs`. @@ -117,7 +117,7 @@ You can use the instructions in this section to configure Okta as your identity ### Configure the Okta application - + To complete this section, you will need to create a login slug. This slug controls the URL where users on your account can log into your application. Login slugs are typically the lowercased name of your organization. It should contain only letters, numbers, and dashes. separated with dashes. For example, the login slug for dbt Labs would be `dbt-labs`. @@ -220,7 +220,7 @@ Use this section if you are configuring Google as your identity provider. ### Configure the Google application - + To complete this section, you will need to create a login slug. This slug controls the URL where users on your account can log into your application. Login slugs are typically the lowercased name of your organization @@ -288,7 +288,7 @@ If you're using Azure Active Directory (Azure AD), the instructions below will h ### Create Azure AD Enterprise application - + To complete this section, you will need to create a login slug. This slug controls the URL where users on your account can log into your application. Login slugs are typically the lowercased name of your organization separated with dashes. It should contain only letters, numbers, and dashes. For example, the login slug for dbt Labs would be `dbt-labs`. @@ -352,7 +352,7 @@ To configure OneLogin, you will need **Administrator** access. ### Configure the OneLogin application - + To complete this section, you will need to create a login slug. This slug controls the URL where users on your account can log into your application. Login slugs are typically the lowercased name of your organization separated with dashes. It should contain only letters, numbers, and dashes. For example, the login slug for dbt Labs would be `dbt-labs`. @@ -432,7 +432,7 @@ To complete setup, follow the steps below in dbt Cloud: 5. After completing the setup, you can navigate to the URL generated for your account's _slug_ to test logging in with your identity provider. Additionally, users added the the SAML 2.0 app will be able to log in to dbt Cloud from the IdP directly. - + ### Setting up RBAC diff --git a/website/docs/docs/cloud/manage-access/sso-overview.md b/website/docs/docs/cloud/manage-access/sso-overview.md index b129b40c029..7e44859c73a 100644 --- a/website/docs/docs/cloud/manage-access/sso-overview.md +++ b/website/docs/docs/cloud/manage-access/sso-overview.md @@ -17,7 +17,7 @@ Once you configure SSO, even partially, you cannot disable or revert it. When yo ## Auth0 Multi-tenant URIs - + ## SSO process diff --git a/website/docs/docs/core/connect-data-platform/bigquery-setup.md b/website/docs/docs/core/connect-data-platform/bigquery-setup.md index 99ae473b0e2..b0fc9fa7cf0 100644 --- a/website/docs/docs/core/connect-data-platform/bigquery-setup.md +++ b/website/docs/docs/core/connect-data-platform/bigquery-setup.md @@ -16,7 +16,7 @@ meta: --- - +

Overview of {frontMatter.meta.pypi_package}

diff --git a/website/docs/docs/core/connect-data-platform/databricks-setup.md b/website/docs/docs/core/connect-data-platform/databricks-setup.md index eef6522a8f5..0d24a3b04aa 100644 --- a/website/docs/docs/core/connect-data-platform/databricks-setup.md +++ b/website/docs/docs/core/connect-data-platform/databricks-setup.md @@ -16,7 +16,7 @@ meta: config_page: '/reference/resource-configs/databricks-configs' --- - +

Overview of {frontMatter.meta.pypi_package}

diff --git a/website/docs/docs/core/connect-data-platform/postgres-setup.md b/website/docs/docs/core/connect-data-platform/postgres-setup.md index a6948e6f1ad..5d7467c786d 100644 --- a/website/docs/docs/core/connect-data-platform/postgres-setup.md +++ b/website/docs/docs/core/connect-data-platform/postgres-setup.md @@ -16,7 +16,7 @@ meta: config_page: '/reference/resource-configs/postgres-configs' --- - +

Overview of {frontMatter.meta.pypi_package}

diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index 7d5fdbf7a97..a86bc7df849 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -16,7 +16,7 @@ meta: config_page: '/reference/resource-configs/redshift-configs' --- - +

Overview of {frontMatter.meta.pypi_package}

diff --git a/website/docs/docs/core/connect-data-platform/snowflake-setup.md b/website/docs/docs/core/connect-data-platform/snowflake-setup.md index 147cfb87867..6bc9c980922 100644 --- a/website/docs/docs/core/connect-data-platform/snowflake-setup.md +++ b/website/docs/docs/core/connect-data-platform/snowflake-setup.md @@ -16,7 +16,7 @@ meta: config_page: '/reference/resource-configs/snowflake-configs' --- - +

Overview of {frontMatter.meta.pypi_package}

diff --git a/website/docs/docs/core/connect-data-platform/spark-setup.md b/website/docs/docs/core/connect-data-platform/spark-setup.md index 00de640ee05..2e3b5a66de8 100644 --- a/website/docs/docs/core/connect-data-platform/spark-setup.md +++ b/website/docs/docs/core/connect-data-platform/spark-setup.md @@ -17,8 +17,8 @@ meta: --- - - + + :::note See [Databricks setup](#databricks-setup) for the Databricks version of this page. diff --git a/website/docs/docs/core/connect-data-platform/trino-setup.md b/website/docs/docs/core/connect-data-platform/trino-setup.md index 711e735ab6d..396634dc6e6 100644 --- a/website/docs/docs/core/connect-data-platform/trino-setup.md +++ b/website/docs/docs/core/connect-data-platform/trino-setup.md @@ -16,7 +16,7 @@ meta: config_page: '/reference/resource-configs/trino-configs' --- - +

Overview of {frontMatter.meta.pypi_package}

@@ -70,10 +70,10 @@ The following profile fields are always required except for `user`, which is als | `user` | Format for Starburst Enterprise or Trino:
  • `user.name`
  • `user.name@mydomain.com`

Format for Starburst Galaxy:
  • `user.name@mydomain.com/role`
| The username (of the account) to log in to your cluster. When connecting to Starburst Galaxy clusters, you must include the role of the user as a suffix to the username. | ### Roles in Starburst Enterprise - + ### Schemas and databases - + ## Additional parameters diff --git a/website/docs/docs/dbt-cloud-apis/discovery-querying.md b/website/docs/docs/dbt-cloud-apis/discovery-querying.md index 8d602e73e5f..02625eb00a3 100644 --- a/website/docs/docs/dbt-cloud-apis/discovery-querying.md +++ b/website/docs/docs/dbt-cloud-apis/discovery-querying.md @@ -10,7 +10,7 @@ Use the Discovery API to evaluate data pipeline health and project state across Since GraphQL provides a description of the data in the API, the schema displayed in the GraphQL explorer accurately represents the graph and fields available to query. - + ## Authorization diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx index fdf6aab729d..41fd5555c3f 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx @@ -6,7 +6,7 @@ id: "discovery-schema-environment" import { ArgsTable, SchemaTable } from "./schema"; - + This environment object allows you to query information about a particular model based on `environmentId`. diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx index 400735bdce4..078d2512256 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx @@ -6,7 +6,7 @@ id: "discovery-schema-modelByEnv" import { ArgsTable, SchemaTable } from "./schema"; - + This model by environment object allows you to query information about a particular model based on `environmentId`. diff --git a/website/docs/docs/dbt-versions/core-versions.md b/website/docs/docs/dbt-versions/core-versions.md index 328b6cf4166..1e3ed62a4ec 100644 --- a/website/docs/docs/dbt-versions/core-versions.md +++ b/website/docs/docs/dbt-versions/core-versions.md @@ -8,10 +8,10 @@ dbt Core releases follow [semantic versioning](https://semver.org/) guidelines. dbt Labs provides different support levels for different versions, which may include new features, bug fixes, or security patches: - + - + ### Further reading diff --git a/website/docs/docs/dbt-versions/upgrade-core-in-cloud.md b/website/docs/docs/dbt-versions/upgrade-core-in-cloud.md index 6c9ffe5d60e..d143aab5ef1 100644 --- a/website/docs/docs/dbt-versions/upgrade-core-in-cloud.md +++ b/website/docs/docs/dbt-versions/upgrade-core-in-cloud.md @@ -29,11 +29,11 @@ dbt Labs has always encouraged users to upgrade dbt Core versions whenever a new We provide different support levels for different versions, which may include new features, bug fixes, or security patches: - + We'll continue to update the following release table so that users know when we plan to stop supporting different versions of Core in dbt Cloud. - + Starting with v1.0, dbt Cloud will ensure that you're always using the latest compatible patch release of `dbt-core` and plugins, including all the latest fixes. You may also choose to try prereleases of those patch releases before they are generally available. diff --git a/website/docs/docs/deploy/job-notifications.md b/website/docs/docs/deploy/job-notifications.md index 62a5b822069..c240ca12183 100644 --- a/website/docs/docs/deploy/job-notifications.md +++ b/website/docs/docs/deploy/job-notifications.md @@ -22,4 +22,4 @@ There are two options for setting up email notifications. As a **user**, you can ### Slack - + diff --git a/website/docs/docs/introduction.md b/website/docs/docs/introduction.md index a28e401feb4..c4cfd6e45ac 100644 --- a/website/docs/docs/introduction.md +++ b/website/docs/docs/introduction.md @@ -3,7 +3,7 @@ title: "What is dbt?" id: "introduction" --- - + dbt compiles and runs your analytics code against your data platform, enabling you and your team to collaborate on a single source of truth for metrics, insights, and business definitions. This single source of truth, combined with the ability to define tests for your data, reduces errors when logic changes, and alerts you when issues arise. diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md index 5fe781ffeb6..95962610f8d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md @@ -35,9 +35,9 @@ The dbt Semantic Layer reduces code duplication and inconsistency regarding your ## Prerequisites To use the dbt Semantic Layer, you’ll need to meet the following: - + - + ## Public Preview diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md index 19a5fb15057..af8de189fa9 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md @@ -42,9 +42,9 @@ To try out the features of the dbt Semantic Layer, you first need to have a dbt ## Prerequisites To use the dbt Semantic Layer, you’ll need to meet the following: - + - + :::info 📌 @@ -210,7 +210,7 @@ Once you’ve defined metrics in your dbt project, you can perform a job run in ## Set up dbt Semantic Layer - + ## Troubleshooting diff --git a/website/docs/docs/use-dbt-semantic-layer/set-dbt-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/set-dbt-semantic-layer.md index b045725ca62..9d0c1eee752 100644 --- a/website/docs/docs/use-dbt-semantic-layer/set-dbt-semantic-layer.md +++ b/website/docs/docs/use-dbt-semantic-layer/set-dbt-semantic-layer.md @@ -19,15 +19,15 @@ With the dbt Semantic Layer, you'll be able to centrally define business metrics Before you set up the dbt Semantic Layer, make sure you meet the following: - + - + ## Set up dbt Semantic Layer - +
diff --git a/website/docs/faqs/Accounts/slack.md b/website/docs/faqs/Accounts/slack.md index 01001141e2e..4faa60fb09a 100644 --- a/website/docs/faqs/Accounts/slack.md +++ b/website/docs/faqs/Accounts/slack.md @@ -5,4 +5,4 @@ sidebar_label: 'How to set up Slack' id: slack --- - + diff --git a/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md b/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md index 5c622d69f21..aa95b999d4c 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md +++ b/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md @@ -47,7 +47,7 @@ In the next step, you will need the Webhook Secret Key from the prior step, and Zapier allows you to [store secrets](https://help.zapier.com/hc/en-us/articles/8496293271053-Save-and-retrieve-data-from-Zaps), which prevents your keys from being displayed in plaintext in the Zap code. You will be able to access them via the [StoreClient utility](https://help.zapier.com/hc/en-us/articles/8496293969549-Store-data-from-code-steps-with-StoreClient). - + ### 5. Add a code action Select **Code by Zapier** as the App, and **Run Python** as the Event. @@ -156,4 +156,4 @@ When you're happy with it, remember to ensure that your `run_id` and `account_id ## Other notes - If you post to a chat instead of a team channel, you don't need to add the Zapier app to Microsoft Teams. - If you post to a chat instead of a team channel, note that markdown is not supported and you will need to remove the markdown formatting. -- If you chose the **Catch Hook** trigger instead of **Catch Raw Hook**, you will need to pass each required property from the webhook as an input instead of running `json.loads()` against the raw body. You will also need to remove the validation code. \ No newline at end of file +- If you chose the **Catch Hook** trigger instead of **Catch Raw Hook**, you will need to pass each required property from the webhook as an input instead of running `json.loads()` against the raw body. You will also need to remove the validation code. diff --git a/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md b/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md index 75897c30150..49b01d0db7e 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md +++ b/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md @@ -36,7 +36,7 @@ In the next step, you will need the Webhook Secret Key from the prior step, and Zapier allows you to [store secrets](https://help.zapier.com/hc/en-us/articles/8496293271053-Save-and-retrieve-data-from-Zaps), which prevents your keys from being displayed in plaintext in the Zap code. You will be able to access them via the [StoreClient utility](https://help.zapier.com/hc/en-us/articles/8496293969549-Store-data-from-code-steps-with-StoreClient). - + ### 4. Add a code action Select **Code by Zapier** as the App, and **Run Python** as the Event. @@ -88,4 +88,4 @@ return ``` ### 5. Test and deploy -When you're happy with it, remember to ensure that your `account_id` is no longer hardcoded, then publish your Zap. \ No newline at end of file +When you're happy with it, remember to ensure that your `account_id` is no longer hardcoded, then publish your Zap. diff --git a/website/docs/guides/orchestration/webhooks/zapier-slack.md b/website/docs/guides/orchestration/webhooks/zapier-slack.md index 03c3402ffe8..d3b0473502b 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-slack.md +++ b/website/docs/guides/orchestration/webhooks/zapier-slack.md @@ -46,7 +46,7 @@ In the next step, you will need the Webhook Secret Key from the prior step, and Zapier allows you to [store secrets](https://help.zapier.com/hc/en-us/articles/8496293271053-Save-and-retrieve-data-from-Zaps). This prevents your keys from being displayed as plaintext in the Zap code. You can access them with the [StoreClient utility](https://help.zapier.com/hc/en-us/articles/8496293969549-Store-data-from-code-steps-with-StoreClient). - + ### 4. Add a code action Select **Code by Zapier** as the App, and **Run Python** as the Event. @@ -301,4 +301,4 @@ Set the **Message Text** to **5. Threaded Errors Post** from the Run Python step ### 8. Test and deploy -When you're done testing your Zap, publish it. \ No newline at end of file +When you're done testing your Zap, publish it. diff --git a/website/docs/quickstarts/bigquery-qs.md b/website/docs/quickstarts/bigquery-qs.md index 2ff0ad92606..84e3b3ae545 100644 --- a/website/docs/quickstarts/bigquery-qs.md +++ b/website/docs/quickstarts/bigquery-qs.md @@ -93,7 +93,7 @@ In order to let dbt connect to your warehouse, you'll need to generate a keyfile ## Set up a dbt Cloud managed repository - + ## Initialize your dbt project​ and start developing @@ -187,15 +187,15 @@ Later, you can connect your business intelligence (BI) tools to these views and ## Change the way your model is materialized - + ## Delete the example models - + ## Build models on top of other models - + 1. Create a new SQL file, `models/stg_customers.sql`, with the SQL from the `customers` CTE in our original query. 2. Create a second new SQL file, `models/stg_orders.sql`, with the SQL from the `orders` CTE in our original query. @@ -292,8 +292,8 @@ Later, you can connect your business intelligence (BI) tools to these views and - + - + diff --git a/website/docs/quickstarts/databricks-qs.md b/website/docs/quickstarts/databricks-qs.md index 706e87352ee..1222ef2a7d5 100644 --- a/website/docs/quickstarts/databricks-qs.md +++ b/website/docs/quickstarts/databricks-qs.md @@ -172,7 +172,7 @@ If you want to connect manually, refer to [Connect to dbt Cloud manually](https: ## Set up a dbt Cloud managed repository If you used Partner Connect, you can skip to [initializing your dbt project](#initialize-your-dbt-project-and-start-developing) as the Partner Connect provides you with a managed repository. Otherwise, you will need to create your repository connection. - + ## Initialize your dbt project​ and start developing Now that you have a repository configured, you can initialize your project and start development in dbt Cloud: @@ -265,15 +265,15 @@ Later, you can connect your business intelligence (BI) tools to these views and ## Change the way your model is materialized - + ## Delete the example models - + ## Build models on top of other models - + 1. Create a new SQL file, `models/stg_customers.sql`, with the SQL from the `customers` CTE in our original query. 2. Create a second new SQL file, `models/stg_orders.sql`, with the SQL from the `orders` CTE in our original query. @@ -370,6 +370,6 @@ Later, you can connect your business intelligence (BI) tools to these views and - + - + diff --git a/website/docs/quickstarts/manual-install-qs.md b/website/docs/quickstarts/manual-install-qs.md index 97eb8f8e8ea..ea3c6c7ec84 100644 --- a/website/docs/quickstarts/manual-install-qs.md +++ b/website/docs/quickstarts/manual-install-qs.md @@ -189,7 +189,7 @@ Check out a new git branch to work on new code: 2. Create a new SQL file in the `models` directory, named `models/customers.sql`. 3. Paste the following query into the `models/customers.sql` file. - + 4. From the command line, enter `dbt run`.
@@ -210,15 +210,15 @@ When you return to the BigQuery console, you can `select` from this model. - + ### Delete the example models - + ### Build models on top of other models - + 1. Create a new SQL file, `models/stg_customers.sql`, with the SQL from the `customers` CTE in our original query. 2. Create a second new SQL file, `models/stg_orders.sql`, with the SQL from the `orders` CTE in our original query. @@ -417,7 +417,7 @@ When you return to the BigQuery console, you can `select` from this model. ### Next steps - + You can also explore: @@ -428,11 +428,11 @@ You can also explore: ### Add tests to your models - + ### Document your models - + 3. Run `dbt docs serve` command to launch the documentation in a local website. @@ -444,7 +444,7 @@ You can also explore: #### Next steps - + ### Commit updated changes diff --git a/website/docs/quickstarts/redshift-qs.md b/website/docs/quickstarts/redshift-qs.md index f672f16c4ed..fc7e178f163 100644 --- a/website/docs/quickstarts/redshift-qs.md +++ b/website/docs/quickstarts/redshift-qs.md @@ -188,7 +188,7 @@ Now we are going to load our sample data into the S3 bucket that our Cloudformat 7. Click **Next** if the test succeeded. If it failed, you might need to check your Redshift settings and credentials. ## Set up a dbt Cloud managed repository - + ## Initialize your dbt project​ and start developing Now that you have a repository configured, you can initialize your project and start development in dbt Cloud: @@ -281,15 +281,15 @@ Later, you can connect your business intelligence (BI) tools to these views and ## Change the way your model is materialized - + ## Delete the example models - + ## Build models on top of other models - + 1. Create a new SQL file, `models/stg_customers.sql`, with the SQL from the `customers` CTE in our original query. 2. Create a second new SQL file, `models/stg_orders.sql`, with the SQL from the `orders` CTE in our original query. @@ -385,7 +385,7 @@ Later, you can connect your business intelligence (BI) tools to these views and - + - + diff --git a/website/docs/quickstarts/snowflake-qs.md b/website/docs/quickstarts/snowflake-qs.md index 9fa30439563..bf318a597a4 100644 --- a/website/docs/quickstarts/snowflake-qs.md +++ b/website/docs/quickstarts/snowflake-qs.md @@ -185,7 +185,7 @@ Using Partner Connect allows you to create a complete dbt account with your [Sno 4. Enter your **Settings** for Snowflake with: * **Account** — Find your account by using the Snowflake trial account URL and removing `snowflakecomputing.com`. The order of your account information will vary by Snowflake version. For example, Snowflake's Classic console URL might look like: `oq65696.west-us-2.azure.snowflakecomputing.com`. The AppUI or Snowsight URL might look more like: `snowflakecomputing.com/west-us-2.azure/oq65696`. In both examples, your account will be: `oq65696.west-us-2.azure`. For more information, see [Account Identifiers](https://docs.snowflake.com/en/user-guide/admin-account-identifier.html) in the Snowflake docs. - + * **Role** — Leave blank for now. You can update this to a default Snowflake role later. * **Database** — `analytics`. This tells dbt to create new models in the analytics database. @@ -211,7 +211,7 @@ Using Partner Connect allows you to create a complete dbt account with your [Sno ## Set up a dbt Cloud managed repository If you used Partner Connect, you can skip to [initializing your dbt project](#initialize-your-dbt-project-and-start-developing) as the Partner Connect provides you with a managed repository. Otherwise, you will need to create your repository connection. - + ## Initialize your dbt project​ and start developing Now that you have a repository configured, you can initialize your project and start development in dbt Cloud: @@ -295,15 +295,15 @@ Later, you can connect your business intelligence (BI) tools to these views and ## Change the way your model is materialized - + ## Delete the example models - + ## Build models on top of other models - + 1. Create a new SQL file, `models/stg_customers.sql`, with the SQL from the `customers` CTE in our original query. 2. Create a second new SQL file, `models/stg_orders.sql`, with the SQL from the `orders` CTE in our original query. @@ -466,6 +466,6 @@ Sources make it possible to name and describe the data loaded into your warehous test and document your raw data and also understand the lineage of your sources. - + - + diff --git a/website/docs/quickstarts/starburst-galaxy-qs.md b/website/docs/quickstarts/starburst-galaxy-qs.md index 783a91c47da..d9bd3b98a43 100644 --- a/website/docs/quickstarts/starburst-galaxy-qs.md +++ b/website/docs/quickstarts/starburst-galaxy-qs.md @@ -214,7 +214,7 @@ To query the Jaffle Shop data with Starburst Galaxy, you need to create tables u 12. Click **Next** if the test succeeded. If it failed, you might need to check your Starburst Galaxy settings and credentials. ## Set up a dbt Cloud managed repository - + ## Initialize your dbt project​ and start developing Now that you have a repository configured, you can initialize your project and start development in dbt Cloud: @@ -301,15 +301,15 @@ Later, you can connect your business intelligence (BI) tools to these views and ## Change the way your model is materialized - + ## Delete the example models - + ## Build models on top of other models - + 1. Create a new SQL file, `models/stg_customers.sql`, with the SQL from the `customers` CTE in our original query. 2. Create a second new SQL file, `models/stg_orders.sql`, with the SQL from the `orders` CTE in our original query. @@ -405,9 +405,9 @@ Later, you can connect your business intelligence (BI) tools to these views and - + - + ## Connect to multiple data sources diff --git a/website/docs/reference/dbt-jinja-functions/this.md b/website/docs/reference/dbt-jinja-functions/this.md index 0e6208efb3c..9065c660cb0 100644 --- a/website/docs/reference/dbt-jinja-functions/this.md +++ b/website/docs/reference/dbt-jinja-functions/this.md @@ -15,7 +15,7 @@ description: "Represents the current model in the database." ## Examples - + diff --git a/website/docs/reference/node-selection/syntax.md b/website/docs/reference/node-selection/syntax.md index 2e983f9d08f..87772262514 100644 --- a/website/docs/reference/node-selection/syntax.md +++ b/website/docs/reference/node-selection/syntax.md @@ -78,7 +78,7 @@ As your selection logic gets more complex, and becomes unwieldly to type out as consider using a [yaml selector](/reference/node-selection/yaml-selectors). You can use a predefined definition with the `--selector` flag. Note that when you're using `--selector`, most other flags (namely `--select` and `--exclude`) will be ignored. - + ## About node selection diff --git a/website/docs/reference/project-configs/on-run-start-on-run-end.md b/website/docs/reference/project-configs/on-run-start-on-run-end.md index 43004795be9..2c5cde4c0c2 100644 --- a/website/docs/reference/project-configs/on-run-start-on-run-end.md +++ b/website/docs/reference/project-configs/on-run-start-on-run-end.md @@ -31,7 +31,7 @@ A SQL statement (or list of SQL statements) to be run at the start, or end, of t ## Examples - + diff --git a/website/docs/reference/resource-configs/bigquery-configs.md b/website/docs/reference/resource-configs/bigquery-configs.md index fcebb0befdd..b3c05c1d827 100644 --- a/website/docs/reference/resource-configs/bigquery-configs.md +++ b/website/docs/reference/resource-configs/bigquery-configs.md @@ -728,7 +728,7 @@ view, dbt will grant the view model access to select from the list of datasets provided. See [BQ docs on authorized views](https://cloud.google.com/bigquery/docs/share-access-views) for more details. - + @@ -803,4 +803,4 @@ models: path: materialized: materialized_view ``` - \ No newline at end of file + diff --git a/website/docs/reference/resource-configs/grants.md b/website/docs/reference/resource-configs/grants.md index f8a728abdc8..8ef726788dc 100644 --- a/website/docs/reference/resource-configs/grants.md +++ b/website/docs/reference/resource-configs/grants.md @@ -211,7 +211,7 @@ We encourage you to read Google's documentation for more context: - [Understanding GCP roles](https://cloud.google.com/iam/docs/understanding-roles) - [How to format grantees](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-control-language#user_list) - + ### BigQuery examples diff --git a/website/docs/reference/resource-configs/pre-hook-post-hook.md b/website/docs/reference/resource-configs/pre-hook-post-hook.md index 4f5071e7aef..1660c50049b 100644 --- a/website/docs/reference/resource-configs/pre-hook-post-hook.md +++ b/website/docs/reference/resource-configs/pre-hook-post-hook.md @@ -16,7 +16,7 @@ datatype: sql-statement | [sql-statement] - + @@ -51,7 +51,7 @@ select ... - + @@ -70,7 +70,7 @@ seeds: - + @@ -124,7 +124,7 @@ dbt aims to provide all the boilerplate SQL you need (DDL, DML, and DCL) via out ## Examples - + diff --git a/website/docs/reference/resource-configs/spark-configs.md b/website/docs/reference/resource-configs/spark-configs.md index 7ef25f70a3f..95a853107f6 100644 --- a/website/docs/reference/resource-configs/spark-configs.md +++ b/website/docs/reference/resource-configs/spark-configs.md @@ -9,7 +9,7 @@ To-do: - use the reference doc structure for this article/split into separate articles ---> - + :::note See [Databricks configuration](#databricks-configs) for the Databricks version of this page. diff --git a/website/snippets/quickstarts/test-and-document-your-project.md b/website/snippets/quickstarts/test-and-document-your-project.md index 932f58712af..e8df2d6a1de 100644 --- a/website/snippets/quickstarts/test-and-document-your-project.md +++ b/website/snippets/quickstarts/test-and-document-your-project.md @@ -1,10 +1,10 @@ ## Add tests to your models - + ## Document your models - + 3. Click the book icon in the Develop interface to launch documentation in a new tab. diff --git a/website/snippets/tutorial-managed-repo.md b/website/snippets/tutorial-managed-repo.md index eb78f835fc0..78221bbb957 100644 --- a/website/snippets/tutorial-managed-repo.md +++ b/website/snippets/tutorial-managed-repo.md @@ -1,8 +1,8 @@ - + To set up a managed repository: 1. Under "Setup a repository", select **Managed**. 2. Type a name for your repo such as `bbaggins-dbt-quickstart` 3. Click **Create**. It will take a few seconds for your repository to be created and imported. -4. Once you see the "Successfully imported repository," click **Continue**. \ No newline at end of file +4. Once you see the "Successfully imported repository," click **Continue**. diff --git a/website/src/components/snippet/index.js b/website/src/components/snippet/index.js index a4011385458..daf674c3d14 100644 --- a/website/src/components/snippet/index.js +++ b/website/src/components/snippet/index.js @@ -7,8 +7,8 @@ import clsx from 'clsx'; Pass the filename of a snippet within the snippets directory as a prop to use throughout the docs. */} -export default function Snippet({ src }) { - const file = require('../../../snippets/' + src + '.md') +export default function Snippet({ path }) { + const file = require('../../../snippets/' + path + '.md') const contents = file.default({}); return (
From 738ff7a6b1a51fc1dbec92b83a67bf219334406f Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Wed, 5 Jul 2023 14:35:00 -0400 Subject: [PATCH 015/703] trigger build From 48d5744f297747beb6d1cdb02440335cc6503b00 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 10 Jul 2023 21:17:13 +0100 Subject: [PATCH 016/703] Update sidebars.js new sidebar --- website/sidebars.js | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/website/sidebars.js b/website/sidebars.js index 3198d95e0f3..46db14dd6d4 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -404,13 +404,21 @@ const sidebarSettings = { { type: "category", label: "Use the dbt Semantic Layer", - collapsed: true, + link: { type: "doc", id: "docs/use-dbt-semantic-layer/dbt-sl" }, items: [ - "docs/use-dbt-semantic-layer/quickstart-semantic-layer", - "docs/use-dbt-semantic-layer/dbt-semantic-layer", - "docs/use-dbt-semantic-layer/setup-dbt-semantic-layer", + "docs/use-dbt-semantic-layer/quickstart-sl", + "docs/use-dbt-semantic-layer/setup-dbt-sl", "docs/use-dbt-semantic-layer/avail-sl-integrations", - ], + { + type: "category", + label: "Semantic Layer APIs", + link: { type: "doc", id: "docs/use-dbt-semantic-layer/sl-api-overview" }, + items: [ + "docs/use-dbt-semantic-layer/jdbc", + "docs/use-dbt-semantic-layer/graphql", + ], + }, + ], }, { type: "category", From 33e15d87ca11c8536ef6b503e8ceab032285d8a6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 10 Jul 2023 21:20:11 +0100 Subject: [PATCH 017/703] Update metrics.md --- website/docs/docs/build/metrics.md | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/website/docs/docs/build/metrics.md b/website/docs/docs/build/metrics.md index c43e2a86915..4e870dc49a9 100644 --- a/website/docs/docs/build/metrics.md +++ b/website/docs/docs/build/metrics.md @@ -8,21 +8,17 @@ keywords: -:::info dbt Metrics isn't supported +:::info dbt metrics no longer supported -dbt Metrics is no longer supported in v1.6 and higher. To build your semantic layer, define and query metrics, and provide data governance - refer to [Build your Semantic Layer](/docs/build/build-metrics-intro) for updated guidance. +dbt_metrics is no longer supported in v1.6 and higher, and has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics). [MetricFlow](/docs/build/about-metricflow?version=1.6), a key component of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), is a new framework for defining metrics in dbt and has replaced dbt_metrics. -::: - - - +You can still use the dbt Semantic Layer using the deprecated dbt_metrics package on v1.5 or older, however, these versions are no longer supported and don't receive any code fixes. -:::info dbt Metrics not recommended - -dbt Metrics won't be supported in v1.6 and higher, and is being replaced with MetricFlow. [Defining metrics](/docs/build/build-semantic-layer-intro) with MetricFlow will help shape the future of the dbt Semantic Layer — let us know [your thoughts and join the convo](https://github.com/dbt-labs/dbt-core/discussions/7456) to help build it! +To build your metrics and semantic layer, we **highly** recommend you [upgrade to dbt v1.6 and higher](link to migration guide) to use the new and most recent version of the dbt Semantic Layer, powered by MetricFlow. ::: + From aaca11edb6b75bf4d2127cdf89b8ae89c73bc32f Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 11 Jul 2023 11:55:01 +0100 Subject: [PATCH 018/703] mirnas changes --- website/dbt-versions.js | 12 + website/docs/docs/build/metrics.md | 16 +- .../docs/docs/dbt-cloud-apis/apis-overview.md | 3 +- .../avail-sl-integrations.md | 46 +- .../dbt-semantic-layer.md | 146 --- .../docs/use-dbt-semantic-layer/dbt-sl.md | 295 ++++++ .../docs/use-dbt-semantic-layer/graphql.md | 24 + .../docs/docs/use-dbt-semantic-layer/jdbc.md | 22 + ...art-semantic-layer.md => quickstart-sl.md} | 199 +++- .../set-dbt-semantic-layer.md | 40 - .../docs/use-dbt-semantic-layer/setup-sl.md | 107 +++ .../use-dbt-semantic-layer/sl-api-overview.md | 101 ++ .../use-dbt-semantic-layer/sl-manifest.md | 878 ++++++++++++++++++ .../docs/reference/artifacts/dbt-artifacts.md | 6 +- website/package-lock.json | 448 ++++++++- website/package.json | 1 + website/sidebars.js | 11 +- website/snippets/_legacy-sl-callout.md | 13 + website/snippets/_v2-sl-prerequisites.md | 52 ++ website/static/_redirects | 4 + 20 files changed, 2178 insertions(+), 246 deletions(-) delete mode 100644 website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md create mode 100644 website/docs/docs/use-dbt-semantic-layer/dbt-sl.md create mode 100644 website/docs/docs/use-dbt-semantic-layer/graphql.md create mode 100644 website/docs/docs/use-dbt-semantic-layer/jdbc.md rename website/docs/docs/use-dbt-semantic-layer/{quickstart-semantic-layer.md => quickstart-sl.md} (57%) delete mode 100644 website/docs/docs/use-dbt-semantic-layer/set-dbt-semantic-layer.md create mode 100644 website/docs/docs/use-dbt-semantic-layer/setup-sl.md create mode 100644 website/docs/docs/use-dbt-semantic-layer/sl-api-overview.md create mode 100644 website/docs/docs/use-dbt-semantic-layer/sl-manifest.md create mode 100644 website/snippets/_legacy-sl-callout.md create mode 100644 website/snippets/_v2-sl-prerequisites.md diff --git a/website/dbt-versions.js b/website/dbt-versions.js index 52b68d6c084..f2834c921b6 100644 --- a/website/dbt-versions.js +++ b/website/dbt-versions.js @@ -175,6 +175,18 @@ exports.versionedPages = [ "page": "docs/build/ratio", "firstVersion": "1.6", }, + { + "category": "docs/use-dbt-semantic-layer/sl-api-overview", + "firstVersion": "1.6", + }, + { + "category": "docs/use-dbt-semantic-layer/graphql", + "firstVersion": "1.6", + }, + { + "category": "docs/use-dbt-semantic-layer/jdbc", + "firstVersion": "1.6", + }, ] exports.versionedCategories = [ diff --git a/website/docs/docs/build/metrics.md b/website/docs/docs/build/metrics.md index 4e870dc49a9..4492d2f5770 100644 --- a/website/docs/docs/build/metrics.md +++ b/website/docs/docs/build/metrics.md @@ -6,20 +6,16 @@ keywords: - dbt metrics layer --- - - :::info dbt metrics no longer supported dbt_metrics is no longer supported in v1.6 and higher, and has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics). [MetricFlow](/docs/build/about-metricflow?version=1.6), a key component of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), is a new framework for defining metrics in dbt and has replaced dbt_metrics. You can still use the dbt Semantic Layer using the deprecated dbt_metrics package on v1.5 or older, however, these versions are no longer supported and don't receive any code fixes. -To build your metrics and semantic layer, we **highly** recommend you [upgrade to dbt v1.6 and higher](link to migration guide) to use the new and most recent version of the dbt Semantic Layer, powered by MetricFlow. +To build your metrics and semantic layer, we **highly** recommend you [upgrade to dbt v1.6 and higher](/guides/migration/versions/upgrading-to-v1.6) to use the new and most recent version of the dbt Semantic Layer, powered by MetricFlow. ::: - - * **v1.3.0**: Metrics have been moved out of the experimental phase @@ -27,6 +23,7 @@ To build your metrics and semantic layer, we **highly** recommend you [upgrade t + A metric is an aggregation over a that supports zero or more dimensions. Some examples of metrics include: - active users @@ -214,9 +211,12 @@ Metrics can have many declared **properties**, which define aspects of your metr ### Available calculation methods + The method of calculation (aggregation or derived) that is applied to the expression. + + The type of calculation (aggregation or expression) that is applied to the sql property. @@ -537,6 +537,7 @@ The period to date secondary calculation performs an aggregation on a defined pe #### Rolling: + The rolling secondary calculation performs an aggregation on a number of rows in metric dataset. For example, if the user selects the `week` grain and sets a rolling secondary calculation to `4` then the value returned will be a rolling 4 week calculation of whatever aggregation type was selected. If the `interval` input is not provided then the rolling caclulation will be unbounded on all preceding rows. | Input | Example | Description | Required | @@ -548,6 +549,7 @@ The rolling secondary calculation performs an aggregation on a number of rows in + The rolling secondary calculation performs an aggregation on a number of rows in the metric dataset. For example, if the user selects the `week` grain and sets a rolling secondary calculation to `4`, then the value returned will be a rolling 4-week calculation of whatever aggregation type was selected. | Input | Example | Description | Required | @@ -708,7 +710,7 @@ The above example will return a dataset that contains the metric provided in the **Important caveat** - You _must_ wrap the `expression` property for `derived` metrics in double quotes to render it. For example, `expression: "{{ metric('develop_metric') }} - 1 "`. - - + + diff --git a/website/docs/docs/dbt-cloud-apis/apis-overview.md b/website/docs/docs/dbt-cloud-apis/apis-overview.md index 9f7c22a7580..8323e3423da 100644 --- a/website/docs/docs/dbt-cloud-apis/apis-overview.md +++ b/website/docs/docs/dbt-cloud-apis/apis-overview.md @@ -8,10 +8,11 @@ id: "overview" Accounts on the _Team_ and _Enterprise_ plans can query the dbt Cloud APIs. -dbt Cloud provides two APIs: +dbt Cloud provides the following APIs: - The [dbt Cloud Administrative API](/docs/dbt-cloud-apis/admin-cloud-api) can be used to administrate a dbt Cloud account. - The [dbt Cloud Discovery API](/docs/dbt-cloud-apis/discovery-api) can be used to fetch metadata related to the state and health of your dbt project. +- The [dbt Semantic Layer API](/docs/use-dbt-semantic-layer/sl-api-overview) provides multiple API options which allow you to query your metrics defined in the dbt Semantic Layer. If you want to learn more about webhooks, refer to [Webhooks for your jobs](/docs/deploy/webhooks). diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 8c004d865bb..b3f10309999 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -5,14 +5,44 @@ description: "Review a wide range of partners you can integrate and query with t sidebar_label: "Available integrations" --- -:::info Coming soon -The dbt Semantic Layer is undergoing a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. + -**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new way framework for defining metrics in dbt. +:::info Revamped dbt Semantic Layer + +The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. + +**What’s changed?** The dbt_metrics package has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), one of the Semantic Layer's key component and a new way framework for defining metrics in dbt. -**What's new?** Learn how to [Build your metrics](/docs/build/build-metrics-intro?version=1.6) using MetricFlow, one of the key components that makes up the revamped dbt Semantic Layer. It handles SQL query construction and defines the specification for dbt semantic models and metrics. ::: +Query dbt metrics via external integrations using the sophisticated [dbt Semantic Layer APIs](/docs/use-dbt-semantic-layer/sl-api-overview) (Discovery, JDBC, and GraphQL API). With these APIs, you can query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. + +A wide variety of data applications across the modern data stack natively integrate with the dbt Semantic Layer, powered by MetricFlow — from Business Intelligence tools to notebooks, spreadsheets, data catalogs, and more. + +The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. Here are some of the integrations you can query from: + +- Tableau — +- Google Sheets — +- Hex — +- Mode — + +For information on the partner integrations, their documentation, and more — refer to the [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) page. + + + + +## Related docs + +- [dbt Semantic Layer API](/docs/use-dbt-semantic-layer/sl-api-overview) to learn how to integrate with the Discovery, JDBC, and GraphQL API to query your metrics in downstream tools. + + + + + +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; + + + A wide variety of data applications across the modern data stack natively integrate with the dbt Semantic Layer and dbt metrics — from Business Intelligence tools to notebooks, data catalogs, and more. The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and leveraging the dbt Server. @@ -24,8 +54,6 @@ For information on the partner integrations, their documentation, and more &mdas ## Related docs -- [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-semantic-layer) to learn more about the dbt Semantic Layer. -- [Product architecture](/docs/use-dbt-semantic-layer/dbt-semantic-layer#product-architecture) for more information on plan availability. -- [Public Preview information](/docs/use-dbt-semantic-layer/quickstart-semantic-layer#public-preview) to understand what Public Preview for the dbt Semantic Layer means. -- [dbt Semantic Layer partner integration guide](/guides/dbt-ecosystem/sl-partner-integration-guide) for information about partner integration guidelines, product roadmap, and API connectivity. -- [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) to understand best practices for designing and structuring metrics in your dbt project. +- [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) to learn more about the dbt Semantic Layer. + + diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md deleted file mode 100644 index 5fe781ffeb6..00000000000 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md +++ /dev/null @@ -1,146 +0,0 @@ ---- -title: "dbt Semantic Layer" -id: dbt-semantic-layer -description: "Introducing the dbt Semantic Layer" -sidebar_label: "dbt Semantic Layer" ---- - -:::info Coming soon -The dbt Semantic Layer is undergoing a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. - -**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new way framework for defining metrics in dbt. - -**What's new?** Learn how to [Build your metrics](/docs/build/build-metrics-intro?version=1.6) using MetricFlow, one of the key components that makes up the revamped dbt Semantic Layer. It handles SQL query construction and defines the specification for dbt semantic models and metrics. -::: - -The dbt Semantic Layer allows data teams to centrally define essential business metrics like `revenue`, `customer`, and `churn` in the modeling layer (your dbt project) for consistent self-service within downstream data tools like BI and metadata management solutions. The dbt Semantic Layer provides the flexibility to define metrics on top of your existing models and then query those metrics and models in your analysis tools of choice. - -The result? You have less duplicate coding for data teams and more consistency for data consumers. - -The dbt Semantic Layer has four main parts: - -- Define your metrics in version-controlled dbt project code using MetricFlow -- Import your metric definitions via the [Discovery API](/docs/dbt-cloud-apis/discovery-api) -- Query your metric data via the dbt Proxy Server -- Explore and analyze dbt metrics in downstream tools - - - - -### What makes the dbt Semantic Layer different? - -The dbt Semantic Layer reduces code duplication and inconsistency regarding your business metrics. By moving metric definitions out of the BI layer and into the modeling layer, data teams can feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. You can also use the dbt Semantic Layer to query models and use macros. - - -## Prerequisites -To use the dbt Semantic Layer, you’ll need to meet the following: - - - - - -## Public Preview - -The dbt Semantic Layer is currently available for Public Preview, which means: - -— **Who?** The dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise) during Public Preview. Review [Product architecture](/docs/use-dbt-semantic-layer/dbt-semantic-layer#product-architecture) for more info on plan availability. - -- Team and Enterprise accounts will be able to set up the Semantic Layer and [Discovery API](/docs/dbt-cloud-apis/discovery-api) in the integrated -partner tool to import metric definition. -- Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse dbt metrics in external tools, which requires access to the Discovery API. - -— **What?** Public Previews provide early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality that is not backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). - -— **When?** Public Preview will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will only be available to dbt Cloud **Team** and **Enterprise** plans. - -— **Where?** Public Preview is enabled at the account level so you don’t need to worry about enabling it per user. - -## Product architecture - -The dbt Semantic Layer product architecture includes four primary components: - -| Components | Information | Developer plans | Team plans | Enterprise plans | License | -| --- | --- | :---: | :---: | :---: | --- | -| **[dbt project](/docs/build/metrics)** | Define models and metrics in dbt Core. | ✅ | ✅ | ✅ | Open source, Core | -| **[dbt Server](https://github.com/dbt-labs/dbt-server)**| A persisted HTTP server that wraps dbt core to handle RESTful API requests for dbt operations. | ✅ | ✅ | ✅ | BSL | -| **SQL Proxy** | Reverse-proxy that accepts dbt-SQL (SQL + Jinja like query models and metrics, use macros), compiles the query into pure SQL, and executes the query against the data platform. | ✅

_* Available during Public Preview only_ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | -| **[Discovery API](/docs/dbt-cloud-apis/discovery-api)** | Accesses metric definitions primarily via integrations and is the source of truth for objects defined in dbt projects (like models, macros, sources, metrics). The Discovery API is updated at the end of every dbt Cloud run. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise | - - - -dbt Semantic Layer integrations will: - -- Leverage the Discovery API to fetch a list of objects and their attributes, like metrics -- Generate a dbt-SQL statement -- Then query the SQL proxy to evaluate the results of this statement - - -## Manage metrics - -:::info 📌 - -New to dbt or metrics? Check out our [quickstart guide](/quickstarts) to build your first dbt project! If you'd like to define your first metrics, try our [Jaffle Shop](https://github.com/dbt-labs/jaffle_shop_metrics) example project. - -::: - -If you're not sure whether to define a metric in dbt or not, ask yourself the following: - -> *Is this something our teams consistently need to report on?* - -An important business metric should be: - -- Well-defined (the definition is agreed upon throughout the entire organization) -- Time-bound (able to be compared across time) - -A great example of this is **revenue** — it can be aggregated on multiple levels (weekly, monthly, etc) and is key for the broader business to understand. - -- ✅ `Monthly recurring revenue` or `Weekly active users` or `Average order value` -- ❌ `1-off experimental metric` - - -### Design and define metrics - -**Design metrics** -To read about best practices on structuring and organizing your metrics, review our [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog post first. - -**Define metrics** -You can define your metrics in `.yml` files nested under a metrics key and to design or define your own metrics in your dbt project, review the following documents:
- -- [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog to understand best practices for designing and structuring metrics in your dbt project -- [dbt metrics](docs/build/metrics) for in-depth detail on attributes, filters, how to define and query your metrics and [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics) -- [dbt Semantic Layer quickstart](/docs/use-dbt-semantic-layer/quickstart-semantic-layer) to get started -- [Understanding the components of the dbt Semantic Layer](https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer) blog post to see further examples - -Review our helpful metrics video below, which explains what metrics are, why they're important and how you can get started: - - - -## Related questions - -
- How are you storing my data? -
-
The dbt Semantic Layer does not store, or cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool.
-
-
-
- Is the dbt Semantic Layer open source? -
-
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open source.



- -During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



- -
    -
  • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. To use the dbt Semantic Layer integrations, users will need to have a dbt Cloud account.


  • -
  • Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API.


  • -
  • Team and Enterprise accounts will be able to set up the Semantic Layer and Discovery API in the integrated partner tool to import metric definition.
  • -
-
-
- Is there a dbt Semantic Layer discussion hub? -
-
Yes absolutely! Join the dbt Slack community and #dbt-cloud-semantic-layer slack channel for all things related to the dbt Semantic Layer. -
-
-
-

diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md new file mode 100644 index 00000000000..6901c5b1726 --- /dev/null +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -0,0 +1,295 @@ +--- +title: "dbt Semantic Layer" +id: dbt-sl +description: "Introducing the improved dbt Semantic Layer, which allows data teams to centrally define and query metrics." +sidebar_label: "About the dbt Semantic Layer" +--- + + + +:::info Revamped dbt Semantic Layer + +The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. + +**What’s changed?** The dbt_metrics package has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), one of the Semantic Layer's key component and a new way framework for defining metrics in dbt. + +::: + +The dbt Semantic Layer, powered by MetricFlow, allows data teams to centrally define essential business metrics like `revenue`, `customer`, and `churn` in the modeling layer (your dbt project) for consistent self-service within downstream data tools like BI and metadata management solutions. The dbt Semantic Layer provides the flexibility to define metrics on top of your existing models and then query those metrics and models in your analysis tools of choice. + +The result? You have less duplicate coding for data teams and more consistency for data consumers. + +The dbt Semantic Layer has four main parts: + +- Define your metrics in version-controlled dbt project code using MetricFlow +- Import your metric definitions via the [Discovery API](/docs/dbt-cloud-apis/discovery-api) +- Query your metric data using the [Semantic Layer API](/docs/use-dbt-semantic-layer/sl-api-overview) (JDBC driver, GraphQL API, and the Discovery API) +- Explore and analyze your metrics in downstream tools + +ADD ARCHITECTURE IMAGE + +### What makes the dbt Semantic Layer different? + +The dbt Semantic Layer reduces code duplication and inconsistency regarding your business metrics. By moving metric definitions out of the BI layer and into the modeling layer, data teams can feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. You can also use the dbt Semantic Layer to query models and use macros. + + +## Prerequisites + +To use the dbt Semantic Layer, you’ll need to meet the following: + +import SetUp from '/snippets/_v2-sl-prerequisites.md'; + + + + + +## Public Preview + +The dbt Semantic Layer is currently available for Public Preview, which means: + +— **Who?** The dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise) during Public Preview. Review [Product architecture](#product-architecture) for more info on plan availability. + +- Team and Enterprise accounts will be able to set up the Semantic Layer and [Discovery API](/docs/dbt-cloud-apis/discovery-api) in the integrated +partner tool to import metric definition. +- Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse dbt metrics in external tools, which requires access to the Discovery API. + +— **What?** Public Previews provide early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality that is not backward compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). + +— **When?** Public Preview will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will only be available to dbt Cloud **Team** and **Enterprise** plans. + +— **Where?** Public Preview is enabled at the account level so you don’t need to worry about enabling it per user. + +## Product architecture + +The dbt Semantic Layer product architecture includes four primary components: + +| Components | Information | Developer plans | Team plans | Enterprise plans | License | +| --- | --- | :---: | :---: | :---: | --- | +| **[MetricFlow](/docs/build/about-metricflow)** | Use MetricFlow in dbt to centrally define your metrics. MetricFlow is a key component of the dbt Semantic Layer and is responsible for SQL query construction and defining specifications for dbt semantic models and metrics. | ✅ | ✅ | ✅ | BSL package (code is source available) | +| **[dbt Server](https://github.com/dbt-labs/dbt-server)**| A persisted HTTP server that wraps dbt core to handle RESTful API requests for dbt operations. | ✅ | ✅ | ✅ | BSL | +| **SQL Proxy** | Reverse-proxy that accepts dbt-SQL (SQL + Jinja like query models and metrics, use macros), compiles the query into pure SQL, and executes the query against the data platform. | ✅

_* Available during Public Preview only_ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | +| **[Semantic Layer APIs](/docs/use-dbt-semantic-layer/sl-api-overview)** | Use the Semantic Layer APIS, which includes the Discovery, JDBC, and GraphQL API, to access metric definitions using integrations. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise | + +ADD COMPONENT IMAGE + +dbt Semantic Layer integrations will: + +- Leverage the Semantic Layer APIs to fetch a list of objects and their attributes, like metrics +- Generate a dbt-SQL statement +- Then query the SQL proxy to evaluate the results of this statement + + +## Manage metrics + +:::tip +New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template) to help you get started! +::: + +If you're not sure whether to define a metric in dbt or not, ask yourself the following: + +> *Is this something our teams consistently need to report on?* + +An important business metric should be: + +- Well-defined (the definition is agreed upon throughout the entire organization) +- Time-bound (able to be compared across time) + +A great example of this is **revenue** — it can be aggregated on multiple levels (weekly, monthly, etc) and is key for the broader business to understand. + +- ✅ `Monthly recurring revenue` or `Weekly active users` or `Average order value` +- ❌ `1-off experimental metric` + + +### Build metrics + +Use [MetricFlow](/docs/build/build-metrics-intro) in dbt to centrally build and define your metrics. MetricFlow is a key component of the dbt Semantic Layer, handles SQL query construction, and defines the specification for dbt semantic models and metrics. + +With MetricFlow, you can use familiar constructs like semantic models and metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. + +You can define your metrics in `.yml` files nested under a semantic model key to building your own metrics in your dbt project. + +To fully experience the dbt Semantic Layer, including the ability to query dbt metrics via external integrations, you'll need a dbt Cloud Team or Enterprise account. + +To begin building and defining metrics, refer to the detailed [MetricFlow](/docs/build/build-metrics-intro) docs for more info. + +**Design metrics** +To read about best practices on structuring and organizing your metrics, review our [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog post first. + +## Related questions + +
+ How do I migrate from the old Semantic Layer to the new one? +
+
ADD INFO HERE AND MIGRATION SCRIPT.
+
+
+ +
+ How are you storing my data? +
+
The dbt Semantic Layer does not store, cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool.
+
+
+
+ Is the dbt Semantic Layer open source? +
+
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL-licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open sources.



+ +During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



+ +
    +
  • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. To use the dbt Semantic Layer integrations, users will need to have a dbt Cloud account.


  • +
  • Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API.


  • +
  • Team and Enterprise accounts will be able to set up the Semantic Layer and Discovery API in the integrated partner tool to import metric definition.
  • +
+
+
+ Is there a dbt Semantic Layer discussion hub? +
+
Yes absolutely! Join the dbt Slack community and #dbt-cloud-semantic-layer slack channel for all things related to the dbt Semantic Layer. +
+
+
+

+ +
+ + + +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; + + + +The dbt Semantic Layer allows data teams to centrally define essential business metrics like `revenue`, `customer`, and `churn` in the modeling layer (your dbt project) for consistent self-service within downstream data tools like BI and metadata management solutions. The dbt Semantic Layer provides the flexibility to define metrics on top of your existing models and then query those metrics and models in your analysis tools of choice. + +The result? You have less duplicate coding for data teams and more consistency for data consumers. + +The dbt Semantic Layer has four main parts: + +- Define your metrics in version-controlled dbt project code using MetricFlow + * dbt_metrics is now deprecated +- Import your metric definitions via the [Discovery API](/docs/dbt-cloud-apis/discovery-api) +- Query your metric data via the dbt Proxy Server +- Explore and analyze dbt metrics in downstream tools + + + + +### What makes the dbt Semantic Layer different? + +The dbt Semantic Layer reduces code duplication and inconsistency regarding your business metrics. By moving metric definitions out of the BI layer and into the modeling layer, data teams can feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. You can also use the dbt Semantic Layer to query models and use macros. + + +## Prerequisites +To use the dbt Semantic Layer, you’ll need to meet the following: + + + + + +## Public Preview + +The dbt Semantic Layer is currently available for Public Preview, which means: + +— **Who?** The dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise) during Public Preview. Review [Product architecture](/docs/use-dbt-semantic-layer/dbt-semantic-layer#product-architecture) for more info on plan availability. + +- Team and Enterprise accounts will be able to set up the Semantic Layer and [Discovery API](/docs/dbt-cloud-apis/discovery-api) in the integrated +partner tool to import metric definition. +- Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse dbt metrics in external tools, which requires access to the Discovery API. + +— **What?** Public Previews provide early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality that is not backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). + +— **When?** Public Preview will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will only be available to dbt Cloud **Team** and **Enterprise** plans. + +— **Where?** Public Preview is enabled at the account level so you don’t need to worry about enabling it per user. + +## Product architecture + +The dbt Semantic Layer product architecture includes four primary components: + +| Components | Information | Developer plans | Team plans | Enterprise plans | License | +| --- | --- | :---: | :---: | :---: | --- | +| **[dbt project](/docs/build/metrics)** | Define models and metrics in dbt Core. | ✅ | ✅ | ✅ | Open source, Core | +| **[dbt Server](https://github.com/dbt-labs/dbt-server)**| A persisted HTTP server that wraps dbt core to handle RESTful API requests for dbt operations. | ✅ | ✅ | ✅ | BSL | +| **SQL Proxy** | Reverse-proxy that accepts dbt-SQL (SQL + Jinja like query models and metrics, use macros), compiles the query into pure SQL, and executes the query against the data platform. | ✅

_* Available during Public Preview only_ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | +| **[Discovery API](/docs/dbt-cloud-apis/discovery-api)** | Accesses metric definitions primarily via integrations and is the source of truth for objects defined in dbt projects (like models, macros, sources, metrics). The Discovery API is updated at the end of every dbt Cloud run. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise | + + + +dbt Semantic Layer integrations will: + +- Leverage the Discovery API to fetch a list of objects and their attributes, like metrics +- Generate a dbt-SQL statement +- Then query the SQL proxy to evaluate the results of this statement + + +## Manage metrics + +:::info 📌 + +New to dbt or metrics? Check out our [quickstart guide](/quickstarts) to build your first dbt project! If you'd like to define your first metrics, try our [Jaffle Shop](https://github.com/dbt-labs/jaffle_shop_metrics) example project. + +::: + +If you're not sure whether to define a metric in dbt or not, ask yourself the following: + +> *Is this something our teams consistently need to report on?* + +An important business metric should be: + +- Well-defined (the definition is agreed upon throughout the entire organization) +- Time-bound (able to be compared across time) + +A great example of this is **revenue** — it can be aggregated on multiple levels (weekly, monthly, etc) and is key for the broader business to understand. + +- ✅ `Monthly recurring revenue` or `Weekly active users` or `Average order value` +- ❌ `1-off experimental metric` + + +### Design and define metrics + +**Design metrics** +To read about best practices on structuring and organizing your metrics, review our [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog post first. + +**Define metrics** +You can define your metrics in `.yml` files nested under a metrics key and to design or define your own metrics in your dbt project, review the following documents:
+ +- [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog to understand best practices for designing and structuring metrics in your dbt project +- [dbt metrics](docs/build/metrics) for in-depth detail on attributes, filters, how to define and query your metrics, and [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics) +- [dbt Semantic Layer quickstart](/docs/use-dbt-semantic-layer/quickstart-semantic-layer) to get started +- [Understanding the components of the dbt Semantic Layer](https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer) blog post to see further examples + +Review our helpful metrics video below, which explains what metrics are, why they're important, and how you can get started: + + + +## Related questions + +
+ How are you storing my data? +
+
The dbt Semantic Layer does not store, or cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool.
+
+
+
+ Is the dbt Semantic Layer open source? +
+
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL-licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open sources.



+ +During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



+ +
    +
  • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. To use the dbt Semantic Layer integrations, users will need to have a dbt Cloud account.


  • +
  • Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API.


  • +
  • Team and Enterprise accounts will be able to set up the Semantic Layer and Discovery API in the integrated partner tool to import metric definition.
  • +
+
+
+ Is there a dbt Semantic Layer discussion hub? +
+
Yes absolutely! Join the dbt Slack community and #dbt-cloud-semantic-layer slack channel for all things related to the dbt Semantic Layer. +
+
+
+

+
diff --git a/website/docs/docs/use-dbt-semantic-layer/graphql.md b/website/docs/docs/use-dbt-semantic-layer/graphql.md new file mode 100644 index 00000000000..726039dcf68 --- /dev/null +++ b/website/docs/docs/use-dbt-semantic-layer/graphql.md @@ -0,0 +1,24 @@ +--- +title: "GraphQL" +id: graphql +description: "Integrate and use the GraphQL API to query your metrics." +tags: ["semantic-layer, apis"] +--- + + + +:::info + +The dbt Semantic Layer APIs are available for users on a Team or Enterprise plans on dbt v1.6 and higher. To learn more about the Semantic APIs, make sure you select v1.6 or higher in the docs navigation header and upgrade your dbt version. + +::: + +ADD GRAPHQL CONTENT HERE + + + + + +ADD GRAPHQL CONTENT HERE + + diff --git a/website/docs/docs/use-dbt-semantic-layer/jdbc.md b/website/docs/docs/use-dbt-semantic-layer/jdbc.md new file mode 100644 index 00000000000..d22f500765d --- /dev/null +++ b/website/docs/docs/use-dbt-semantic-layer/jdbc.md @@ -0,0 +1,22 @@ +--- +title: "JDBC" +id: jdbc +description: "Integrate and use the JDBC API to query your metrics." +tags: ["semantic-layer, apis"] +--- + + + +:::info +The dbt Semantic Layer APIs are available for users on a Team or Enterprise plans on dbt v1.6 and higher. To learn more about the Semantic APIs, make sure you select v1.6 or higher in the docs navigation header and upgrade your dbt version. +::: + +ADD JDBC CONTENT HERE + + + + + +ADD JDBC CONTENT HERE + + diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md similarity index 57% rename from website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md rename to website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 19a5fb15057..e844132c587 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -1,36 +1,190 @@ --- -title: "Quickstart" -id: quickstart-semantic-layer -description: "Define metrics and set up the dbt Semantic Layer" -sidebar_label: "Quickstart" +title: "Get started with the dbt Semantic Layer" +id: quickstart-sl +description: "Go through this get started guide to build and define metrics, set up the dbt Semantic Layer, and query them using the Semantic Layer APIs." +sidebar_label: "Getting started" --- -:::info Coming soon -The dbt Semantic Layer is undergoing a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. + -**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new way framework for defining metrics in dbt. +This getting started page recommends a workflow to help you get started creating your first metrics. Here are the following steps you'll take: -**What's new?** Learn how to [Build your metrics](/docs/build/build-metrics-intro?version=1.6) using MetricFlow, one of the key components that makes up the revamped dbt Semantic Layer. It handles SQL query construction and defines the specification for dbt semantic models and metrics. +- [Create a semantic model](#create-a-semantic-model) +- [Create your metrics](#create-your-metrics) +- [Run your production job](#run-your-production-job) +- [Set up dbt Semantic Layer](#setup) +- [Connect to the Semantic Layer APIs](#connect-to-apis) +- [Query your metrics using partner integrations](#query-metrics) + +## Prerequisites + +import SetUp from '/snippets/_v2-sl-prerequisites.md'; + + + + + +:::tip +New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template) to help you get started! +::: + +## Create a semantic model + +In MetricFlow, which powers the dbt Semantic Layer, there are two main objects: + +- [Semantic models](/docs/build/semantic-models) — Nodes in your semantic graph, connected via entities as edges. MetricFlow takes semantic models defined in YAML configuration files as inputs and creates a semantic graph that you can use to query metrics. +- [Metrics](/docs/build/metrics-overview) — Can be defined in the same YAML files as your semantic models, or split into separate YAML files into any other subdirectories (provided that these subdirectories are also within the same dbt project repo). + +This step will guide you through setting up your semantic models, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). + +1. Name your semantic model, fill in appropriate metadata, and map it to a model in your dbt project. + +```yaml +semantic_models: + - name: transactions + description: | + This table captures every transaction starting July 02, 2014. Each row represents one transaction + model: ref('fact_transactions') + ``` + +2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `transaction_id`, and so on. + +```yaml + entities: + - name: transaction + type: primary + expr: id_transaction + - name: customer + type: foreign + expr: id_customer + ``` + +3. Define your dimensions and measures. dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. + +```yaml +measures: + - name: transaction_amount_usd + description: The total USD value of the transaction. + agg: sum + dimensions: + - name: is_large + type: categorical + expr: case when transaction_amount_usd >= 30 then true else false end +``` + +:::tip + +If you're familiar with writing SQL, you can think of dimensions as the columns you would group by and measures as the columns you would aggregate. +```sql +select + metric_time_day, -- time + country, -- categorical dimension + sum(revenue_usd) -- measure +from + snowflake.fact_transactions -- sql table +group by metric_time_day, country -- dimensions + ``` ::: -## Public Preview +## Create your metrics + +Now that you've created your first semantic model, it's time to define your first metric. MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). You can define metrics in the same YAML files as your semantic models, or create a new file. + +The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. + +```yaml +--- +metrics: + - name: transaction_amount_usd + type: simple + type_params: + measure: transaction_amount_usd +``` + +1. Click **Save** and then **Preview** the code in the dbt Cloud IDE. +* Run `mf query --metrics --group-by ` to manually query the metrics and dimensions in the IDE. +2. Run `mf validate-configs` to validate the changes before committing them. +3. Commit and merge the code changes that contain the metric definitions. + +Review the [MetricFlow](/docs/build/build-metrics-intro) documents to further build your own metrics. + +## Run your production job + +Once you’ve defined metrics in your dbt project, you can perform a job run in your deployment environment to materialize your metrics. The deployment environment is only supported for the dbt Semantic Layer at this moment. + +1. Go to **Deploy** in the navigation header +2. Select **Jobs** to re-run the job with the most recent code in the deployment environment. +3. Your metric should appear as a red node in the dbt Cloud IDE and dbt directed acyclic graphs (DAG). + + + + +**What’s happening internally?** + +- Merging the code into your main branch allows dbt Cloud to pull those changes and builds the definition in the manifest produced by the run. +- Re-running the job in the deployment environment helps materialize the models, which the metrics depend on, in the data platform. It also makes sure that the manifest is up to date. +- Your dbt Discovery API pulls in the most recent manifest and allows your integration information to extract metadata from it. + +## Set up dbt Semantic Layer -We're excited to announce the dbt Semantic Layer is currently available for Public Preview, which means: + + +## Connect to the Semantic Layer APIs + +add content here + +## Query your metrics using partner integrations + +add content + +:::info 📌 + +**Note:** You will need access to dbt Cloud and the dbt Semantic Layer from your integrated partner tool of choice. -— **Who?** The dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise) during Public Preview. Review [Product architecture](/docs/use-dbt-semantic-layer/dbt-semantic-layer#product-architecture) for more info on plan availability. +::: -- Team and Enterprise accounts will be able to set up the Semantic Layer and [Discovery API](/docs/dbt-cloud-apis/discovery-api) in the integrated -partner tool to import metric definition. -- Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse dbt metrics in external tools, which requires access to the Discovery API. +## FAQs -— **What?** Public Previews provide early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality that is not backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). +If you're encountering some issues when defining your metrics or setting up the dbt Semantic Layer, check out a list of answers to some of the questions or problems you may be experiencing. -— **When?** Public Preview will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will only be available to dbt Cloud **Team** and **Enterprise** plans. +
+ How are you storing my data? +
+
The dbt Semantic Layer does not store, or cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool.
+
+
+
+ Is the dbt Semantic Layer open source? +
+
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL-licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open sources.



-— **Where?** Public Preview is enabled at the account level so you don’t need to worry about enabling it per user. +During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



+
    +
  • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. To use the dbt Semantic Layer integrations, you will need to have a dbt Cloud account.




  • +
  • Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API.




  • +
  • Team and Enterprise accounts will be able to set up the Semantic Layer and Discovery API in the integrated partner tool to import metric definitions.
  • +
+
+
+
+ +## Next steps -## Introduction +Are you ready to define your own metrics and bring consistency to data consumers? Review the following documents to understand how to structure, define, and query metrics, and set up the dbt Semantic Layer: + +- [Set up dbt Semantic Layer](docs/use-dbt-semantic-layer/setup-dbt-sl) +- [About MetricFlow](/docs/build/about-metricflow) +- [Semantic models](/docs/build/semantic-models) +- [Metrics](/docs/build/metrics-overview) + +
+ + + +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; + + To try out the features of the dbt Semantic Layer, you first need to have a dbt project set up. This quickstart guide will lay out the following steps, and recommends a workflow that demonstrates some of its essential features: @@ -56,7 +210,6 @@ New to dbt or metrics? Check out our [quickstart guide](/quickstarts) to build ## Installing dbt metrics package The dbt Semantic Layer supports the calculation of metrics by using the [dbt metrics package](https://hub.getdbt.com/dbt-labs/metrics/latest/). You can install the dbt metrics package in your dbt project by copying the below code blocks. - ```yml @@ -176,7 +329,7 @@ metrics: 2. Commit and merge the code changes that contain the metric definitions. 3. If you'd like to further design and define your own metrics, review the following documentation: - - [dbt metrics](/docs/build/metrics) will povide you in-depth detail on attributes, properties, filters, and how to define and query metrics. + - [dbt metrics](/docs/build/metrics) will provide you in-depth detail on attributes, properties, filters, and how to define and query metrics. - Review [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog to understand best practices for designing and structuring metrics in your dbt project. @@ -226,7 +379,7 @@ If you're encountering some issues when defining your metrics or setting up the
Is the dbt Semantic Layer open source?
-
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open source.



+
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL-licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open sources.



During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



-

From 990090c70a228c7a0f8c7717256d83e332f76143 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 13:02:53 +0100 Subject: [PATCH 118/703] update build metrics --- website/docs/docs/build/build-metrics-intro.md | 11 ++++------- .../docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 -- .../use-dbt-semantic-layer/quickstart-sl.md | 18 +++++++++++++----- website/snippets/_legacy-sl-callout.md | 2 +- website/snippets/_v2-sl-prerequisites.md | 2 +- 5 files changed, 19 insertions(+), 16 deletions(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 0cc62b48b55..3ecf62c278e 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -12,18 +12,15 @@ Use MetricFlow in dbt to centrally define your metrics. MetricFlow is a key comp Use familiar constructs like semantic models and metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. :::info -MetricFlow is currently available on dbt Core v1.6 beta for [command line (CLI)](/docs/core/about-the-cli) users, with support for dbt Cloud and integrations coming soon. MetricFlow, a BSL package (code is source available), is a new way to define metrics in dbt and will replace the dbt_metrics package. +MetricFlow is currently available on dbt v1.6 beta for dbt Cloud users. MetricFlow, is a new way to define metrics in dbt and replaces the dbt_metrics package. To fully experience the dbt Semantic Layer, including the ability to query dbt metrics via external integrations, you'll need a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). ::: Before you start, keep the following considerations in mind: -- Use the CLI to define metrics in YAML and query them using the [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). -- You must be on dbt Core v1.6 beta or higher to use MetricFlow. [Upgrade your dbt version](/docs/core/pip-install#change-dbt-core-versions) to get started. - * Note: Support for dbt Cloud and querying via external integrations coming soon. -- MetricFlow currently only supports Snowflake and Postgres. - * Note: Support for BigQuery, Databricks, and Redshift coming soon. -- dbt Labs is working with [integration partners](https://www.getdbt.com/product/semantic-layer-integrations) to develop updated integrations for the new Semantic Layer, powered by MetricFlow, in addition to introducing other consumption methods like Python and JDBC.

+- Define metrics in YAML and query them using the [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). +- You must be on dbt v1.6 beta or higher to use MetricFlow. [Upgrade your dbt Cloud version](/docs/dbt-versions/upgrade-core-in-cloud) to get started. +- MetricFlow currently only supports Snowflake, Postgres, BigQuery, Databricks, and Redshift
diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index ddb36083cec..f294b93acc9 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -19,8 +19,6 @@ Moving metric definitions out of the BI layer and into the modeling layer allows To read more about why you need a universal Semantic Layer, read this [blog post](https://www.getdbt.com/blog/universal-semantic-layer/). - - ## Explore the dbt Semantic Layer The universal dbt Semantic Layer is available to all Team and Enterprise Plans during [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta). Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 5b4251fa28b..24922ce668d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -93,9 +93,11 @@ group by metric_time_day, country -- dimensions ## Define metrics -Now that you've created your first semantic model, it's time to define your first metric. MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). You can define metrics in the same YAML files as your semantic models, or create a new file. +Now that you've created your first semantic model, it's time to define your first metric. MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). -The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. +1. You can define metrics in the same YAML files as your semantic models, or create a new file. + +2. The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. ```yaml --- @@ -106,10 +108,16 @@ metrics: measure: transaction_amount_usd ``` -1. Click **Save** and then **Preview** the code in the dbt Cloud IDE. -2. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions in the IDE. +3. Click **Save** and then **Preview** the code in the dbt Cloud IDE. + + +### Test metrics + +The following steps explain how to query and test your metrics, which currently is only available via the CLI. However, IDE support will be available soon: + +1. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions in the IDE. 3. Run `mf validate-configs` to validate the changes before committing them. -4. Commit and merge the code changes that contain the metric definitions. +3. Commit and merge the code changes that contain the metric definitions. To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. diff --git a/website/snippets/_legacy-sl-callout.md b/website/snippets/_legacy-sl-callout.md index a2d2204babb..cd861b7405d 100644 --- a/website/snippets/_legacy-sl-callout.md +++ b/website/snippets/_legacy-sl-callout.md @@ -6,6 +6,6 @@ The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.c **What should you do?** If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. -**Who does this affect?** Users on[Team or Enterprise plans](https://www.getdbt.com/pricing/) hosted on a multi-tenant North American [deployment region](/docs/cloud/about-cloud/regions-ip-addresses) and using dbt v1.6 or later can access the newly enhanced dbt Semantic Layer. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. +**Who does this affect?** The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses). You must be on dbt v1.6 or higher to access it. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. ::: diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 7080ef950b9..1063e8e961d 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -6,7 +6,7 @@ - Use Snowflake, BigQuery, Databricks, and Redshift data platform - A successful run in the environment where your Semantic Layer is configured * Note — Deployment environment is currently supported (_development experience coming soon_) -- Install the [MetricFlow CLI](https://github.com/dbt-labs/metricflow) package +- Install the [MetricFlow command line (CLI)](https://github.com/dbt-labs/metricflow) package * Note — After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/use-dbt-semantic-layer/sl-api-overview) in the integrated tool to import metric definitions * Developer accounts will be able to query manually via the CLI using SQL. To dynamically query metrics using external tools, you'll need access to the Semantic Layer APIs.
From 289ae348baf02de720778be94dcbca2d788d3910 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 13:09:21 +0100 Subject: [PATCH 119/703] nits --- website/docs/docs/dbt-cloud-apis/sl-graphql.md | 2 -- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 9 +++------ website/docs/docs/dbt-cloud-apis/sl-manifest.md | 8 ++++++++ website/snippets/_upgrade-new-sl.md | 3 ++- 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index 9d528f1b3aa..a2ef2e93ca3 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -14,8 +14,6 @@ import UpgradeSL from '/snippets/_upgrade-new-sl.md'; - - GraphQL is an open-source query language for APIs (Application Programming Interfaces). It provides a more efficient and flexible alternative to traditional RESTful APIs. With GraphQL, clients can request specific data requirements using a single query. GraphQL allows clients to retrieve all the needed data in a single request. This reduces the number of round trips to the server, minimizing network overhead and improving performance. diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 43f567874bb..b70bfcee923 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -5,15 +5,12 @@ description: "Integrate and use the JDBC API to query your metrics." tags: ["semantic-layer, apis"] --- - - -:::info Upgrade to access the new dbt Semantic Layer -The new dbt Semantic Layer has been re-released and is now available for users on a [Team or Enterprise plans](https://www.getdbt.com/pricing/) and you must be on dbt v1.6 and higher. + -If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. +import UpgradeSL from '/snippets/_upgrade-new-sl.md'; -::: + diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index 241a137ab42..fd1fe614139 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -5,6 +5,14 @@ description: "Learn about the semantic manifest.json file and how you can use ar sidebar_label: "Semantic manifest" --- + + +import UpgradeSL from '/snippets/_upgrade-new-sl.md'; + + + + + The dbt Semantic Layer creates an [artifact](/reference/artifacts/dbt-artifacts) file called the "Semantic Manifest" (`semantic_manifest.json`). This artifact contains comprehensive information about your Semantic Layer. You can use it as a valuable reference to understand the structure and details of your data models. Similar to the `manifest.json` file, the Semantic Manifest also lives in the `/target` directory of your dbt project. This is where dbt stores various artifacts (such as compiled models and tests) generated during the execution of your project. diff --git a/website/snippets/_upgrade-new-sl.md b/website/snippets/_upgrade-new-sl.md index b22b690d046..765b0db8dac 100644 --- a/website/snippets/_upgrade-new-sl.md +++ b/website/snippets/_upgrade-new-sl.md @@ -2,6 +2,7 @@ The new dbt Semantic Layer has been re-released and is now available for users on a [Team or Enterprise plans](https://www.getdbt.com/pricing/) and you must be on dbt v1.6 and higher. -If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. +If you're using the legacy Semantic Layer, you **must** [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. The dbt_metrics package has been deprecated and replaced with MetricFlow. +Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. ::: From 90e65382706c7b9b360eaabde5a47d189b544eb8 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 13:24:26 +0100 Subject: [PATCH 120/703] graphql --- .../docs/docs/dbt-cloud-apis/sl-graphql.md | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index a2ef2e93ca3..24783f89065 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -14,28 +14,27 @@ import UpgradeSL from '/snippets/_upgrade-new-sl.md'; -GraphQL is an open-source query language for APIs (Application Programming Interfaces). It provides a more efficient and flexible alternative to traditional RESTful APIs. +[GraphQL](https://graphql.org/) is an open-source query language for APIs. It offers a more efficient and flexible approach compared to traditional RESTful APIs. -With GraphQL, clients can request specific data requirements using a single query. GraphQL allows clients to retrieve all the needed data in a single request. This reduces the number of round trips to the server, minimizing network overhead and improving performance. +With GraphQL, users can request specific data using a single query, reducing the need for many server round trips. This improves performance and minimizes network overhead. -Overall, GraphQL offers benefits such as being self-documenting, a strong typing system, versioning and evolution support, enabling rapid development, and a robust ecosystem. These advantages make GraphQL a powerful choice for building APIs that prioritize flexibility, performance, and developer productivity. +GraphQL has several advantages, such as self-documenting, having a strong typing system, supporting versioning and evolution, enabling rapid development, and having a robust ecosystem. These features make GraphQL a powerful choice for APIs that prioritize flexibility, performance, and developer productivity. +## dbt Semantic Layer GraphQL API -### dbt Semantic Layer GraphQL API +The dbt Semantic Layer GraphQL API offers capabilities like the JDBC API. It allows you to explore and execute commands conveniently through its self-documenting nature using the schema explorer (need link from roxi). -The dbt Semantic Layer GraphQL API has the following capabilities and has similarities to the calls available in our JDBC API. +### Metric metadata calls -One benefit of GraphQL is its self documenting nature, so you can explore using our schema explorer(todolink). To give you an idea of the types of commands you can execute, we provide some available calls below. +Use the following example calls to provide you with an idea of the types of commands you can use: +**Fetch available metrics** -**Metric Metadata Calls** - -Fetch available metrics ```graphql metrics(environmentId: Int!): [Metric!]! ``` -Fetch available dimensions for metrics +**Fetch available dimensions for metrics** ```graphql dimensions( @@ -44,7 +43,7 @@ metrics: [String!]! ): [Dimension!]! ``` -Fetch available time granularities given metrics +**Fetch available time granularities given metrics** ```graphql queryableGranularities( @@ -53,7 +52,7 @@ metrics: [String!]! ): [TimeGranularity!]! ``` -Fetch available metrics given a set of a dimensions +**Fetch available metrics given a set of a dimensions** ```graphql metricsForDimensions( @@ -62,7 +61,7 @@ dimensions: [String!]! ): [Metric!]! ``` -Fetch dimension values for metrics and a given dimension +**Fetch dimension values for metrics and a given dimension** ```graphql dimensionValues( @@ -71,7 +70,7 @@ metrics: [String!]! dimension: String! ``` -**Metric Value Query Parameters** +### Metric value query parameters The mutation is `createQuery`. The parameters are as follows: From 76bf6575962d9e3547cd45e309f95cf6bb1e23a6 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 13:33:43 +0100 Subject: [PATCH 121/703] fix links --- website/docs/docs/dbt-cloud-apis/apis-overview.md | 2 +- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 +- website/docs/reference/artifacts/dbt-artifacts.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/apis-overview.md b/website/docs/docs/dbt-cloud-apis/apis-overview.md index 8323e3423da..b7d722747d8 100644 --- a/website/docs/docs/dbt-cloud-apis/apis-overview.md +++ b/website/docs/docs/dbt-cloud-apis/apis-overview.md @@ -12,7 +12,7 @@ dbt Cloud provides the following APIs: - The [dbt Cloud Administrative API](/docs/dbt-cloud-apis/admin-cloud-api) can be used to administrate a dbt Cloud account. - The [dbt Cloud Discovery API](/docs/dbt-cloud-apis/discovery-api) can be used to fetch metadata related to the state and health of your dbt project. -- The [dbt Semantic Layer API](/docs/use-dbt-semantic-layer/sl-api-overview) provides multiple API options which allow you to query your metrics defined in the dbt Semantic Layer. +- The [dbt Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) provides multiple API options which allow you to query your metrics defined in the dbt Semantic Layer. If you want to learn more about webhooks, refer to [Webhooks for your jobs](/docs/deploy/webhooks). diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index fd1fe614139..b7f42ba277e 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -881,6 +881,6 @@ QUESTIONS: ## Related docs -- [dbt Semantic Layer APIs](/docs/use-dbt-semantic-layer/sl-api-overview) +- [dbt Semantic Layer APIs](/docs/docs/dbt-cloud-apis/sl-api-overview) - [About dbt artifacts](/reference/artifacts/dbt-artifacts) diff --git a/website/docs/reference/artifacts/dbt-artifacts.md b/website/docs/reference/artifacts/dbt-artifacts.md index 84a7a40c986..9efd50f4665 100644 --- a/website/docs/reference/artifacts/dbt-artifacts.md +++ b/website/docs/reference/artifacts/dbt-artifacts.md @@ -22,7 +22,7 @@ dbt has produced artifacts since the release of dbt-docs in v0.11.0. Starting in ## When are artifacts produced? Most dbt commands (and corresponding RPC methods) produce artifacts: -- [semantic manifest](/docs/use-dbt-semantic-layer/sl-manifest): Lives in the `/target` directory of your dbt project and stores various artifacts (such as compiled models and tests) generated during the execution of your project. +- [semantic manifest](/docs/docs/dbt-cloud-apis/sl-manifest): Lives in the `/target` directory of your dbt project and stores various artifacts (such as compiled models and tests) generated during the execution of your project. - [manifest](/reference/artifacts/manifest-json): produced by commands that read and understand your project - [run results](/reference/artifacts/run-results-json): produced by commands that run, compile, or catalog nodes in your DAG - [catalog](catalog-json): produced by `docs generate` From b86e0ca9fb2a48f5bc3b6103a30e1767acb0710c Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 13:42:07 +0100 Subject: [PATCH 122/703] fix links --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 +- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- website/docs/reference/artifacts/dbt-artifacts.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index b7f42ba277e..a36e17d48fe 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -881,6 +881,6 @@ QUESTIONS: ## Related docs -- [dbt Semantic Layer APIs](/docs/docs/dbt-cloud-apis/sl-api-overview) +- [dbt Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) - [About dbt artifacts](/reference/artifacts/dbt-artifacts) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 32d94fc8561..7775ff86d97 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -100,6 +100,6 @@ Note - It is _not_ recommended that you use your dbt Cloud credentials due to e - [Build your metrics](/docs/build/build-metrics-intro) - [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) -- [Semantic Layer APIs](/docs/use-dbt-semantic-layer/sl-api-overview) +- [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) - [Migrate your legacy Semantic Layer](/guides/migration/sl-migration) - [Get started with the dbt Semantic Layer](/docs/use-dbt-semantic-layer/quickstart-sl) diff --git a/website/docs/reference/artifacts/dbt-artifacts.md b/website/docs/reference/artifacts/dbt-artifacts.md index 9efd50f4665..2a73f477747 100644 --- a/website/docs/reference/artifacts/dbt-artifacts.md +++ b/website/docs/reference/artifacts/dbt-artifacts.md @@ -22,7 +22,7 @@ dbt has produced artifacts since the release of dbt-docs in v0.11.0. Starting in ## When are artifacts produced? Most dbt commands (and corresponding RPC methods) produce artifacts: -- [semantic manifest](/docs/docs/dbt-cloud-apis/sl-manifest): Lives in the `/target` directory of your dbt project and stores various artifacts (such as compiled models and tests) generated during the execution of your project. +- [semantic manifest](/docs/dbt-cloud-apis/sl-manifest): Lives in the `/target` directory of your dbt project and stores various artifacts (such as compiled models and tests) generated during the execution of your project. - [manifest](/reference/artifacts/manifest-json): produced by commands that read and understand your project - [run results](/reference/artifacts/run-results-json): produced by commands that run, compile, or catalog nodes in your DAG - [catalog](catalog-json): produced by `docs generate` From 0e333190c2eea172baa6cf574549b7f5e5115f72 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:00:05 +0100 Subject: [PATCH 123/703] fix image --- .../dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 16330dfbe40..0b08fea0a96 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -9,7 +9,7 @@ sidebar_position: 9 We are thrilled to announce the re-release of the dbt Semantic Layer, now available in [public beta](#public-beta). It revolutionizes data analysis by introducing new semantic components that lay the foundation for effective organization and interaction with data. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. - + ## Why the dbt Semantic Layer? From b714240aca09dff7affb3761d4da0c27d2e2407e Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:10:16 +0100 Subject: [PATCH 124/703] fix image --- .../dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 0b08fea0a96..f540436932c 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -9,7 +9,7 @@ sidebar_position: 9 We are thrilled to announce the re-release of the dbt Semantic Layer, now available in [public beta](#public-beta). It revolutionizes data analysis by introducing new semantic components that lay the foundation for effective organization and interaction with data. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. - + ## Why the dbt Semantic Layer? From 12db0981aebd2990c2edd83684574d55863eb4e7 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:12:10 +0100 Subject: [PATCH 125/703] clarify --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 3ecf62c278e..b5a1ae3265c 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -12,7 +12,7 @@ Use MetricFlow in dbt to centrally define your metrics. MetricFlow is a key comp Use familiar constructs like semantic models and metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. :::info -MetricFlow is currently available on dbt v1.6 beta for dbt Cloud users. MetricFlow, is a new way to define metrics in dbt and replaces the dbt_metrics package. +MetricFlow is currently available on dbt v1.6 or higher. MetricFlow, is a new way to define metrics in dbt and replaces the dbt_metrics package. To fully experience the dbt Semantic Layer, including the ability to query dbt metrics via external integrations, you'll need a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). ::: From 97f4f639fceba34d356ae500d929a66394530f2d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 17 Jul 2023 14:19:52 +0100 Subject: [PATCH 126/703] Update website/docs/docs/deploy/job-scheduler.md --- website/docs/docs/deploy/job-scheduler.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-scheduler.md b/website/docs/docs/deploy/job-scheduler.md index eae556309ba..03eeb6fb377 100644 --- a/website/docs/docs/deploy/job-scheduler.md +++ b/website/docs/docs/deploy/job-scheduler.md @@ -31,7 +31,7 @@ Familiarize yourself with these useful terms to help you understand how the job | Over-scheduled job | A situation when a cron-scheduled job's run duration becomes longer than the frequency of the job’s schedule, resulting in a job queue that will grow faster than the scheduler can process the job’s runs. | | Prep time | The time dbt Cloud takes to create a short-lived environment to execute the job commands in the user's cloud data platform. Prep time varies most significantly at the top of the hour when the dbt Cloud Scheduler experiences a lot of run traffic. | | Run | A single, unique execution of a dbt job. | -| Run slot | Run slots control the number of jobs that can run concurrently. Developer and Team plan accounts have a fixed number of run slots, and Enterprise users have [unlimited run slots](/docs/dbt-versions/release-notes/July-2023/faster-run#unlimited-job-concurrency-for-enterprise-accounts). Each running job occupies a run slot for the duration of the run. | +| Run slot | Run slots control the number of jobs that can run concurrently. Developer and Team plan accounts have a fixed number of run slots, and Enterprise users have [unlimited run slots](/docs/dbt-versions/release-notes/July-2023/faster-run#unlimited-job-concurrency-for-enterprise-accounts). Each running job occupies a run slot for the duration of the run. If you need more jobs to execute in parallel, consider the [Enterprise plan](https://www.getdbt.com/pricing/) | | Threads | When dbt builds a project's DAG, it tries to parallelize the execution by using threads. The [thread](/docs/running-a-dbt-project/using-threads) count is the maximum number of paths through the DAG that dbt can work on simultaneously. The default thread count in a job is 4. | | Wait time | Amount of time that dbt Cloud waits before running a job, either because there are no available slots or because a previous run of the same job is still in progress. | From 5a0a26438a9871b25d9ecbdd4724dac4102a3729 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:27:54 +0100 Subject: [PATCH 127/703] update rn --- .../release-notes/06-July-2023/sl-revamp-beta.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index f540436932c..0aee834be0a 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -7,7 +7,14 @@ date: 2023-07-31 sidebar_position: 9 --- -We are thrilled to announce the re-release of the dbt Semantic Layer, now available in [public beta](#public-beta). It revolutionizes data analysis by introducing new semantic components that lay the foundation for effective organization and interaction with data. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. +We are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), now available in [public beta](#public-beta). It revolutionizes data analysis by introducing: + +- [MetricFlow](/docs/build/about-metricflow) — a new way to define metrics in dbt and one of the key components of the dbt Semantic Layer +- New semantic components like semantic models and metrics, which help lay the foundation for effective organization and interaction with data, +- Improved governance, enhanced efficiency, and data accessibility +- New [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to query metrics and build integrations + +With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. From 04d40a2978d99ea971125e60ebe84772019556ca Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:28:13 +0100 Subject: [PATCH 128/703] nit --- .../dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 0aee834be0a..40bfebe9297 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -52,7 +52,7 @@ The dbt Semantic Layer is currently available as a public beta, which means: To experience the universal dbt Semantic Layer and its enhanced beta capabilities, check out: -- [Revamped dbt Semantic Layer documents](/docs/use-dbt-semantic-layer/dbt-sl) +- [New dbt Semantic Layer documents](/docs/use-dbt-semantic-layer/dbt-sl) - [dbt Semantic Layer get started guide](/docs/use-dbt-semantic-layer/quickstart-sl) - [Build your metrics with MetricFlow](/docs/build/build-metrics-intro) - BLOG announcement link. From 922d8a01762b1715fa79c0809f9aec9b16fef7fb Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:54:19 +0100 Subject: [PATCH 129/703] fix fn --- .../06-July-2023/sl-revamp-beta.md | 37 ++++++++++--------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 40bfebe9297..b1c594db0a7 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -9,16 +9,31 @@ sidebar_position: 9 We are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), now available in [public beta](#public-beta). It revolutionizes data analysis by introducing: -- [MetricFlow](/docs/build/about-metricflow) — a new way to define metrics in dbt and one of the key components of the dbt Semantic Layer +- [MetricFlow](/docs/build/about-metricflow), a new way to define metrics in dbt and one of the key components of the dbt Semantic Layer, - New semantic components like semantic models and metrics, which help lay the foundation for effective organization and interaction with data, -- Improved governance, enhanced efficiency, and data accessibility -- New [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to query metrics and build integrations +- Improved governance, enhanced efficiency, and data accessibility, +- New [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to query metrics and build integrations. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. - + -## Why the dbt Semantic Layer? + +## Public beta + +The dbt Semantic Layer is currently available as a public beta, which means: + +- **Who** — To experience the new dbt Semantic Layer, you must be on a dbt Cloud [Team and Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plan, [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America and on dbt v1.6 and higher. + * Developer plans or dbt Core users can use MetricFlow to define and test metrics using the CLI only. + +- **What** — Public beta provides early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability. We may also introduce new functionality that isn't backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). DO WE MENTION THAT WE'RE NOT CHARGING? + +- **When** — Public beta will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will make pricing information available. DO WE MENTION THAT WE'LL BEGIN CHARGING? + +- **Where** — Experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. + + +## Enhanced dbt Semantic Layer What sets the dbt Semantic Layer apart is its ability to centralize logic and data applications, streamlining processes and enabling efficient management and utilization of data models. It provides a consistent view of data, incorporating context and historical information, simplifying complex tasks, and reducing costs. @@ -36,18 +51,6 @@ We are excited to present several important capabilities with the enhanced dbt S By bringing these enhancements to the dbt Semantic Layer, we enable organizations of all sizes and industries to leverage the power of semantics in their data workflows. -## Public beta - -THINKING OF TURNING INTO A TABLE ONCE I HAVE THE ACCURATE INFO AND MOVING ABOVE AFTER INTO (BEFORE 'WHY SL') - -The dbt Semantic Layer is currently available as a public beta, which means: - -- **Who?** The dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise) during public beta. - * Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse dbt metrics in external tools, which requires access to the Semantic Layer and Discovery APIs. -- **What?** Public Previews provide early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability. We may also introduce new functionality that isn't backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). -- **When?** Public Preview will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will only be available to dbt Cloud **Team** and **Enterprise** plans. -- **Where?** Public Preview is enabled at the account level so you don’t need to worry about enabling it per user - ## Next steps To experience the universal dbt Semantic Layer and its enhanced beta capabilities, check out: From f543a77d5422d9332df976921bb50bec075a578f Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:55:07 +0100 Subject: [PATCH 130/703] fix positioning --- .../06-July-2023/sl-revamp-beta.md | 28 +++++++++---------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index b1c594db0a7..c9b89b1ea4b 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -18,21 +18,6 @@ With semantics at its core, the dbt Semantic Layer marks a crucial milestone tow - -## Public beta - -The dbt Semantic Layer is currently available as a public beta, which means: - -- **Who** — To experience the new dbt Semantic Layer, you must be on a dbt Cloud [Team and Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plan, [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America and on dbt v1.6 and higher. - * Developer plans or dbt Core users can use MetricFlow to define and test metrics using the CLI only. - -- **What** — Public beta provides early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability. We may also introduce new functionality that isn't backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). DO WE MENTION THAT WE'RE NOT CHARGING? - -- **When** — Public beta will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will make pricing information available. DO WE MENTION THAT WE'LL BEGIN CHARGING? - -- **Where** — Experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. - - ## Enhanced dbt Semantic Layer What sets the dbt Semantic Layer apart is its ability to centralize logic and data applications, streamlining processes and enabling efficient management and utilization of data models. It provides a consistent view of data, incorporating context and historical information, simplifying complex tasks, and reducing costs. @@ -51,6 +36,19 @@ We are excited to present several important capabilities with the enhanced dbt S By bringing these enhancements to the dbt Semantic Layer, we enable organizations of all sizes and industries to leverage the power of semantics in their data workflows. +## Public beta + +The dbt Semantic Layer is currently available as a public beta, which means: + +- **Who** — To experience the new dbt Semantic Layer, you must be on a dbt Cloud [Team and Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plan, [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America and on dbt v1.6 and higher. + * Developer plans or dbt Core users can use MetricFlow to define and test metrics using the CLI only. + +- **What** — Public beta provides early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability. We may also introduce new functionality that isn't backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). DO WE MENTION THAT WE'RE NOT CHARGING? + +- **When** — Public beta will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will make pricing information available. DO WE MENTION THAT WE'LL BEGIN CHARGING? + +- **Where** — Experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. + ## Next steps To experience the universal dbt Semantic Layer and its enhanced beta capabilities, check out: From 82eed1bf3a64f2f9e38ed4ecc47b6b344bc9fd72 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 17 Jul 2023 14:59:30 +0100 Subject: [PATCH 131/703] nit --- .../dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index c9b89b1ea4b..78b24a89709 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -47,7 +47,7 @@ The dbt Semantic Layer is currently available as a public beta, which means: - **When** — Public beta will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will make pricing information available. DO WE MENTION THAT WE'LL BEGIN CHARGING? -- **Where** — Experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. +- **Where** — You can experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. ## Next steps From 03a34c172c0d08b74d7e7c0f1da2bc2743fca404 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Mon, 17 Jul 2023 09:24:22 -0600 Subject: [PATCH 132/703] adding subcommand to invocation_args_dict (#3756) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What are you changing in this pull request and why? Resolves #3727 Adds versioning and subcommand to invocation_args_dict section - uses the `` tag for `models/my_model.sql` example - demarcates `invocation_args_dict` vs. dbt_metadata_envs via SQL comments in both pre-1.6 and post 1.6 - gives example command to run for pre 1.6 ## 🎩 ### Pre 1.6 https://deploy-preview-3756--docs-getdbt-com.netlify.app/reference/dbt-jinja-functions/flags?version=1.5 image ### Post 1.6 https://deploy-preview-3756--docs-getdbt-com.netlify.app/reference/dbt-jinja-functions/flags?version=1.6 image ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. --------- Co-authored-by: mirnawong1 Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> --- .../reference/dbt-jinja-functions/flags.md | 53 ++++++++++++++++++- 1 file changed, 51 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/dbt-jinja-functions/flags.md b/website/docs/reference/dbt-jinja-functions/flags.md index a6931628f3c..6fe985cc93e 100644 --- a/website/docs/reference/dbt-jinja-functions/flags.md +++ b/website/docs/reference/dbt-jinja-functions/flags.md @@ -29,24 +29,73 @@ Recommended use cases include: **Note:** It is _not_ recommended to use flags as an input to parse-time configurations, properties, or dependencies (`ref` + `source`). Flags are likely to change in every invocation of dbt, and their parsed values will become stale (and yield incorrect results) in subsequent invocations that have partial parsing enabled. For more details, see [the docs on parsing](/reference/parsing). + ### invocation_args_dict For the full set of information passed from the CLI—subcommand, flags, arguments—you can use `invocation_args_dict`. This is equivalent to the `args` dictionary in [`run_results.json`](/reference/artifacts/run-results-json). + + ```sql --- models/my_model.sql +-- invocation_args_dict: -- {{ invocation_args_dict }} + +-- dbt_metadata_envs: -- {{ dbt_metadata_envs }} select 1 as id ``` -Compiles to: + + + + + +```shell +$ DBT_ENV_CUSTOM_ENV_MYVAR=myvalue dbt compile -s my_model +``` + + + ```sql +-- invocation_args_dict: -- {'write_json': True, 'use_colors': True, 'printer_width': 80, 'version_check': True, 'partial_parse': True, 'static_parser': True, 'profiles_dir': '/Users/.../.dbt', 'send_anonymous_usage_stats': False, 'event_buffer_size': 100000, 'quiet': False, 'no_print': False, 'parse_only': False, 'which': 'compile', 'rpc_method': 'compile', 'indirect_selection': 'eager'} +-- dbt_metadata_envs: +-- {'MYVAR': 'myvalue'} + +select 1 as id +``` + + + + + + + + +The `invocation_command` key within `invocation_args_dict` includes the entire subcommand when it compiles: + +```shell +$ DBT_ENV_CUSTOM_ENV_MYVAR=myvalue dbt compile -s my_model + +12:10:22 Running with dbt=1.6.0-b8 +12:10:22 Registered adapter: postgres=1.6.0-b8 +12:10:22 Found 1 seed, 1 model, 349 macros +12:10:22 +12:10:22 Concurrency: 5 threads (target='dev') +12:10:22 +12:10:22 Compiled node 'my_model' is: +-- invocation_args_dict: +-- {'log_format_file': 'debug', 'log_level': 'info', 'exclude': (), 'send_anonymous_usage_stats': True, 'which': 'compile', 'defer': False, 'output': 'text', 'log_format': 'default', 'macro_debugging': False, 'populate_cache': True, 'static_parser': True, 'vars': {}, 'warn_error_options': WarnErrorOptions(include=[], exclude=[]), 'quiet': False, 'select': ('my_model',), 'indirect_selection': 'eager', 'strict_mode': False, 'version_check': False, 'enable_legacy_logger': False, 'log_path': '/Users/jerco/dev/scratch/testy/logs', 'profiles_dir': '/Users/jerco/.dbt', 'invocation_command': 'dbt compile -s my_model', 'log_level_file': 'debug', 'project_dir': '/Users/jerco/dev/scratch/testy', 'favor_state': False, 'use_colors_file': True, 'write_json': True, 'partial_parse': True, 'printer_width': 80, 'print': True, 'cache_selected_only': False, 'use_colors': True, 'introspect': True} + +-- dbt_metadata_envs: +-- {'MYVAR': 'myvalue'} + select 1 as id ``` + + From ddbc2b75b4dfa06f00e5bd1ccc6c3b1f6e20650e Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Mon, 17 Jul 2023 11:43:45 -0400 Subject: [PATCH 133/703] adjust left padding --- website/src/components/communitySpotlightCard/styles.module.css | 1 + 1 file changed, 1 insertion(+) diff --git a/website/src/components/communitySpotlightCard/styles.module.css b/website/src/components/communitySpotlightCard/styles.module.css index e28c3fe7b41..29de378ff94 100644 --- a/website/src/components/communitySpotlightCard/styles.module.css +++ b/website/src/components/communitySpotlightCard/styles.module.css @@ -79,6 +79,7 @@ div.spotlightMemberCard { } div.spotlightMemberCard { margin-bottom: 0; + padding-left: 0 !important; } .spotlightMemberCard .spotlightMemberImgContainer { flex: 0 0 346px; From d9bcdb7fbf68f89447e7fa05b736aec186639d26 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Mon, 17 Jul 2023 09:48:29 -0600 Subject: [PATCH 134/703] Incorporate feedback on phrasing for blue/green continuous deployment with `dbt clone` --- website/docs/reference/commands/clone.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/clone.md b/website/docs/reference/commands/clone.md index 6a304d9050a..6225a087252 100644 --- a/website/docs/reference/commands/clone.md +++ b/website/docs/reference/commands/clone.md @@ -11,7 +11,7 @@ The `dbt clone` command clones selected nodes from the [specified state](/refere - You may want to specify a higher number of [threads](/docs/running-a-dbt-project/using-threads) to decrease execution time since individual clone statements are independent of one another. The `clone` command is useful for: -- blue/green deployment +- blue/green continuous deployment - cloning current production state into development schema(s) - handling incremental models in Slim CI dbt Cloud jobs From f2ab8c19ef3c8e1c19d4b4a5f591bf7ff770a09b Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Mon, 17 Jul 2023 11:52:20 -0400 Subject: [PATCH 135/703] small content edits --- website/docs/community/spotlight/alan-cruickshank.md | 2 +- website/docs/community/spotlight/jing-yu-lim.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/website/docs/community/spotlight/alan-cruickshank.md b/website/docs/community/spotlight/alan-cruickshank.md index 763b0f917d0..52bfb821402 100644 --- a/website/docs/community/spotlight/alan-cruickshank.md +++ b/website/docs/community/spotlight/alan-cruickshank.md @@ -15,7 +15,7 @@ socialLinks: - name: LinkedIn link: https://www.linkedin.com/in/amcruickshank/ - name: SQLFluff - link: sqlfluff.com + link: https://sqlfluff.com dateCreated: 2023-06-30 hide_table_of_contents: true --- diff --git a/website/docs/community/spotlight/jing-yu-lim.md b/website/docs/community/spotlight/jing-yu-lim.md index f492cd351c0..862e2a80de9 100644 --- a/website/docs/community/spotlight/jing-yu-lim.md +++ b/website/docs/community/spotlight/jing-yu-lim.md @@ -26,13 +26,13 @@ The dbt community also helped me expand my professional network, where I met so ## What dbt community leader do you identify with? How are you looking to grow your leadership in the dbt community? -Claire Carroll and Mila Page! My very first touchpoint with dbt was their articles in [The Analytics Engineering Guide](https://www.getdbt.com/analytics-engineering/). I remember relating to it so much that I was saying ""YES"" to every other line I read, and sending text snippets to my friends. +Claire Carroll and Mila Page! My very first touchpoint with dbt was their articles in [The Analytics Engineering Guide](https://www.getdbt.com/analytics-engineering/). I remember relating to it so much that I was saying "YES" to every other line I read, and sending text snippets to my friends. -To me, Analytics Engineering could help overcome certain challenges I face as an analyst, and make the job feels less like a ""hamster wheel."" As the concept of analytics engineering is fairly new in Singapore, I feel the need to spread the word and bring about a mindset shift among not just data teams, but anyone who needs to work with a data team. +To me, Analytics Engineering could help overcome certain challenges I face as an analyst, and make the job feels less like a "hamster wheel." As the concept of analytics engineering is fairly new in Singapore, I feel the need to spread the word and bring about a mindset shift among not just data teams, but anyone who needs to work with a data team. ## What have you learned from community members? What do you hope others can learn from you? -One of my favourite presentations from the Singapore dbt Meetup was [""How would the ideal Semantic Layer look like?""](https://docs.google.com/presentation/d/1t1ts04b7qA-BVlV3qbNZ4fI-MSZn0iL6_FhsaWhJk_0/edit?usp=sharing ) by fellow community member Thanh Dinh from Holistics. It taught me a new perspective on metrics: they could be like dbt models, where dependencies can be set up between metric models. +One of my favourite presentations from the Singapore dbt Meetup was ["How would the ideal Semantic Layer look like?"](https://docs.google.com/presentation/d/1t1ts04b7qA-BVlV3qbNZ4fI-MSZn0iL6_FhsaWhJk_0/edit?usp=sharing ) by fellow community member Thanh Dinh from Holistics. It taught me a new perspective on metrics: they could be like dbt models, where dependencies can be set up between metric models. I definitely have so much more to learn as an individual, but I hope to share some of my tips and lessons in terms of data modelling with others. From a96502e6fe5a058d99e936cd9413a46ad4353c7d Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Mon, 17 Jul 2023 09:59:15 -0600 Subject: [PATCH 136/703] Incorporate feedback for delineating source and target environments --- website/docs/reference/commands/clone.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/commands/clone.md b/website/docs/reference/commands/clone.md index 6225a087252..150d3b12e62 100644 --- a/website/docs/reference/commands/clone.md +++ b/website/docs/reference/commands/clone.md @@ -5,8 +5,8 @@ id: "clone" --- The `dbt clone` command clones selected nodes from the [specified state](/reference/node-selection/syntax#establishing-state) to the target schema(s). This command makes use of the `clone` materialization: -- If your data platform supports zero-copy cloning of tables, and this model exists as a table in the other environment, dbt will create it in your environment as a clone -- Otherwise, dbt will create a simple pointer view (`select * from` the other object) +- If your data platform supports zero-copy cloning of tables, and this model exists as a table in the source environment, dbt will create it in your target environment as a clone +- Otherwise, dbt will create a simple pointer view (`select * from` the source object) - By default, `dbt clone` will not recreate pre-existing relations in the current target. To override this, use the `--full-refresh` flag. - You may want to specify a higher number of [threads](/docs/running-a-dbt-project/using-threads) to decrease execution time since individual clone statements are independent of one another. From a4fe0d6fef281fef5bbfc293fe5fe0fcb06ba57a Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Mon, 17 Jul 2023 16:31:31 -0400 Subject: [PATCH 137/703] remove important --- .../src/components/communitySpotlightCard/styles.module.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/src/components/communitySpotlightCard/styles.module.css b/website/src/components/communitySpotlightCard/styles.module.css index 29de378ff94..253a561ebea 100644 --- a/website/src/components/communitySpotlightCard/styles.module.css +++ b/website/src/components/communitySpotlightCard/styles.module.css @@ -77,9 +77,9 @@ div.spotlightMemberCard { .spotlightMemberCard { padding: 3rem 0; } - div.spotlightMemberCard { + :global(#spotlight-members-section) div.spotlightMemberCard { margin-bottom: 0; - padding-left: 0 !important; + padding-left: 0; } .spotlightMemberCard .spotlightMemberImgContainer { flex: 0 0 346px; From 89374796a9ab04ee8c2c7e5748857d81f863f1ae Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 17 Jul 2023 17:08:40 -0400 Subject: [PATCH 138/703] Changed tables based on feedback --- .../manage-access/enterprise-permissions.md | 1 + .../snippets/enterprise-permissions-table.md | 99 +++++++++++++++---- 2 files changed, 80 insertions(+), 20 deletions(-) diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index 8f0c8c3b2aa..2bd9fe1ae1b 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -2,6 +2,7 @@ title: "Enterprise permissions" id: "enterprise-permissions" description: "Permission sets for Enterprise plans." +hide_table_of_contents: true #For the sake of the tables on this page --- :::info Enterprise Feature diff --git a/website/snippets/enterprise-permissions-table.md b/website/snippets/enterprise-permissions-table.md index 6c021707a89..eda75a6e396 100644 --- a/website/snippets/enterprise-permissions-table.md +++ b/website/snippets/enterprise-permissions-table.md @@ -1,26 +1,85 @@ Key: -* (C)reate — Create new feature -* (M)odify — Change existing fields. -* (D)elete — Remove feature fields entirely -* (V)iew — Read-only access +* (W)rite — Create new or modify existing. Includes `send`, `create`, `delete`, `allocate`, `modify`, and `read`. +* (M)odify — Change existing fields but can not create new. Includes `delete` and `read`. +* (R)ead — Can view but canm not create or change any fields. * ❌ = No access to the feature * ✅ = Can access feature that does not use C/M/D/V permissions -_Scroll to view all fields_ - -| Role | Environments | Projects | Connections | Jobs | Repositories | Groups | Group memberships | Account settings | Webhooks | Account-level artifacts | Notifications | Use IDE | -|-----------------|:------------:|:--------:|:-----------:|:-----:|:------------:|:------:|:-----------------:|:----------------:|:--------:|:-----------------------:|:-------------:|:-------:| -| Account admin | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | ✅ | -| Account viewer | V | V | V | V | V | V | V | V | ❌ | V | V | ❌ | -| Admin | C/M/D | V | C/M/D | C/M/D | C/M/D | V | C/M/D | V | C/M/D | ❌ | V | ✅ | -| Analyst | V | ❌ | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | -| Database admin | V | V | C/M/D | V | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | -| Developer | ❌ | ❌ | ❌ | C/M/D | ❌ | ❌ | ❌ | ❌ | C/M/D | ❌ | ❌ | ✅ | -| Git admin | V | V | V | V | C/M/D | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | -| Job admin | C/M/V | ❌ | V | C/M/D | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | -| Job viewer | V | ❌ | ❌ | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | -| Project creator | C/M/D | C/M/D | C/M/D | C/M/D | C/M/D | V | V | V | ❌ | ❌ | V | ✅ | -| Stakeholder | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | -| Team admin | V | V | ❌ | V | V | V | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +## Account role permissions + +### Account permissions + +| | Account Admin | Billing admin | Project creator | Security admin | Viewer | +|-------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| +| Account settings | W | | R | R | R | +| Audit logs | R | | | R | | +| Auth provider | W | | | W | R | +| Billing | W | W | | | R | +| Invitations | W | | W | W | R | +| IP restrictions | W | | | W | R | +| Members | W | | W | W | R | +| Project (create) | W | | W | | | +| Public models | R | R | R | R | R | +| Service tokens | W | | | R | | +| Webhooks | W | | | | | + +### Project permissions + +| | Account Admin | Billing admin | Project creator | Security admin | Viewer | +|-------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| +| Connections | W | | W | | R | +| Credentials | W | | W | | R | +| Custom environment variables| W | | W | | R | +| dbt adapters | W | | W | | R | +| Develop (IDE) | W | | W | | | +| Environments | W | | W | | R | +| Groups | W | | R | W | R | +| Jobs | W | | W | | R | +| Licenses | W | | W | W | R | +| Metadata | R | | R | | R | +| Permissions | W | | W | W | R | +| Profile | W | | W | | R | +| Projects | W | | W | R | R | +| Repositories | W | | W | | R | +| Runs | W | | W | | R | +| Semantic Layer Config| W | | W | | R | + + +## Project role permissions + +### Account permissions + +| | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | +|--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| +| Account settings | R | | R | | R | | | | | | R | | +| Auth provider | | | | | | | | | | | | | +| Billing | | | | | | | | | | | | | +| Invitations | W | R | R | R | R | R | R | | | R | R | | +| Members | W | | R | R | R | | | | | R | R | | +| Project (create) | | | | | | | | | | | | | +| Public models | R | R | R | R | R | R | R | R | R | R | R | R | +| Service tokens | | | | | | | | | | | | | +| Webhooks | W | | | W | | | | | | | | W | + +### Project permissions + +| | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | +|--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| +| Connections | W | R | W | R | R | R | | | | R | R | | +| Credentials | W | W | W | W | R | W | | | | R | R | | +| Custom environment variables| W | W | W | W | W | W | R | | | R | W | | +| dbt adapters | W | W | W | W | R | W | | | | R | R | | +| Develop (IDE) | W | W | | W | | | | | | | | | +| Environments | W | R | R | R | R | W | R | | | R | R | | +| Groups | R | | R | R | R | | | | | R | R | | +| Jobs | W | R | R | W | R | W | R | | | R | R | | +| Licenses | W | R | R | R | R | R | R | | | | R | | +| Metadata | R | R | R | R | R | R | R | R | | R | R | | +| Permissions | W | | R | R | R | | | | | | W | | +| Profile | W | R | W | R | R | R | | | | R | R | | +| Projects | W | W | W | W | W | R | R | | | R | W | | +| Repositories | W | | R | R | W | | | | | R | R | | +| Runs | W | R | R | W | R | W | R | | | R | R | | +| Semantic Layer Config | W | R | W | R | R | R | | | W | R | R | | \ No newline at end of file From 074b39f9c25b2abe3460c90edc1f5516ca69514b Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 17 Jul 2023 17:17:03 -0400 Subject: [PATCH 139/703] Update enterprise-permissions.md --- .../docs/docs/cloud/manage-access/enterprise-permissions.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index de73ba02e9a..75759e0d25e 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -20,12 +20,6 @@ The following permission sets are available for assignment in dbt Cloud Enterpri can be granted to dbt Cloud groups which are then in turn granted to users. A dbt Cloud group can be associated with more than one permission sets. -:::info Role permisisons - -The following table lists the standard roles and permissions associated with them in dbt Cloud. Some roles, such as _Stakeholder_ have more nuanced access to features. View the individual role descriptions for more information beyond the table definitions. - -::: - ### Account Admin From e401b3dd8311ce1a2cdbf184597325fba2d2450d Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Mon, 17 Jul 2023 14:41:41 -0700 Subject: [PATCH 140/703] Update website/docs/docs/cloud/manage-access/enterprise-permissions.md --- website/docs/docs/cloud/manage-access/enterprise-permissions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index 75759e0d25e..7f33be50728 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -20,7 +20,7 @@ The following permission sets are available for assignment in dbt Cloud Enterpri can be granted to dbt Cloud groups which are then in turn granted to users. A dbt Cloud group can be associated with more than one permission sets. - + ### Account Admin From ba1cd1909a2dd2e4cb5d73e76930112657524d75 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 17 Jul 2023 16:12:47 -0700 Subject: [PATCH 141/703] Update sl-jdbc.md We will actually no longer need the encoded service token, so I remove mention of encoded --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index b70bfcee923..2cbf7d957de 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -39,7 +39,7 @@ jdbc:arrow-flight-sql://semantic-layer.cloud.getdbt.com:443?&environmentId=20233 | `jdbc:arrow-flight-sql://` | The protocol for the JDBC driver. | `jdbc:arrow-flight-sql://` | | `semantic-layer.cloud.getdbt.com` | The [access URL](/docs/cloud/about-cloud/regions-ip-addresses) for your account's dbt Cloud region. You must always add the `semantic-layer` prefix before the access URL. | For dbt Cloud deployment hosted in North America, use `semantic-layer.cloud.getdbt.com` | | `environmentId` | The unique identifier for the dbt production environment, you can retrieve this from the dbt Cloud URL
when you navigate to **Environments** under **Deploy**. | If your URL ends with `.../environments/222222`, your `environmentId` is `222222`

| -| `SERVICE_TOKEN` | dbt Cloud [service token](/docs/dbt-cloud-apis/service-tokens) with “Semantic Layer Only” permission. Create a new service token in your **Account Settings** page. Encode the value before inserting it into the string. | `token=SERVICE_TOKEN` | +| `SERVICE_TOKEN` | dbt Cloud [service token](/docs/dbt-cloud-apis/service-tokens) with “Semantic Layer Only” permission. Create a new service token in your **Account Settings** page. | `token=SERVICE_TOKEN` | *Note — If you're testing locally on a tool like DataGrip, you may also have to provide the following variable at the end or beginning of the JDBC URL `&disableCertificateVerification=true`. From 6857cbe90c1509b691ffd0dca59a10b78be76613 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 17 Jul 2023 16:15:48 -0700 Subject: [PATCH 142/703] Update sl-architecture.md Adding another component here to make it extra clear --- website/docs/docs/use-dbt-semantic-layer/sl-architecture.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index 1ebb406bc69..9ba636e089d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -7,13 +7,14 @@ sidebar_label: "Product architecture" -At a high level, the dbt Semantic Layer has two primary components -- defining your metrics in MetricFlow and querying them with Semantic Layer APIs. These are made possible by the following architechtural pieces: +At a high level, the dbt Semantic Layer enables you to define metrics and query them with various interfaces. This functionality is enabled with the following components: | Components | Information | Developer plans | Team plans | Enterprise plans | License | | --- | --- | :---: | :---: | :---: | --- | | **[MetricFlow](/docs/build/about-metricflow)** | Use MetricFlow in dbt to centrally define your metrics. MetricFlow is a key component of the dbt Semantic Layer and is responsible for SQL query construction and defining specifications for dbt semantic models and metrics. | ✅ | ✅ | ✅ | BSL package (code is source available) | | **MetricFlow Server**| A proprietary server that takes metric requests and generates and translates them to optimized SQL for the specific data platform| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| | **Semantic Layer Gateway** | A service that passes queries to MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

❌| ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | +| **Semantic Layer APIs** | The interfaces that allow users to submit metric queries -- for example: the MetricFlow CLI, JDBC API, and GraphQL. These APIs are also how first-class integrations to various tools are built.| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| From 1fa9bc1eab264c022978aa34ebff5b554796c55e Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 17 Jul 2023 16:22:00 -0700 Subject: [PATCH 143/703] Update sl-architecture.md A few more tweaks to this table. Making everything a little more crisp. --- .../docs/docs/use-dbt-semantic-layer/sl-architecture.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index 9ba636e089d..4c6c4b4804f 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -7,14 +7,14 @@ sidebar_label: "Product architecture" -At a high level, the dbt Semantic Layer enables you to define metrics and query them with various interfaces. This functionality is enabled with the following components: +At a high level, the dbt Semantic Layer enables you to define metrics and query them in various interfaces. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). This functionality is enabled with the following components: | Components | Information | Developer plans | Team plans | Enterprise plans | License | | --- | --- | :---: | :---: | :---: | --- | -| **[MetricFlow](/docs/build/about-metricflow)** | Use MetricFlow in dbt to centrally define your metrics. MetricFlow is a key component of the dbt Semantic Layer and is responsible for SQL query construction and defining specifications for dbt semantic models and metrics. | ✅ | ✅ | ✅ | BSL package (code is source available) | -| **MetricFlow Server**| A proprietary server that takes metric requests and generates and translates them to optimized SQL for the specific data platform| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| +| **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with the YAML specifications | ✅ | ✅ | ✅ | BSL package (code is source available) | +| **MetricFlow Server**| A proprietary server that takes metric requests and generates optimized SQL for the specific data platform| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| | **Semantic Layer Gateway** | A service that passes queries to MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

❌| ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | -| **Semantic Layer APIs** | The interfaces that allow users to submit metric queries -- for example: the MetricFlow CLI, JDBC API, and GraphQL. These APIs are also how first-class integrations to various tools are built.| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| +| **Semantic Layer APIs** | The interfaces that allow users to submit metric queries -- for example: the MetricFlow CLI, JDBC API, and GraphQL. These APIs are also the mechanisms in which tools can build first-class integrations to the dbt Semantic Layer| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| From e48fc56359457dc203ac6613081dd2a7e6a65845 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 09:23:38 +0100 Subject: [PATCH 144/703] Update website/package.json --- website/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/website/package.json b/website/package.json index 080ede9e3e6..afb7a9b1cd4 100644 --- a/website/package.json +++ b/website/package.json @@ -19,7 +19,6 @@ "@stoplight/elements": "^7.7.17", "@svgr/webpack": "^6.0.0", "axios": "^0.27.2", - "build": "^0.1.4", "classnames": "^2.3.1", "clsx": "^1.1.1", "color": "^3.1.2", From f0473fa8de5b8502c40fbd5334c8ba86a3f75810 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 09:54:25 +0100 Subject: [PATCH 145/703] Delete sl-partner-integration-guide.md --- .../sl-partner-integration-guide.md | 660 ------------------ 1 file changed, 660 deletions(-) delete mode 100644 website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md deleted file mode 100644 index 6f7ae1df2e7..00000000000 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ /dev/null @@ -1,660 +0,0 @@ ---- -title: "dbt Semantic Layer integration" -id: "sl-partner-integration-guide" -description: Learn about partner integration guidelines, roadmap, and connectivity. ---- - -# dbt Semantic Layer partner integration - -:::info Coming soon -The dbt Semantic Layer is undergoing some sophisticated changes, enabling more complex metric definitions and efficient querying. As part of these changes, the dbt_metrics package will be deprecated and replaced with MetricFlow. For more info, check out the [The dbt Semantic Layer: what's next?](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/) and [dbt_metrics deprecation](https://docs.getdbt.com/blog/deprecating-dbt-metrics) blog. -::: - -This guide is for dbt Semantic Layer integration partners and explains integration guidelines, and connectivity.
- -To become a formal partner, integrate with the API, or have questions/feedback — **[contact us](mailto:semantic-layer@dbtlabs.com)** for more info. - -The dbt Semantic Layer allows users to dynamically generate and query datasets in downstream tools based on their dbt governed assets, such as metrics, models, and entities. It helps organizations manage complexities such as data, tools, and teams to make more efficient and trustworthy decisions. - -The rapid growth of different tools in the modern data stack has helped data professionals address the diverse needs of different teams. The downside of this growth is the fragmentation of business logic across teams, tools, and workloads. - -To solve this, the dbt Semantic Layer provides a platform where users can confidently leverage their data from within their tools. dbt Cloud's change management capabilities ensure that any user modifications made to core business constructs, like metrics or entities, are distributed into all the tools connected to the data platform. - -The dbt Semantic Layer can be used for a variety of tools and applications of data. Here are some common use cases - -* Business intelligence (BI), reporting, and analytics, -* Data quality and monitoring, -* Governance and privacy, -* Data discovery and cataloging, -* Machine learning and data science. - -:::info Share your use case - -If you'd like to share other use cases for the dbt Semantic Layer, contact the [dbt Labs team](mailto:semantic-layer@dbtlabs.com). - -::: - - -## Product overview - -The dbt Semantic Layer product architecture includes four primary components: - -| Components | Information | Developer plans | Team plans | Enterprise plans | License | -| --- | --- | :---: | :---: | :---: | --- | -| **[dbt Project](/docs/build/metrics)** | Define models and metrics in dbt Core. | ✅ | ✅ | ✅ | Open source in dbt Core | -| **[dbt Server](https://github.com/dbt-labs/dbt-server)**| A persisted HTTP server that wraps dbt Core to handle RESTful API requests for dbt operations. | ✅ | ✅ | ✅ | BSL | -| **SQL Proxy** | Reverse-proxy that accepts dbt-SQL (SQL + Jinja-like query models and metrics, use macros), compiles the query into pure SQL, executes the query in the data platform, and returns the data. | ✅

_* Available during Public Preview only_ | ✅ | ✅ | Proprietary in dbt Cloud | -| **[Discovery API](/docs/dbt-cloud-apis/discovery-api)** | Accesses metric definitions primarily via integrations and is the source of truth for objects defined in dbt projects (like models, macros, sources, and metrics). The Discovery API is updated at the end of every dbt Cloud run. | ❌ | ✅ | ✅ | Proprietary in dbt Cloud | - -Review the following current architecture to understand how the components work together: - - - - -## Integration guidelines - -In collaboration with dbt Labs, partners and users can build dbt Semantic Layer integrations that can import model metadata and metric definitions, query metrics, use macros, and more. - -For more details, refer to the [Integration roadmap](#integration) and [Integration best practices](#best-practices) guidance. - -**Integration roadmap ** - -Integration partners generally build and approach their roadmap in the following stages: - -| Feature | Info | Availability | -|----------|-------|:------------:| -| **Model metadata** | Import/sync model metadata (descriptions, dimensions, test, freshness, and more) via the [dbt Cloud Discovery API](/docs/dbt-cloud-apis/discovery-api). | ✅ | -| **Metric definitions** | Import/sync metric definitions (metric calculation, dimensions, description, and more) via the [dbt Cloud Discovery API](/docs/dbt-cloud-apis/discovery-api). | ✅ | -| **dbt Semantic Layer as a data source** | Connect to the dbt Semantic Layer as a data source (for example, the Snowflake Proxy Server). Users can execute dbt-SQL to query metrics or models and use macros.* | ✅ | -| **Query metrics** | Query the imported metrics via a metric-centric UI (for example, a user can select a metric, time grain, and dimensions of interest). | ✅ | -| **Entity definitions** | Import/sync entity definitions (descriptions, dimensions, data types, relationships, metrics, and more) and query entities via the dbt Semantic Layer. | _*Coming soon | -| **dbt Semantic Layer Connector** | A dedicated connector with the ability to query any data platform supported in dbt Cloud. (Will replace (3).) | _*Coming soon | - -_*The coming soon features are expected to launch in 2023. - -**Integration best practices ** - -To build a successful and seamless dbt Semantic Layer integration, it should express the following: - -- **Consistent**: Have a consistent user experience (UX) incorporated into existing core user workflows. -- **Trustworthy**: Treat dbt assets (metrics, models, and entities) as first-class objects and indicate that their definitions and resulting datasets come from dbt Cloud. -- **Efficient**: Provide a clear advantage over the current approach to setting up metrics and analyses, and finding dimensions/datasets in the tool. -- **Accessible**: Include a self-serve component so a data consumer can ask questions via the user interface (UI), if applicable. - - -## Use the Discovery API - -This section will explain how to connect to and query the [Discovery API](/docs/dbt-cloud-apis/discovery-api) for model and metric definitions. - -To use the dbt Semantic Layer, you must meet the [prerequisites](/docs/use-dbt-semantic-layer/dbt-sl#prerequisites). - -
- Discovery API authorization -
-
Refer to our Authorization documentation to learn how to authorize requests to the Discovery API.



- - Metrics-specific queries work identical to existing Discovery API queries. This means existing integrations that query model metadata will work perfectly in the context of metrics. -
-
-
- -
- Query the Discovery API -
-
Test out the Discovery API by using the GraphQL sandbox and use this Python client as a starting point to develop. -
-
-
-

- - - -### Query models for a project - -You can query model definitions or details about a specific model for a project from a given job. - - - - - - - -This is an example of querying all models that utilize the schema`analytics` from a given job. - -``` -{ - models(jobId: 181329, schema: "analytics") { - name - status - compileCompletedAt - database - dbtVersion - runGeneratedAt - } -} -``` - - - - -``` -{ - "data": { - "models": [ - { - "name": "customers", - "status": "success", - "compileCompletedAt": "2022-12-15T06:37:24.186Z", - "database": "analytics", - "dbtVersion": "1.3.1", - "runGeneratedAt": "2022-12-15T06:37:25.187Z" - }, - { - "name": "stg_customers", - "status": "success", - "compileCompletedAt": "2022-12-15T06:37:22.509Z", - "database": "analytics", - "dbtVersion": "1.3.1", - "runGeneratedAt": "2022-12-15T06:37:25.187Z" - }, - { - "name": "stg_orders", - "status": "success", - "compileCompletedAt": "2022-12-15T06:37:22.509Z", - "database": "analytics", - "dbtVersion": "1.3.1", - "runGeneratedAt": "2022-12-15T06:37:25.187Z" - } - ] - } -} -``` - - - - -This is an example of querying details about a specific model, `model.jaffle_shop.customers`, from a given job. - -``` -{ - model(jobId: 181329, uniqueId: "model.jaffle_shop.customers") { - parentsModels { - runId - uniqueId - executionTime - } - } -} -{ - "data": { - "model": { - "parentsModels": [ - { - "runId": 105297555, - "uniqueId": "model.jaffle_shop.stg_customers", - "executionTime": 1.676571846008301 - }, - { - "runId": 105297555, - "uniqueId": "model.jaffle_shop.stg_orders", - "executionTime": 1.631831407546997 - } - ] - } - } -} -``` - - - - - - -### Query metrics for a project - -Query metrics definitions or details for a project from a given job and refer to the following resources: - -- [Metrics query](/docs/dbt-cloud-apis/discovery-schema-metrics) — Information on how to query the full list of metrics defined in a user’s project with the dbt Cloud Discovery API. -- [dbt Metrics docs](https://docs.getdbt.com/docs/build/metrics#available-properties) — Information on the available metric properties. -- [GraphQL sandbox](https://studio.apollographql.com/sandbox/explorer?endpoint=https%3A%2F%2Fmetadata.cloud.getdbt.com%2Fgraphql) — Access to test the dbt Cloud Discovery API testing environment. - - - - - - -This is an example listing metrics from a given job: - -``` -{ - metrics(jobId: 123) { - name - label - description - model - dependsOn - calculation_method - expression - timestamp - timeGrains - dimensions - window - filters - tags - meta - } -} -``` - - - - -The `metric` query supports all metric properties listed in **Listing metrics**. -The following abbreviated example is querying details about the metric `new_customers` from job `123`: - -This is an example of querying details about a specific metric `new_customers` from a given job `123`. - -``` -{ - metric(jobId: 123) { - label - calculation_method - timestamp - timeGrains - dimensions - } -} -``` - - - - - -``` -{ - "data": { - "metrics": [ - { - "uniqueId": "metric.claim_to_fame.total_claim_charges", - "name": "total_claim_charges", - "tags": [], - "label": "Total Claim Charges", - "calculation_method": "sum", - "expression": "total_charge_amount", - "timestamp": "created_at", - "timeGrains":[ - "day", - "week", - "month" - ], - "meta": {}, - "resourceType": "metric", - "model": { - "name": "fct_billed_patient_claims" - } - }, - { - "uniqueId": "metric.claim_to_fame.total_billed_diagnoses", - "name": "total_billed_diagnoses", - "tags": [], - "label": "Total Billed Diagnoses", - "calculation_method": "count_distinct", - "expression": "diagnosis_id", - "timestamp": "created_at", - "timeGrains":[ - "week", - "month", - "year" - ], - "meta": {}, - "resourceType": "metric", - "model": { - "name": "fct_billed_patient_claims" - }, - } - ] - } -} -``` - - - - - -``` -metrics: - - name: total_claim_charges - label: Total Claim Charges - model: ref('fct_billed_patient_claims') - calculation_method: sum - expression: total_charge_amount - timestamp: created_at - time_grains: [day, week, month, all_time] - - - - name: total_billed_diagnoses - label: Total Billed Diagnoses - model: ref('fct_billed_patient_claims') - calculation_method: count_distinct - expression: diagnosis_id - timestamp: created_at - time_grains: [day, week, month] -``` - - - - - - - - -## Query the dbt Semantic Layer - -This section explains how to connect to or query the dbt Semantic Layer Proxy Server to return model data, metric data, and so on. - -When you configure the dbt Semantic Layer, dbt Cloud provides a Proxy Server endpoint that users can connect to as though it's a Snowflake-hosted endpoint. Once the queries are submitted, dbt Cloud will: - -1. Compile dbt-sql queries into valid Snowflake SQL, -2. Execute the compiled SQL against the Snowflake data platform, -3. Return the results to the client. - -Replace the hostname in your existing data platform connection with the relevant dbt Cloud Proxy Server URL (for example, `abc123.proxy.cloud.getdbt.com`). All queries you submit through the endpoint will be compiled en route to the data platform.* - -*_Note: This approach will change with the new Semantic Layer connection in mid-2023, which will be able to query all data platforms supported in dbt Cloud through dedicated JDBC/ODBC drivers, and eventually an API._ - - - - - - - -Users can compile and execute metric queries using macros defined in the [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics). This package: - -- Generates the SQL required to accurately calculate the metric definition, -- Supplies helper macros for derived calculations (like month over month, year to date, and so on) time series operations - - -``` -select * -from {{ metrics.calculate( - metric_list=[metric('customers'), metric(‘revenue’)], - grain='week', - dimensions=['plan', 'country'], - secondary_calculations=[ - metrics.period_to_date(aggregate="sum", period="year"), - metrics.rolling(aggregate="average", interval=4, alias="avg_past_4wks") - ], - start_date='2020-01-01', - end_date="date_trunc('day', getdate())" -) }} -``` - - - - - -Model queries allow users to query models and use macros from their dbt project. - -``` -select cents_to_dollars('amount_cents') as amount_dollars -from {{ ref('orders') }} -``` - - - -### Entities - - -dbt Labs will introduce a new node type, **[entity](https://github.com/dbt-labs/dbt-core/issues/6379)**, when dbt Core version 1.5 launches. It introduces a new and efficient way to define metrics by reusing logic (for example, `time_grains`). - -Entities are semantic objects made up of curated dimensions from models with more metadata defined. Over time, users can standardize metric and entity definitions with packages to speed up development. - -For integrations, entities will provide information like: - -- a way to organize metrics based on the entity they reference, and -- a new consumable and dynamically generated dataset (versus finding a table in the data platform). - -This information will be available alongside the Discovery API, and entities can be directly queried through the dbt Semantic Layer. - - - -:::caution 🚧 - -Entities are a work in progress — expect continuous changes and improvements. To stay up-to-date, refer to the [entity discussions](https://github.com/dbt-labs/dbt-core/issues/6379) page. - -::: - - - - - - - -Define entities in your dbt project. - -``` -entities: ## The top-level path of the new node - - name: [Required] ## The name of the entity - model: [Required] ## The name of the model that the entity is dependent on - description: [Optional] ## The description of the entity - - dimensions: [Optional] ## The list of dimensions & properties associated with the entity. - - include: [Optional] * - - exclude: [Optional] - - name: [Required] ## The name of the dimension - column_name: [Optional] ## The name of the column in the model if not 1:1. Serves as mapping - data_type: [Optional] ## The data type of the dimension - description: [Optional] ## Description of the dimension - default_timestamp: [Optional] ## Setting datetime dimension as default for metrics - time_grains: [Optional] ## Acceptable time grains for the datetime dimension - primary_key: [Optional] ## Whether this dimension is part of the primary key -``` - - - - -Query entities via the Discovery API. - -``` -"entity.project_name.entity_name": { - "unique_id": "entity.project_name.entity_name", - "package_name": "project_name", - "original_file_path": "models/metric_definitions/ratio_metric.yml", - "name": "entity_name", - "model": "ref('model_name')", - "description": "some description", - "dimensions": { - "dimension_name": { - "name": "dimension_name", - "column_name": "column_name", - "default_timestamp": "true", - "time_grains": "[day, week, month, year]" - "primary_key": true, - "data_type": null, - "description": "TBD", - "meta": {}, - } - }, - "resource_type": "entity", - "meta": {}, - "tags": [], - "config": { - "enabled": true, - }, - "depends_on": { - "macros": [], - "nodes": [ - "model.project_name.model_name", - ] - }, - "docs": { - "show": true, - "node_color": null - }, - "refs": [ - [ - "model_name", - ] - ], - "created_at": 1669653016.522599 - }, - ``` - - - - -How to define new [metrics](/docs/build/metrics) in your dbt project. The metric definition and metadata response will change accordingly once entities are introduced, notably with metrics referencing entities instead of models and inheriting entity dimensions. - - ``` - metrics: - ## Always required - - name: [Required] ## The name of the metric - label: [Required] ## The human-readable name of the metric - calculation_method: [Required] ## The calculation/aggregation used for the metric - expression: [Required] ## The SQL expression being aggregated/calculated - entity: [Required] ## The entity being used as the source of the metric - - ## Always optional - description: [Optional] ## Any description about the metric - timestamp: [Optional] ## The name of the timestamp field to use - time_grains: [Optional] ## The list of time grains that are permitted - filters: [Optional] ## The filters of the metric - window: [Optional] ## The ability to make a metric cumulative over a time period - config: [Optional] ## Additional information for configuring the output - - ## Either or dimensions: - include: [Optional] ## The list of dimensions to be included. Either * or list - exclude: [Optional] ## The list of dimensions to be excluded from the inherited list - ``` - - - - - -``` -"metric.project_name.metric_name": { - "fqn": [ - "project_name", - "folder_name", - "metric_name" - ], - "unique_id": "metric.project_name.metric_name", - "package_name": "project_name", - "root_path": "file_path", - "path": "file_path", - "original_file_path": "file_path", - "name": "metric_name", - "description": "description", - "entity": "entity_name", - "label": "Human readable version", - "calculation_method": "the calc method", - "timestamp": "the timestamp field", - "time_grains": [ - "day", - "week" - ], - "expression": "a field name or sql expression", - "dimensions": [ - { - "entity_name": [ - "had_discount", - "order_country" - ] - } - ], - "window": null, - "resource_type": "metric", - "filters": [], - "meta": {}, - "tags": [], - "config": { - "enabled": true - }, - "unrendered_config": {}, - "sources": [], - "depends_on": { - "macros": [], - "nodes": [ - "entity.projet_name.entity_name", - ] - }, - "entities": [ - [ - "entity_name" - ] - ], - "metrics": ["used for derived metrics"], - "created_at": 1669653027.290001 - }, - ``` - - - - -Query an entity using dbt-SQL. Eventually, users will be able to query entities and dynamically generate datasets using a macro (like with metrics), without having to find specific tables or columns. - -``` -select * -from {{ entities.calculate( - entity_list=[...], [Required, one to start] - dimensions: [...], [Optional, default is all] - metrics: [...], [Optional, default is all at finest grain] - filters: ... - )}} - ``` - - - -### dbt Semantic Layer Connector - -In order to support more data platforms and enhance the user experience, users will be able to connect to a [dbt Cloud-supported data platform](/docs/cloud/connect-data-platform/about-connections) with the dbt Semantic Layer. - -Integration partners need to install the [Arrow FlightSQL](https://arrow.apache.org/docs/format/FlightSql.html) JDBC/ODBC driver, which will authenticate with dbt Cloud and the data platform that it queries. - - - - - -### dbt Semantic Layer API - -dbt Cloud will provide a web API that supports: - -- Compiling dbt-SQL queries to return their compiled SQL. -- Executing dbt-SQL queries and returning the queried results from the data platform. - -The API will be a viable integration point with the dbt Semantic Layer. It will be authorized by a [dbt Cloud service token](/docs/dbt-cloud-apis/service-tokens) and eventually support the invocation of dbt commands (e.g., `dbt run`, `dbt test`, etc.) in the future. - - -## Contact us - -### For dbt Semantic Layer support - -For partner and customer support, please email the [Support team](mailto:support@getdbt.com). Please ensure the message includes: - -- "Semantic Layer" -- The name of the partner software -- The dbt Cloud account ID of the customer, if you are a partner making the inquiry - -### For product and partnerships - -If you'd like to become a formal partner, have product feedback/questions, or are interested in integrating, email the [Product and Partnership team](mailto:semantic-layer@dbtlabs.com). - - - -## Related docs - -- [dbt Semantic Layer docs](https://docs.getdbt.com/docs/use-dbt-semantic-layer/dbt-sl) to learn about the product. -- [dbt Metrics docs](https://docs.getdbt.com/docs/building-a-dbt-project/metrics) for more information about its components. -- [dbt Semantic Layer intro blog](https://www.getdbt.com/blog/dbt-semantic-layer/) and [launch blog](https://www.getdbt.com/blog/frontiers-of-the-dbt-semantic-layer/) to learn more about the product vision and purpose. -- [dbt Semantic Layer integrations page](https://www.getdbt.com/product/semantic-layer-integrations) for information about the available partner integrations. - - From 08be4eb8ce0221604e1ab04919478ef82f9b3ce5 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 18 Jul 2023 11:37:08 +0100 Subject: [PATCH 146/703] callout updates --- .../docs/docs/build/build-metrics-intro.md | 5 +-- website/docs/docs/build/metrics.md | 36 ++++++++++++++++--- .../docs/dbt-cloud-apis/service-tokens.md | 8 +++-- .../docs/dbt-cloud-apis/sl-api-overview.md | 6 ++-- .../docs/docs/dbt-cloud-apis/sl-graphql.md | 6 ++-- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 6 ++-- .../docs/docs/dbt-cloud-apis/sl-manifest.md | 5 +-- .../avail-sl-integrations.md | 3 +- .../docs/use-dbt-semantic-layer/dbt-sl.md | 15 +++----- .../use-dbt-semantic-layer/quickstart-sl.md | 15 +++----- .../docs/use-dbt-semantic-layer/setup-sl.md | 1 + .../use-dbt-semantic-layer/sl-architecture.md | 14 ++++---- website/docs/guides/migration/sl-migration.md | 2 +- website/snippets/_legacy-sl-callout.md | 10 +++--- website/snippets/_new-sl-changes.md | 4 +-- website/snippets/_upgrade-new-sl.md | 8 ----- website/snippets/sl-prerequisites.md | 6 ++-- website/static/_redirects | 2 +- 18 files changed, 84 insertions(+), 68 deletions(-) delete mode 100644 website/snippets/_upgrade-new-sl.md diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index b5a1ae3265c..99dcd8c52c8 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -19,8 +19,9 @@ To fully experience the dbt Semantic Layer, including the ability to query dbt m Before you start, keep the following considerations in mind: - Define metrics in YAML and query them using the [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). -- You must be on dbt v1.6 beta or higher to use MetricFlow. [Upgrade your dbt Cloud version](/docs/dbt-versions/upgrade-core-in-cloud) to get started. -- MetricFlow currently only supports Snowflake, Postgres, BigQuery, Databricks, and Redshift +- You must be on dbt v1.6 or higher to use MetricFlow. [Upgrade your dbt Cloud version](/docs/dbt-versions/upgrade-core-in-cloud) to get started. +- MetricFlow currently supports Snowflake, Postgres, BigQuery, Databricks, and Redshift. +- Unlock insights and query your metrics using the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and its diverse range of [available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations).
diff --git a/website/docs/docs/build/metrics.md b/website/docs/docs/build/metrics.md index d605ef590b3..dad8c7d3918 100644 --- a/website/docs/docs/build/metrics.md +++ b/website/docs/docs/build/metrics.md @@ -4,11 +4,34 @@ id: "metrics" description: "When you define metrics in dbt projects, you encode crucial business logic in tested, version-controlled code. The dbt metrics layer helps you standardize metrics within your organization." keywords: - dbt metrics layer +tags: [Metrics] --- -import LegacyInfo from '/snippets/_legacy-sl-callout.md'; +:::caution Upgrade to access MetricFlow and the new dbt Semantic Layer - +The dbt_metrics package has been deprecated and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6). If you're using the dbt_metrics package or the legacy Semantic Layer (available on v1.5 or lower), we **highly** recommend [upgrading your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to access MetricFlow and the new [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl?version=1.6). + +To migrate to the new Semantic Layer, refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. + +::: + + + +The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing new APIs, and making it more efficient to define/query metrics. This revamp means the dbt_metrics package and the legacy Semantic Layer, available in dbt v1.5 or lower, are no longer supported and won't receive any code fixes. + +**What’s changed?**

+The dbt_metrics package has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new framework for defining metrics in dbt. This means dbt_metrics is no longer supported after dbt v1.5 and won't receive any code fixes. We will also remove the dbt_metrics spec and docs when it's fully deprecated. + +**Who does this affect?**

+Anyone who uses the dbt_metrics package or is integrated with the legacy Semantic Layer. The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses). You must be on dbt v1.6 or higher to access it. All users can define metrics using MetricFlow. Users on dbt Cloud Developer plans or dbt Core can only use it to define and test metrics locally, but can't dynamically query them with integrated tools. + +**What should you do?**

+If you've defined metrics using dbt_metrics or integrated with the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use MetricFlow or the new dbt Semantic Layer. To migrate to the new Semantic Layer, refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. + + +
+ + @@ -16,8 +39,6 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; * **v1.0.0**: Metrics are new and experimental - - A metric is an aggregation over a that supports zero or more dimensions. Some examples of metrics include: - active users @@ -46,7 +67,7 @@ You can define metrics in `.yml` files nested under a `metrics:` key. Metric nam - begin with a letter - contain no more than 250 characters -For a short human-friendly name with title casing, spaces, and special characters, use the `label` property. More examples and guidance for how to [define and structure metrics can be found here.](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics). +For a short human-friendly name with title casing, spaces, and special characters, use the `label` property. ### Example definition @@ -418,6 +439,11 @@ The following is the list of currently accepted metric configs: ## Querying Your Metric + +:::caution dbt_metrics is no longer supported +The dbt_metrics package has been deprecated and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new way framework for defining metrics in dbt. This means dbt_metrics is no longer supported after dbt v1.5 and won't receive any code fixes. +::: + You can dynamically query metrics directly in dbt and verify them before running a job in the deployment environment. To query your defined metric, you must have the [dbt_metrics package](https://github.com/dbt-labs/dbt_metrics) installed. Information on how to [install packages can be found here](https://docs.getdbt.com/docs/build/packages#how-do-i-add-a-package-to-my-project). Use the following [metrics package](https://hub.getdbt.com/dbt-labs/metrics/latest/) installation code in your packages.yml file and run `dbt deps` to install the metrics package: diff --git a/website/docs/docs/dbt-cloud-apis/service-tokens.md b/website/docs/docs/dbt-cloud-apis/service-tokens.md index 139eff8fd07..3848244e0bb 100644 --- a/website/docs/docs/dbt-cloud-apis/service-tokens.md +++ b/website/docs/docs/dbt-cloud-apis/service-tokens.md @@ -4,8 +4,6 @@ id: "service-tokens" description: "Service account tokens help you define permissions for securing access to your dbt Cloud account and its projects." --- -## About service tokens - Service account tokens enable you to securely authenticate with the dbt Cloud API by assigning each token a narrow set of permissions that more precisely manages access to the API. While similar to [User API tokens](user-tokens), service account tokens belong to an account rather than a user. You can use service account tokens for system-level integrations that do not run on behalf of any one user. Assign any permission sets available in dbt Cloud to your service account token, which can vary slightly depending on your plan: @@ -38,6 +36,9 @@ Account Admin service tokens have full `read + write` access to an account, so p **Metadata Only**
Metadata-only service tokens authorize requests to the Discovery API. +**Semantic Layer Only**
+Semantic Layer-only service tokens authorize requests to the Semantic Layer APIs. + **Job Admin**
Job admin service tokens can authorize requests for viewing, editing, and creating environments, triggering runs, and viewing historical runs. @@ -63,6 +64,9 @@ Billing Admin service tokens have certain account-level permissions. For more o **Metadata Only**
Metadata-only service tokens authorize requests to the Discovery API. +**Semantic Layer Only**
+Semantic Layer-only service tokens authorize requests to the Semantic Layer APIs. + **Job Admin**
Job Admin service tokens can authorize requests for viewing, editing, and creating environments, triggering runs, and viewing historical runs. For more on these permissions, see [Job Admin](/docs/cloud/manage-access/enterprise-permissions#job-admin). diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index 4f46f37173f..0490615e491 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -2,15 +2,15 @@ title: "Semantic Layer APIs" id: sl-api-overview description: "Integrate and query using the Semantic Layer API." -tags: ["semantic-layer, apis"] +tags: [Semantic Layer, APIs] hide_table_of_contents: true --- -import UpgradeSL from '/snippets/_upgrade-new-sl.md'; +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; - + diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index 24783f89065..286ed79621c 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -2,14 +2,14 @@ title: "GraphQL" id: sl-graphql description: "Integrate and use the GraphQL API to query your metrics." -tags: ["semantic-layer, apis"] +tags: [Semantic Layer, APIs] --- -import UpgradeSL from '/snippets/_upgrade-new-sl.md'; +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; - + diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 2cbf7d957de..d8595a24572 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -2,15 +2,15 @@ title: "JDBC" id: sl-jdbc description: "Integrate and use the JDBC API to query your metrics." -tags: ["semantic-layer, apis"] +tags: [Semantic Layer, APIs] --- -import UpgradeSL from '/snippets/_upgrade-new-sl.md'; +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; - + diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index a36e17d48fe..031e634668b 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -2,14 +2,15 @@ title: "Semantic manifest" id: sl-manifest description: "Learn about the semantic manifest.json file and how you can use artifacts to gain insights about your Semantic Layer." +tags: [Semantic Layer, APIs] sidebar_label: "Semantic manifest" --- -import UpgradeSL from '/snippets/_upgrade-new-sl.md'; +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; - + diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 86bf89c9cbe..08fc1cacd6f 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -2,6 +2,7 @@ title: "Available integrations" id: avail-sl-integrations description: "Discover the diverse range of partners that seamlessly integrate with the powerful dbt Semantic Layer, allowing you to query and unlock valuable insights from your data ecosystem." +tags: [Semantic Layer] sidebar_label: "Available integrations" --- @@ -45,7 +46,7 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi For information on the partner integrations, their documentation, and more — refer to the [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) page. - + ## Related docs diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index f294b93acc9..6a2d3ea392d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -3,6 +3,7 @@ title: "dbt Semantic Layer" id: dbt-sl description: "Introducing the improved dbt Semantic Layer, which allows data teams to centrally define and query metrics." sidebar_label: "About the dbt Semantic Layer" +tags: [Semantic Layer] hide_table_of_contents: true --- @@ -21,9 +22,7 @@ To read more about why you need a universal Semantic Layer, read this [blog post ## Explore the dbt Semantic Layer -The universal dbt Semantic Layer is available to all Team and Enterprise Plans during [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta). Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. - -Start exploring the dbt Semantic Layer by visiting the following pages: +During [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta), the dbt Semantic Layer is accessible to all dbt Cloud Team and Enterprise multi-tenant plans [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America. It's available on dbt v1.6 or newer. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools.
@@ -52,7 +51,7 @@ Start exploring the dbt Semantic Layer by visiting the following pages: icon="dbt-bit"/> @@ -117,16 +116,10 @@ A great example of this is **revenue** — it can be aggregated on multiple ### Design and define metrics -**Design metrics** -To read about best practices on structuring and organizing your metrics, review our [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog post first. - -**Define metrics** -You can define your metrics in `.yml` files nested under a metrics key and to design or define your own metrics in your dbt project, review the following documents:
+You can design and define your metrics in a `.yml` files nested under a metrics key in your dbt project, review the following documents:
- [dbt metrics](docs/build/metrics) for in-depth detail on attributes, filters, how to define and query your metrics, and [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics) - [dbt Semantic Layer quickstart](/docs/use-dbt-semantic-layer/quickstart-semantic-layer) to get started -- [Understanding the components of the dbt Semantic Layer](https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer) blog post to see further examples - ## Related questions diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 24922ce668d..d8a6608e84d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -3,6 +3,7 @@ title: "Get started with the dbt Semantic Layer" id: quickstart-sl description: "Use this guide to build and define metrics, set up the dbt Semantic Layer, and query them using the Semantic Layer APIs." sidebar_label: "Get started with the dbt Semantic Layer" +tags: [Semantic Layer] --- @@ -189,12 +190,14 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; To try out the features of the dbt Semantic Layer, you first need to have a dbt project set up. This quickstart guide will lay out the following steps, and recommends a workflow that demonstrates some of its essential features: -- Install dbt metrics package +- Install dbt metrics package + * Note: this package will be deprecated very soon and we highly recommend you to use the new [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl?version=1.6), available in dbt v 1.6 or higher. - Define metrics - Query, and run metrics - Configure the dbt Semantic Layer ## Prerequisites + To use the dbt Semantic Layer, you’ll need to meet the following: @@ -209,6 +212,7 @@ New to dbt or metrics? Check out our [quickstart guide](/quickstarts) to build ::: ## Installing dbt metrics package + The dbt Semantic Layer supports the calculation of metrics by using the [dbt metrics package](https://hub.getdbt.com/dbt-labs/metrics/latest/). You can install the dbt metrics package in your dbt project by copying the below code blocks. @@ -255,11 +259,6 @@ Review our helpful metrics video below, which explains what metrics are, why the -### Design metrics - -To read about best practices on structuring and organizing your metrics, review our [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog post first. - -### Define metrics Now that you've organized your metrics folder and files, you can define your metrics in `.yml` files nested under a `metrics` key. 1. Add the metric definitions found in the [Jaffle Shop](https://github.com/dbt-labs/jaffle_shop_metrics) example to your dbt project. For example, to add an expenses metric, reference the following metrics you can define directly in your metrics folder: @@ -331,8 +330,6 @@ metrics: 3. If you'd like to further design and define your own metrics, review the following documentation: - [dbt metrics](/docs/build/metrics) will provide you in-depth detail on attributes, properties, filters, and how to define and query metrics. - - - Review [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog to understand best practices for designing and structuring metrics in your dbt project. ## Develop and query metrics @@ -449,9 +446,7 @@ The reason you're experiencing this error is because we changed the type diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 7775ff86d97..6c2212081e5 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -3,6 +3,7 @@ title: "Set up the dbt Semantic Layer" id: setup-sl description: "Seamlessly set up the dbt Semantic Layer in dbt Cloud using intuitive nagivation." sidebar_label: "Set up your Semantic Layer" +tags: [Semantic Layer] --- diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index 4c6c4b4804f..8e76c8daca0 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -3,18 +3,20 @@ title: "dbt Semantic Layer product architecture" id: sl-architecture description: "dbt Semantic Layer product architecture and related questions." sidebar_label: "Product architecture" +tags: [Semantic Layer] --- -At a high level, the dbt Semantic Layer enables you to define metrics and query them in various interfaces. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). This functionality is enabled with the following components: +At a high level, the dbt Semantic Layer allows you to define metrics and query them using various interfaces. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). This is possible with the following components: + | Components | Information | Developer plans | Team plans | Enterprise plans | License | | --- | --- | :---: | :---: | :---: | --- | -| **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with the YAML specifications | ✅ | ✅ | ✅ | BSL package (code is source available) | -| **MetricFlow Server**| A proprietary server that takes metric requests and generates optimized SQL for the specific data platform| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| +| **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with the YAML specifications. | ✅ | ✅ | ✅ | BSL package (code is source available) | +| **MetricFlow Server**| A proprietary server that takes metric requests and generates optimized SQL for the specific data platform. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| | **Semantic Layer Gateway** | A service that passes queries to MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

❌| ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | -| **Semantic Layer APIs** | The interfaces that allow users to submit metric queries -- for example: the MetricFlow CLI, JDBC API, and GraphQL. These APIs are also the mechanisms in which tools can build first-class integrations to the dbt Semantic Layer| ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| +| **Semantic Layer APIs** | The interfaces that allow users to submit metric queries include the MetricFlow CLI, JDBC API, and GraphQL. These APIs also serve as the foundation for building first-class integrations with various tools. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| @@ -52,10 +54,10 @@ The dbt Semantic Layer product architecture includes four primary components: | Components | Information | Developer plans | Team plans | Enterprise plans | License | | --- | --- | :---: | :---: | :---: | --- | -| **[dbt project](/docs/build/metrics)** | Define models and metrics in dbt Core. | ✅ | ✅ | ✅ | Open source, Core | +| **[dbt project](/docs/build/metrics)** | Define models and metrics in dbt Core.
*Note, we will deprecate and no longer support the dbt_metrics package. | ✅ | ✅ | ✅ | Open source, Core | | **[dbt Server](https://github.com/dbt-labs/dbt-server)**| A persisted HTTP server that wraps dbt core to handle RESTful API requests for dbt operations. | ✅ | ✅ | ✅ | BSL | | **SQL Proxy** | Reverse-proxy that accepts dbt-SQL (SQL + Jinja like query models and metrics, use macros), compiles the query into pure SQL, and executes the query against the data platform. | ✅

_* Available during Public Preview only_ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | -| **[Discovery API](/docs/dbt-cloud-apis/discovery-api)** | Accesses metric definitions primarily via integrations and is the source of truth for objects defined in dbt projects (like models, macros, sources, metrics). The Discovery API is updated at the end of every dbt Cloud run. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise | +| **[Discovery API](/docs/dbt-cloud-apis/discovery-api)** | Accesses metric definitions primarily via integrations and is the source of truth for objects defined in dbt projects (like models, macros, sources, metrics). The Discovery API is updated at the end of every dbt Cloud run. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 0fcfa557a5f..fc4bcf76204 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -3,7 +3,7 @@ title: "Legacy dbt Semantic Layer migration guide" id: sl-migration sidebar_label: "Legacy dbt Semantic Layer migration" description: "This migration guide will help you migrate from the legacy dbt Semantic Layer to the new one." -tags: ["semantic-layer"] +tags: [Semantic Layer] --- The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. The new dbt Semantic Layer is in [public beta](docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and supported on dbt v1.6 or higher. It's available to all dbt Cloud plans (Developer, Team, and Enterprise) and introduces new semantic components, improved governance, enhanced efficiency, data accessibility, and new Semantic Layer APIs. diff --git a/website/snippets/_legacy-sl-callout.md b/website/snippets/_legacy-sl-callout.md index cd861b7405d..67517bb4342 100644 --- a/website/snippets/_legacy-sl-callout.md +++ b/website/snippets/_legacy-sl-callout.md @@ -1,11 +1,11 @@ -:::info Upgrade your dbt version to access the new dbt Semantic Layer +:::tip Upgrade to access the new dbt Semantic Layer -The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. We've introduced improved governance, enhanced efficiency, data accessibility, and new Semantic Layer APIs. +The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing new APIs, and making it more efficient to define/query metrics. This means the legacy Semantic Layer, available in dbt v1.5 or lower, is no longer supported and won't receive any code fixes. -**What’s changed?** The dbt_metrics package has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), one of the Semantic Layer's key component and a new way framework for defining metrics in dbt. The dbt_metrics package is no longer supported and won't receive any code fixes. +**Who does this affect?** Anyone who uses the legacy Semantic Layer. The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses). You must be on dbt v1.6 or higher to access it. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. -**What should you do?** If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. +**What’s changed?** The dbt_metrics package has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new framework for defining metrics in dbt. This means dbt_metrics is no longer supported after dbt v1.5 and won't receive any code fixes. -**Who does this affect?** The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses). You must be on dbt v1.6 or higher to access it. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. +**What should you do?** If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. To migrate to the new Semantic Layer, refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. ::: diff --git a/website/snippets/_new-sl-changes.md b/website/snippets/_new-sl-changes.md index 9d6ee48bc08..a5f8c2210bb 100644 --- a/website/snippets/_new-sl-changes.md +++ b/website/snippets/_new-sl-changes.md @@ -1,8 +1,8 @@ :::tip Introducing the new dbt Semantic Layer 🎉 -The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. The new dbt Semantic Layer is in [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and available open to all dbt Cloud plans. It introduces new semantic components, improved governance, enhanced efficiency, data accessibility, and new Semantic Layer APIs. +The dbt Semantic Layer has been re-released with [significant improvements](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. -**What’s changed?** The dbt_metrics package has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), one of the Semantic Layer's key component and a new way framework for defining metrics in dbt. +The new version is available in [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and introduces [MetricFlow](/docs/build/about-metricflow), an essential component. It also includes new semantic elements, better governance, improved efficiency, easier data access, and new Semantic Layer APIs. ::: diff --git a/website/snippets/_upgrade-new-sl.md b/website/snippets/_upgrade-new-sl.md deleted file mode 100644 index 765b0db8dac..00000000000 --- a/website/snippets/_upgrade-new-sl.md +++ /dev/null @@ -1,8 +0,0 @@ -:::tip Upgrade to access the new dbt Semantic Layer - -The new dbt Semantic Layer has been re-released and is now available for users on a [Team or Enterprise plans](https://www.getdbt.com/pricing/) and you must be on dbt v1.6 and higher. - -If you're using the legacy Semantic Layer, you **must** [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. The dbt_metrics package has been deprecated and replaced with MetricFlow. -Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. - -::: diff --git a/website/snippets/sl-prerequisites.md b/website/snippets/sl-prerequisites.md index 09ede745431..0c100c299b0 100644 --- a/website/snippets/sl-prerequisites.md +++ b/website/snippets/sl-prerequisites.md @@ -7,7 +7,7 @@ * **Note** — After installing the dbt metrics package and updating the `packages.yml` file, make sure you run at least one model. - Set up the Discovery API in the integrated tool to import metric definitions * Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API
-- Recommended - Review the dbt metrics page and Understanding the components of the dbt Semantic Layer blog
+- Recommended - Review the dbt metrics page
@@ -20,7 +20,7 @@ * **Note** — After installing the dbt metrics package and updating the `packages.yml` file, make sure you run at least one model. - Set up the Discovery API in the integrated tool to import metric definitions * Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API
-- Recommended - Review the dbt metrics page and Understanding the components of the dbt Semantic Layer blog
+- Recommended - Review the dbt metrics page
@@ -33,6 +33,6 @@ * **Note** — After installing the dbt metrics package and updating the `packages.yml` file, make sure you run at least one model. - Set up the Discovery API in the integrated tool to import metric definitions * Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API
-- Recommended - Review the dbt metrics page and Understanding the components of the dbt Semantic Layer blog
+- Recommended - Review the dbt metrics page
diff --git a/website/static/_redirects b/website/static/_redirects index a9add52bac4..851030088aa 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,6 +1,6 @@ ## semantic layer - +/guides/dbt-ecosystem/sl-partner-integration-guide /docs/use-dbt-semantic-layer/avail-sl-integrations 301 /docs/build/sl-getting-started /docs/use-dbt-semantic-layer/quickstart-semantic-layer 301 /docs/use-dbt-semantic-layer/dbt-semantic-layer /docs/use-dbt-semantic-layer/dbt-sl 301 /docs/use-dbt-semantic-layer/set-up-semantic-layer /docs/use-dbt-semantic-layer/setup-sl 301 From 5b941632a5d0ca621483c52939e99d3c397cc631 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 11:44:28 +0100 Subject: [PATCH 147/703] Update sidebars.js --- website/sidebars.js | 1 - 1 file changed, 1 deletion(-) diff --git a/website/sidebars.js b/website/sidebars.js index a2659fdfff8..4dcc48c8d62 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -1083,7 +1083,6 @@ const sidebarSettings = { "guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project", ], }, - "guides/dbt-ecosystem/sl-partner-integration-guide", ], }, { From e049a0e3ebe7edb40b312737363c0e173357e7ad Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 11:46:36 +0100 Subject: [PATCH 148/703] Update _redirects --- website/static/_redirects | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/static/_redirects b/website/static/_redirects index 851030088aa..1b77d12b841 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,5 +1,7 @@ ## semantic layer +https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer https://www.getdbt.com/blog/new-dbt-semantic-layer-spec-dna/ 301 +https://docs.getdbt.com/blog/how-to-design-and-structure-metrics https://www.getdbt.com/blog/new-dbt-semantic-layer-spec-dna/ 301 /guides/dbt-ecosystem/sl-partner-integration-guide /docs/use-dbt-semantic-layer/avail-sl-integrations 301 /docs/build/sl-getting-started /docs/use-dbt-semantic-layer/quickstart-semantic-layer 301 /docs/use-dbt-semantic-layer/dbt-semantic-layer /docs/use-dbt-semantic-layer/dbt-sl 301 From af265cc155e7150edbd5e42ee8860e142596c354 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 12:08:37 +0100 Subject: [PATCH 149/703] adding browser session time per [slack thread](https://dbt-labs.slack.com/archives/C0159442M18/p1689060702243859?thread_ts=1689054992.750199&cid=C0159442M18), adding a little section on browser time as this question has been asked a few times in slack from revenue teammates/users. [] Needs security/technical review --- website/docs/docs/cloud/about-cloud/browsers.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/website/docs/docs/cloud/about-cloud/browsers.md b/website/docs/docs/cloud/about-cloud/browsers.md index 4a04f70171b..d5a54fc6b4d 100644 --- a/website/docs/docs/cloud/about-cloud/browsers.md +++ b/website/docs/docs/cloud/about-cloud/browsers.md @@ -22,3 +22,8 @@ You may still be able to access and use dbt Cloud even without using the latest To improve your experience using dbt Cloud, we suggest that you turn off ad blockers. ::: +### Browser sessions + +A session is a period of time during which you’re signed in to a dbt Cloud account from a browser. dbt Cloud will not automatically log you out after a set time. However, once you close your browser, you end your dbt Cloud session. This action logs you out and you'll need to re-login the next time you try to access dbt Cloud. + +If you've logged in using [SSO](/docs/cloud/manage-access/sso-overview) or [OAuth](/docs/cloud/manage-access/set-up-snowflake-oauth), you can customize your session time, which may vary depending on your identity provider (IdP). From 7f4b2c20fba027807a2cfb17fa75fb1a963e7af0 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 12:36:22 +0100 Subject: [PATCH 150/703] clarify project creator clarify project creating per [slack thread](https://dbt-labs.slack.com/archives/CSSHB76QL/p1689607764718399?thread_ts=1689599777.396739&cid=CSSHB76QL) --- .../docs/docs/cloud/manage-access/enterprise-permissions.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index fb929bf2d59..5e80de449f0 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -17,7 +17,7 @@ control (RBAC). The following permission sets are available for assignment in dbt Cloud Enterprise accounts. They can be granted to dbt Cloud groups which are then in turn granted to users. A dbt Cloud group -can be associated with more than one permission sets. +can be associated with more than one permission set. ### Account Admin @@ -72,13 +72,13 @@ Billing Admins have access to modify certain account-level settings related to b - **Has permissions on:** Authorized projects, account-level settings - **License restrictions:** must have a developer license -Project Creators have write and read-only access to dbt Cloud accounts, but do not have the permissions required to modify SSO settings and account integrations. +Project Creators can access, create, or modify projects and other settings in dbt Cloud. However, they don't have permission to modify SSO settings or account integrations. Users with Project Creator permissions can: - View Account Settings - View and modify project users -- Create, delete and modify all projects in an account +- Create, delete, and modify all projects in an account - Create, delete, and modify Connections - Create, delete, and modify Environments - Create, delete, and modify Jobs From 3f549bbad16ef8407a9632103bb7dca708410818 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 12:43:09 +0100 Subject: [PATCH 151/703] Update website/docs/docs/cloud/about-cloud/browsers.md --- website/docs/docs/cloud/about-cloud/browsers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/about-cloud/browsers.md b/website/docs/docs/cloud/about-cloud/browsers.md index d5a54fc6b4d..b7dddf9fd11 100644 --- a/website/docs/docs/cloud/about-cloud/browsers.md +++ b/website/docs/docs/cloud/about-cloud/browsers.md @@ -24,6 +24,6 @@ To improve your experience using dbt Cloud, we suggest that you turn off ad bloc ### Browser sessions -A session is a period of time during which you’re signed in to a dbt Cloud account from a browser. dbt Cloud will not automatically log you out after a set time. However, once you close your browser, you end your dbt Cloud session. This action logs you out and you'll need to re-login the next time you try to access dbt Cloud. +A session is a period of time during which you’re signed in to a dbt Cloud account from a browser. dbt Cloud will not automatically log you out after a set time. However, if you close your browser, this action ends your dbt Cloud session and logs you out. You'll need to re-login the next time you try to access dbt Cloud. If you've logged in using [SSO](/docs/cloud/manage-access/sso-overview) or [OAuth](/docs/cloud/manage-access/set-up-snowflake-oauth), you can customize your session time, which may vary depending on your identity provider (IdP). From 8d485f47c923e81add9284a99e29cb6564760dbb Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 18 Jul 2023 15:53:20 +0100 Subject: [PATCH 152/703] adding info on rowsaffected --- website/docs/reference/artifacts/run-results-json.md | 9 ++++++++- website/docs/reference/artifacts/sources-json.md | 6 +++++- website/docs/reference/dbt-classes.md | 4 ++++ website/snippets/_run-result.md | 2 ++ 4 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 website/snippets/_run-result.md diff --git a/website/docs/reference/artifacts/run-results-json.md b/website/docs/reference/artifacts/run-results-json.md index c421e8ea5f3..dd92a9c4e53 100644 --- a/website/docs/reference/artifacts/run-results-json.md +++ b/website/docs/reference/artifacts/run-results-json.md @@ -35,5 +35,12 @@ Each entry in `results` is a [`Result` object](/reference/dbt-classes#result-obj - `thread_id`: Which thread executed this node? E.g. `Thread-1` - `execution_time`: Total time spent executing this node - `timing`: Array that breaks down execution time into steps (often `compile` + `execute`) -- `adapter_response`: Dictionary of metadata returned from the database, which varies by adapter. E.g. success `code`, number of `rows_affected`, total `bytes_processed`, etc. Not populated by tests, as of v0.19.0; we plan to fix in a future release ([dbt#2580](https://github.com/dbt-labs/dbt-core/issues/2580)). - `message`: How dbt will report this result on the CLI, based on information returned from the database + +import RowsAffected from '/snippets/_run-result.md'; + + + + + + diff --git a/website/docs/reference/artifacts/sources-json.md b/website/docs/reference/artifacts/sources-json.md index 884aab6a5c5..3b7f7539896 100644 --- a/website/docs/reference/artifacts/sources-json.md +++ b/website/docs/reference/artifacts/sources-json.md @@ -23,6 +23,10 @@ Each entry in `results` is a dictionary with the following keys: - `max_loaded_at_time_ago_in_s`: Interval between `max_loaded_at` and `snapshotted_at`, calculated in python to handle timezone complexity. - `criteria`: The freshness threshold(s) for this source, defined in the project. - `status`: The freshness status of this source, based on `max_loaded_at_time_ago_in_s` + `criteria`, reported on the CLI. One of `pass`, `warn`, or `error` if the query succeeds, `runtime error` if the query fails. -- `adapter_response`: Dictionary of information returned from the database, which varies by adapter. Not populated by source freshness checks, as of v0.19.0; we plan to fix in a future release ([dbt#2580](https://github.com/dbt-labs/dbt-core/issues/2580)). - `execution_time`: Total time spent checking freshness for this source - `timing`: Array that breaks down execution time into steps (`compile` + `execute`) + +import RowsAffected from '/snippets/_run-result.md'; + + + diff --git a/website/docs/reference/dbt-classes.md b/website/docs/reference/dbt-classes.md index e4072a67be7..18569fce3b0 100644 --- a/website/docs/reference/dbt-classes.md +++ b/website/docs/reference/dbt-classes.md @@ -199,3 +199,7 @@ The execution of a resource in dbt generates a `Result` object. This object cont - `timing`: Array that breaks down execution time into steps (often `compile` + `execute`) - `adapter_response`: Dictionary of metadata returned from the database, which varies by adapter. E.g. success `code`, number of `rows_affected`, total `bytes_processed`, etc. - `message`: How dbt will report this result on the CLI, based on information returned from the database + +import RowsAffected from '/snippets/_run-result.md'; + + diff --git a/website/snippets/_run-result.md b/website/snippets/_run-result.md new file mode 100644 index 00000000000..2a209190365 --- /dev/null +++ b/website/snippets/_run-result.md @@ -0,0 +1,2 @@ +- `adapter_response`: Dictionary of metadata returned from the database, which varies by adapter. For example, success `code`, number of `rows_affected`, total `bytes_processed`, and so on. Not populated by tests, as of v0.19.0; we plan to fix in a future release ([dbt#2580](https://github.com/dbt-labs/dbt-core/issues/2580)). + * `rows_affected` returns the number of rows modified by the last statement executed. In cases where the query's row count can't be determined or isn't applicable (such as when creating a view), a [standard value](https://peps.python.org/pep-0249/#rowcount) of `-1` is returned for `rowcount`. From c20d6f4c7f60d1cf7fc8b718ba3882a0035d93de Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 18 Jul 2023 16:37:26 +0100 Subject: [PATCH 153/703] Update website/snippets/_run-result.md Co-authored-by: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> --- website/snippets/_run-result.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_run-result.md b/website/snippets/_run-result.md index 2a209190365..77a35676e86 100644 --- a/website/snippets/_run-result.md +++ b/website/snippets/_run-result.md @@ -1,2 +1,2 @@ -- `adapter_response`: Dictionary of metadata returned from the database, which varies by adapter. For example, success `code`, number of `rows_affected`, total `bytes_processed`, and so on. Not populated by tests, as of v0.19.0; we plan to fix in a future release ([dbt#2580](https://github.com/dbt-labs/dbt-core/issues/2580)). +- `adapter_response`: Dictionary of metadata returned from the database, which varies by adapter. For example, success `code`, number of `rows_affected`, total `bytes_processed`, and so on. Not applicable for [tests](/docs/build/tests). * `rows_affected` returns the number of rows modified by the last statement executed. In cases where the query's row count can't be determined or isn't applicable (such as when creating a view), a [standard value](https://peps.python.org/pep-0249/#rowcount) of `-1` is returned for `rowcount`. From 3aebfd3a0f6f17b03d1d912d25a818df8be1f7e1 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Tue, 18 Jul 2023 09:56:35 -0700 Subject: [PATCH 154/703] Update website/docs/docs/dbt-cloud-apis/admin-cloud-api.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/dbt-cloud-apis/admin-cloud-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/admin-cloud-api.md b/website/docs/docs/dbt-cloud-apis/admin-cloud-api.md index 06d44fcbbc9..8a5712f40df 100644 --- a/website/docs/docs/dbt-cloud-apis/admin-cloud-api.md +++ b/website/docs/docs/dbt-cloud-apis/admin-cloud-api.md @@ -10,7 +10,7 @@ The dbt Cloud Administrative API is enabled by default for [Team and Enterprise - Manage your dbt Cloud account - and more -dbt Cloud currently supports two versions of the Administrative API: v2 and v3. In general, v3 is the recommended version to use, but we don't yet have all our v2 routes upgraded to v3. We're currently working on this. If you can't find what you're looking for in our v3 docs, check out the shorter list of v2 endpoints and see if that helps. +dbt Cloud currently supports two versions of the Administrative API: v2 and v3. In general, v3 is the recommended version to use, but we don't yet have all our v2 routes upgraded to v3. We're currently working on this. If you can't find something in our v3 docs, check out the shorter list of v2 endpoints because you might find it there.
From 4a6c632da3b349df4add7afafb90037422a79cdf Mon Sep 17 00:00:00 2001 From: rpourzand Date: Tue, 18 Jul 2023 10:12:26 -0700 Subject: [PATCH 155/703] Update sl-graphql.md Adding a note on authentication for graphql --- website/docs/docs/dbt-cloud-apis/sl-graphql.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index 286ed79621c..d468bdb71f6 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -24,6 +24,16 @@ GraphQL has several advantages, such as self-documenting, having a strong typing The dbt Semantic Layer GraphQL API offers capabilities like the JDBC API. It allows you to explore and execute commands conveniently through its self-documenting nature using the schema explorer (need link from roxi). + +### Authentication + +Authentication uses a dbt Cloud Service token passed through a header as follows: + +``` +{"Authorization": "Bearer "} +``` + + ### Metric metadata calls Use the following example calls to provide you with an idea of the types of commands you can use: From 487dd053943e8050720083219df9f166157e51da Mon Sep 17 00:00:00 2001 From: Ajay Thomas Date: Tue, 18 Jul 2023 13:00:29 -0400 Subject: [PATCH 156/703] New screenshot for gsuite migration to Auth0 --- .../set-up-sso-google-workspace.md | 2 +- .../access-control/google-enable.png | Bin 118831 -> 119283 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md b/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md index 1cfa9a49286..8d52096d4bf 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md @@ -49,7 +49,7 @@ Client Secret for use in dbt Cloud. | **Application type** | internal | required | | **Application name** | dbt Cloud | required | | **Application logo** | Download the logo here | optional | -| **Authorized domains** | `getdbt.com` | If deploying into a VPC, use the domain for your deployment | +| **Authorized domains** | `getdbt.com` | If you are in EMEA or AU multi-tenant, use `dbt.com`. If deploying into a VPC, use the domain for your deployment | | **Scopes** | `email, profile, openid` | The default scopes are sufficient | diff --git a/website/static/img/docs/dbt-cloud/access-control/google-enable.png b/website/static/img/docs/dbt-cloud/access-control/google-enable.png index 9de449b7944c2e13c804ed96a9612cdce85accde..f87858ff7519173bcf0f15f98433e22e084915c8 100644 GIT binary patch literal 119283 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

$_A`rK#c=A+r5FbLjX1|>x?fFZ+nzg5%zL766 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 y<%)MCh>(?v&hL-e}^LUmp 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%0D}G6Db)S(r%LO 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 Qj}UN}nOGnn8M_kx4Vm-Wd;kCd From 3fb68e638691de6cdef525ad73a8217a06519cdf Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 18 Jul 2023 14:10:49 -0400 Subject: [PATCH 157/703] Update set-up-sso-google-workspace.md --- .../docs/cloud/manage-access/set-up-sso-google-workspace.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md b/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md index 8d52096d4bf..a206d359270 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-google-workspace.md @@ -49,7 +49,7 @@ Client Secret for use in dbt Cloud. | **Application type** | internal | required | | **Application name** | dbt Cloud | required | | **Application logo** | Download the logo here | optional | -| **Authorized domains** | `getdbt.com` | If you are in EMEA or AU multi-tenant, use `dbt.com`. If deploying into a VPC, use the domain for your deployment | +| **Authorized domains** | `getdbt.com` (US) `dbt.com` (EMEA or AU) | If deploying into a VPC, use the domain for your deployment | | **Scopes** | `email, profile, openid` | The default scopes are sufficient | From 8e26091d82ecfcf5307f8c910a4ef263885540e5 Mon Sep 17 00:00:00 2001 From: Nick Handel Date: Tue, 18 Jul 2023 11:11:40 -0700 Subject: [PATCH 158/703] Add nicks additions to the sl-revamp-beta doc --- .../06-July-2023/sl-revamp-beta.md | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 78b24a89709..8d37cd78c5d 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -7,11 +7,11 @@ date: 2023-07-31 sidebar_position: 9 --- -We are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), now available in [public beta](#public-beta). It revolutionizes data analysis by introducing: +We are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), now available in [public beta](#public-beta). It aims to bring the best of modeling and semantics to downstream applications by introducing: -- [MetricFlow](/docs/build/about-metricflow), a new way to define metrics in dbt and one of the key components of the dbt Semantic Layer, -- New semantic components like semantic models and metrics, which help lay the foundation for effective organization and interaction with data, -- Improved governance, enhanced efficiency, and data accessibility, +- [MetricFlow](/docs/build/about-metricflow), a framework for constructing performant and legible SQL from an all new set of semantic constructs which include semantic models, entities, and metrics. +- New Semantic Layer Infrastructure that enables support for more data platforms (Snowflake, Databricks, BigQuery, Redshift and soon more) and improved performance. +- New and Improved [developer workflows](/docs/guides/migration/sl-migration), governance, and collaboration features. - New [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to query metrics and build integrations. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. @@ -20,32 +20,33 @@ With semantics at its core, the dbt Semantic Layer marks a crucial milestone tow ## Enhanced dbt Semantic Layer -What sets the dbt Semantic Layer apart is its ability to centralize logic and data applications, streamlining processes and enabling efficient management and utilization of data models. It provides a consistent view of data, incorporating context and historical information, simplifying complex tasks, and reducing costs. +What sets the dbt Semantic Layer apart is its ability to centralize logic for many downstream data applications, streamlining access and governance and enabling more efficient utilization of data models. It provides a consistent view of data while simplifying complex tasks in downstream applications and reducing the costs of and barriers to data access. We are excited to present several important capabilities with the enhanced dbt Semantic Layer: -- **Consistent organization**: Provides a consistent view of data, ensuring that metrics and definitions match across the organization. This fosters trust in data and drives better decision-making by eliminating inconsistencies and errors that come up when individual users define metrics independently. +- **Consistent organization**: Provides a consistent view of data, ensuring that metrics and definitions match across the organization and teh breadth of interfaces where data is consumed. This fosters trust in data and drives better decision-making by eliminating inconsistencies and errors that come up when individual users define metrics independently. - **Improved governance**: The dbt Semantic Layer ensures proper governance and auditing of data changes, providing an auditable record of modifications and clear ownership. This saves time by making it clear who can create and manage new metrics, ensuring accountability and data integrity. -- **Reduce costs**: The dbt Semantic Layer simplifies complex tasks, such as bridging entities across a semantic graph. Often users duplicate slices and dice of data and make them available in a data platform, making it difficult to manage and causing high computation. The dbt Semantic Layer minimizes duplication of work and reducing computational costs - allowing users to focus on analyzing data rather than navigating intricate technical processes or duplicating work. +- **Reduce costs**: The dbt Semantic Layer simplifies complex tasks, such as bridging entities across a semantic graph. Often users duplicate slices and dice of data and make them available in a data platform, making it difficult to manage and causing high computation. The dbt Semantic Layer minimizes duplication of work and reduces computational costs - allowing users to focus on analyzing data rather than navigating intricate technical processes or duplicating work. -- **Enhanced efficiency**: With the dbt Semantic Layer, data teams can create and update metrics in one central location, saving time and reducing the risk of errors and downstream impacts. The agnostic approach allows seamless integration with various data platforms and downstream BI tools, making migration easier and more flexible. +- **Enhanced efficiency**: With the dbt Semantic Layer, data teams can create and update metrics using a new set of validations that make defining and iterating on metrics efficient. The streamlined development workflows makes it simpler for a data team to serve large organizations with broad data needs. -- **Accessible data**: Without the dbt Semantic Layer, there would be limited access to critical information which stifles effective communication. An accessible semantic layer allows all users to have equal opportunities to leverage data insights, fostering collaboration and driving innovation. +- **Accessible data**: Defining common metrics and dimensions and making them joinable, makes access simpler for users with less expertise in the specifics of a companies data modeling work. This creates opportunities to leverage data insights, fostering collaboration and driving innovation in a more inclusive data environment. -By bringing these enhancements to the dbt Semantic Layer, we enable organizations of all sizes and industries to leverage the power of semantics in their data workflows. +By bringing these enhancements to the dbt Semantic Layer, we enable organizations of all sizes and industries to leverage the power of semantics in their data workflows. -## Public beta +## Public beta The dbt Semantic Layer is currently available as a public beta, which means: -- **Who** — To experience the new dbt Semantic Layer, you must be on a dbt Cloud [Team and Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plan, [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America and on dbt v1.6 and higher. - * Developer plans or dbt Core users can use MetricFlow to define and test metrics using the CLI only. +- **Who** — To experience the new dbt Semantic Layer, you must be on a dbt Cloud [Team and Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plan, [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America and on dbt v1.6 and higher. Look out for announcements on removing the location requirement soon. -- **What** — Public beta provides early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability. We may also introduce new functionality that isn't backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). DO WE MENTION THAT WE'RE NOT CHARGING? + - Developer plans or dbt Core users can use MetricFlow to define and test metrics using the dbt-metricflow CLI only. -- **When** — Public beta will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will make pricing information available. DO WE MENTION THAT WE'LL BEGIN CHARGING? +- **What** — Public beta provides early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability later this year. We may also introduce new functionality that isn't backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer in October 2023. For now, there will be no billing for usage. If you have any questions on pricing please reach out to your account rep. + +- **When** — Public beta starts on July 31 and will end once the dbt Semantic Layer is available for GA in October 2023. - **Where** — You can experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. From 19db6f3d760bfa58c4551340f7b8b05c60ae9c6f Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Tue, 18 Jul 2023 12:26:12 -0600 Subject: [PATCH 159/703] Expanded docs for `deprecation_date` (#3754) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What are you changing in this pull request and why? Resolves #3745 - Updated docs for [model versions](https://docs.getdbt.com/docs/collaborate/govern/model-versions) including link back to the reference docs on `deprecation_date` - Add examples with different accepted formats, including an aware datetime, a naive datetime, and a plain date - `1999-01-01 00:00:00.00+00:00` - `2023-12-31 23:59:59.99` - `2024-01-01` ## Previews - [deprecation_date](https://deploy-preview-3754--docs-getdbt-com.netlify.app/reference/resource-properties/deprecation_date) - [model-versions](https://deploy-preview-3754--docs-getdbt-com.netlify.app/docs/collaborate/govern/model-versions) ## 🎩 image ## Key questions to answer ### Why would I set a `deprecation_date` for my models? Declaring a deprecation date is a way of signaling the maturity level of a model, and communicating plans for long-term support and maintenance. It provides a mechanism to communicate plans and timelines for sunsetting models so they don't need to be maintained and supported indefinitely and their build and storage costs can be freed up. ### What happens after a model is deprecated? Does it stop building/being selected? What are the warning/error messages I could expect to see, for myself and for downstream queriers? Deprecated models can still continue to be built by producers and be selected by consumers until they are [disabled](https://docs.getdbt.com/reference/resource-configs/enabled) or removed. Models marked for deprecation will raise informative warnings when they are parsed or referenced. (With cross-project references, dbt raises these warnings in downstream projects that are ref'ing a deprecated version of a public model from an upstream project.) When a project references a model that's slated for deprecation, a warning is generated. If it's a versioned model, with a newer version available, then the warning says so. This added bit of communication, from producers to consumers, is an advantage of using dbt's built-in functionality around model versions to facilitate migrations. Additionally, [`WARN_ERROR_OPTIONS`](https://docs.getdbt.com/reference/global-configs/warnings) gives a mechanism whereby users can promote these warnings to actual runtime errors. **Warning messages:** * DeprecatedModel (warning when parsing a project that defines deprecated model(s)): `[WARNING] Model {model_name}[.v{version} if versioned] has passed its deprecation date of {deprecation_date}. This model should be disabled or removed.` * UpcomingDeprecationReference (warning when referencing a model with a future deprecation date): `[WARNING] While compiling '{this_model_name}': Found a reference to {ref_model_name}[.v{version} if versioned], which is slated for deprecation on '{ref_model_deprecation_date}'. [if versioned: A new version of '{ref_model_name}' is available. Try it out: {{ ref('ref_model_package', 'ref_model_name', v='{ref_model_latest_version}') }}.` * DeprecatedReference (warning when referencing a model with a past deprecation date): `[WARNING] While compiling '{this_model_name}': Found a reference to {ref_model_name}[.v{version} if versioned], which was deprecated on '{ref_model_deprecation_date}'. [if versioned: A new version of '{ref_model_name}' is available. Migrate now: {{ ref('ref_model_package', 'ref_model_name', v='{ref_model_latest_version}') }}.` ### How does this relate to model versions? Do I have to be using model contracts/versions/etc to set a `deprecation_date`? (no!) Setting a `deprecation_date` works well in conjunction with other [model governance](https://docs.getdbt.com/docs/collaborate/govern/about-model-governance) features like [model versions](https://docs.getdbt.com/docs/collaborate/govern/model-versions), but can also be used independently from them. ### Is there specific selection syntax I can use, to select only deprecated models? (I don't think we've implemented this) There is not specific [node selection syntax](https://docs.getdbt.com/reference/node-selection/syntax) for `deprecation_date`. [Programmatic invocations](https://docs.getdbt.com/reference/programmatic-invocations) is one way to identify deprecated models (potentially in conjunction with [dbt list](https://docs.getdbt.com/reference/commands/list)). e.g., `dbt -q ls --output json --output-keys database schema alias deprecation_date`. ### How can I clean up / remove tables from the DWH associated with deprecated models? (nothing built-in/automated, but is there a discourse/pattern we could point people toward?) Just like it [does not automatically drop relations when models are deleted](https://docs.getdbt.com/faqs/models/removing-deleted-models), dbt does not removed tables for deprecated models. Strategies similar to [here](https://discourse.getdbt.com/t/faq-cleaning-up-removed-models-from-your-production-schema/113) or [here](https://discourse.getdbt.com/t/clean-your-warehouse-of-old-and-deprecated-models/1547) can be used to drop relations that have been deprecated and are no longer in use. ### How does this relate to [table expiration on BQ](https://docs.getdbt.com/reference/resource-configs/bigquery-configs#controlling-table-expiration)? (they're different things, but maybe you'd want to use them in synchrony) dbt-bigquery can set an [`hours_to_expiration`](https://docs.getdbt.com/reference/resource-configs/bigquery-configs#controlling-table-expiration) that [translates to `expiration_timestamp`](https://github.com/dbt-labs/dbt-bigquery/blob/ea258bb76169375ded8f7ff9e596a436a5ed165a/dbt/adapters/bigquery/impl.py#L844-L846) (expired tables in BigQuery will be deleted and their storage reclaimed). dbt does not automatically synchronize `deprecation_date` and `hours_to_expiration`, but users may want to coordinate them in some fashion (such as setting a model to expire 48 hours after its `deprecation_date`). ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. --- .../docs/collaborate/govern/model-versions.md | 6 +- .../resource-properties/deprecation_date.md | 56 ++++++++++++++++++- 2 files changed, 58 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index b38ed13289d..12599d0b65f 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -37,7 +37,7 @@ Instead, for mature models at larger organizations, powering queries inside & ou During that migration window, anywhere that model is being used downstream, it can continue to be referenced at a specific version. -In the future, dbt will also offer first-class support for **deprecating models** ([dbt-core#7433](https://github.com/dbt-labs/dbt-core/issues/7433)). Taken together, model versions and deprecation offer a pathway for model producers to _sunset_ old models, and consumers the time to _migrate_ across breaking changes. It's a way of managing change across an organization: develop a new version, bump the latest, slate the old version for deprecation, update downstream references, and then remove the old version. +dbt Core 1.6 introduced first-class support for **deprecating models** by specifying a [`deprecation_date`](/reference/resource-properties/deprecation_date). Taken together, model versions and deprecation offer a pathway for model producers to _sunset_ old models, and consumers the time to _migrate_ across breaking changes. It's a way of managing change across an organization: develop a new version, bump the latest, slate the old version for deprecation, update downstream references, and then remove the old version. There is a real trade-off that exists here—the cost to frequently migrate downstream code, and the cost (and clutter) of materializing multiple versions of a model in the data warehouse. Model versions do not make that problem go away, but by setting a deprecation date, and communicating a clear window for consumers to gracefully migrate off old versions, they put a known boundary on the cost of that migration. @@ -73,7 +73,7 @@ As the **producer** of a versioned model: - You keep track of all live versions in one place, rather than scattering them throughout the codebase - You can reuse the model's configuration, and highlight just the diffs between versions - You can select models to build (or not) based on whether they're a `latest`, `prerelease`, or `old` version -- dbt will notify consumers of your versioned model when new versions become available, or (in the future) when they are slated for deprecation +- dbt will notify consumers of your versioned model when new versions become available, or when they are slated for deprecation As the **consumer** of a versioned model: - You use a consistent `ref`, with the option of pinning to a specific live version @@ -109,7 +109,7 @@ selectors: -Because dbt knows that these models are _actually the same model_, it can notify downstream consumers as new versions become available, and (in the future) as older versions are slated for deprecation. +Because dbt knows that these models are _actually the same model_, it can notify downstream consumers as new versions become available, and as older versions are slated for deprecation. ```bash Found an unpinned reference to versioned model 'dim_customers'. diff --git a/website/docs/reference/resource-properties/deprecation_date.md b/website/docs/reference/resource-properties/deprecation_date.md index 9fe9e2e1098..830412d2af6 100644 --- a/website/docs/reference/resource-properties/deprecation_date.md +++ b/website/docs/reference/resource-properties/deprecation_date.md @@ -28,5 +28,59 @@ models: ## Definition -The deprecation date of the model in YAML DateTime format. +The deprecation date of the model is formatted as a date, optionally with a timezone offset. Supported RFC 3339 formats include: +- `YYYY-MM-DD hh:mm:ss.sss±hh:mm` +- `YYYY-MM-DD hh:mm:ss.sss` +- `YYYY-MM-DD` +When `deprecation_date` does not include an offset from UTC, then it is interpreted as being in the system time zone of the dbt execution environment. + +## Explanation + +### Purpose + +Declaring a `deprecation_date` for a dbt model provides a mechanism to communicate plans and timelines for long-term support and maintenance and to facilitate change management. + +Setting a `deprecation_date` works well in conjunction with other [model governance](/docs/collaborate/govern/about-model-governance) features like [model versions](/docs/collaborate/govern/model-versions), but can also be used independently from them. + +### Warning messages + +When a project references a model that's slated for deprecation or the deprecation date has passed, a warning is generated. If it's a versioned model, with a newer version available, then the warning says so. This added bit of cross-team communication, from producers to consumers, is an advantage of using dbt's built-in functionality around model versions to facilitate migrations. + +Additionally, [`WARN_ERROR_OPTIONS`](/reference/global-configs/warnings) gives a mechanism whereby users can promote these warnings to actual runtime errors: + +| Warning | Scenario | Affected projects | +|--------------------------------|----------------------------------------------------|------------------------| +| `DeprecatedModel` | Parsing a project that defines a deprecated model | Producer | +| `DeprecatedReference` | Referencing a model with a past deprecation date | Producer and consumers | +| `UpcomingDeprecationReference` | Referencing a model with a future deprecation date | Producer and consumers | + +** Example ** + +Example output for an `UpcomingDeprecationReference` warning: +``` +$ dbt parse +15:48:14 Running with dbt=1.6.0 +15:48:14 Registered adapter: postgres=1.6.0 +15:48:14 [WARNING]: While compiling 'my_model_ref': Found a reference to my_model, which is slated for deprecation on '2038-01-19T03:14:07-00:00'. +``` + +### Selection syntax + +There is not specific [node selection syntax](/reference/node-selection/syntax) for `deprecation_date`. [Programmatic invocations](/reference/programmatic-invocations) is one way to identify deprecated models (potentially in conjunction with [dbt list](/reference/commands/list)). e.g., `dbt -q ls --output json --output-keys database schema alias deprecation_date`. + +### Deprecation process + +Additional steps are necessary to save on build-related compute and storage costs for a deprecated model. + +Deprecated models can continue to be built by producers and be selected by consumers until they are [disabled](/reference/resource-configs/enabled) or removed. + +Just like it does not automatically [drop relations when models are deleted](/faqs/models/removing-deleted-models), dbt does not drop relations for deprecated models. + +Strategies similar to [here](https://discourse.getdbt.com/t/faq-cleaning-up-removed-models-from-your-production-schema/113) or [here](https://discourse.getdbt.com/t/clean-your-warehouse-of-old-and-deprecated-models/1547) can be used to drop relations that have been deprecated and are no longer in use. + +### Table expiration on BigQuery + +dbt-bigquery can set an [`hours_to_expiration`](/reference/resource-configs/bigquery-configs#controlling-table-expiration) that translates to `expiration_timestamp` within BigQuery. + +dbt does not automatically synchronize `deprecation_date` and `hours_to_expiration`, but users may want to coordinate them in some fashion (such as setting a model to expire 48 hours after its `deprecation_date`). Expired tables in BigQuery will be deleted and their storage reclaimed. From 5d02a3d14b4a37507bede45f9fe2ec2c1b3100d8 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 18 Jul 2023 16:14:02 -0400 Subject: [PATCH 160/703] Service token update text --- .../docs/dbt-cloud-apis/service-tokens.md | 19 ++++++++++++++++++ .../service-token-date.png | Bin 0 -> 50236 bytes 2 files changed, 19 insertions(+) create mode 100644 website/static/img/docs/dbt-cloud/cloud-configuring-dbt-cloud/service-token-date.png diff --git a/website/docs/docs/dbt-cloud-apis/service-tokens.md b/website/docs/docs/dbt-cloud-apis/service-tokens.md index 139eff8fd07..e33ed772c00 100644 --- a/website/docs/docs/dbt-cloud-apis/service-tokens.md +++ b/website/docs/docs/dbt-cloud-apis/service-tokens.md @@ -3,6 +3,11 @@ title: "Service account tokens" id: "service-tokens" description: "Service account tokens help you define permissions for securing access to your dbt Cloud account and its projects." --- +:::info Important service account token update + +If you have service tokens created prior to July 11, 2023, please read [this important update](/docs/dbt-cloud-apis/service-tokens#service-token-update). + +::: ## About service tokens @@ -92,3 +97,17 @@ Analyst admin service tokens have all the permissions listed in [Analyst](/docs/ **Stakeholder**
Stakeholder service tokens have all the permissions listed in [Stakeholder](/docs/cloud/manage-access/enterprise-permissions#stakeholder) on the Enterprise Permissions page. + + +## Service token update + +On July 11, 2023, dbt Labs made critical infrastructure changes to service account tokens. These enhancements improve the security and performance of all tokens created after July 11, 2023. To ensure security best practices are in place, we recommend you rotate your service tokens created before this date. + +To rotate your token: +1. Navigate to **Account settings** and click **Service tokens** on the left side pane. +2. Verify the **Created** date for the token is _before_ July 11, 2023. + +3. Click **+ New Token** on the top right side of the screen. Ensure the new token has the same permissions as the old one. +4. Copy the new token and replace the old one in your systems. Store it in a safe place, as it will not be available again once the creation screen is closed. +5. Delete the old token in dbt Cloud by clicking the **trash can icon**. -Only take this action before the new token is in place to avoid service disruptions_. + diff --git a/website/static/img/docs/dbt-cloud/cloud-configuring-dbt-cloud/service-token-date.png b/website/static/img/docs/dbt-cloud/cloud-configuring-dbt-cloud/service-token-date.png new file mode 100644 index 0000000000000000000000000000000000000000..8f35eba639b854bcbc7e29fa554d30f801ef1066 GIT binary patch literal 50236 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 TOzp7^z`v{NI+rjPZ$0=wW3uTE literal 0 HcmV?d00001 From 30a856a2c6011f4914cde0f4ec55c782b9dd296b Mon Sep 17 00:00:00 2001 From: Grace Goheen Date: Tue, 18 Jul 2023 13:28:56 -0700 Subject: [PATCH 161/703] add initial defer docs --- website/docs/reference/commands/clone.md | 10 +++++++++- website/docs/reference/node-selection/defer.md | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/website/docs/reference/commands/clone.md b/website/docs/reference/commands/clone.md index 150d3b12e62..07b9259eeb7 100644 --- a/website/docs/reference/commands/clone.md +++ b/website/docs/reference/commands/clone.md @@ -27,4 +27,12 @@ dbt clone --state path/to/artifacts --full-refresh # clone all of my models from specified state to my target schema(s), running up to 50 clone statements in parallel dbt clone --state path/to/artifacts --threads 50 -``` \ No newline at end of file +``` + +### When to use `dbt clone` instead of [deferral](/reference/node-selection/defer)? + +Unlike deferral, `dbt clone` requires some compute and creation of additional objects in your data warehouse. In many cases, deferral is a cheaper and simpler alternative to `dbt clone`. However, `dbt clone` covers additional use cases where deferral may not be possible. + +For example, by creating actual data warehouse objects, `dbt clone` allows you to test out your code changes on downstream dependencies _outside of dbt_ (such as a BI tool). + +As another example, you could `clone` your modified incremental models as the first step of your dbt Cloud CI job to prevent costly `full-refresh` builds for warehouses that support zero-copy cloning. \ No newline at end of file diff --git a/website/docs/reference/node-selection/defer.md b/website/docs/reference/node-selection/defer.md index a6ef6261cf1..e33f95a5142 100644 --- a/website/docs/reference/node-selection/defer.md +++ b/website/docs/reference/node-selection/defer.md @@ -14,6 +14,9 @@ Deferral is a powerful, complex feature that enables compelling workflows. As th Defer is a powerful feature that makes it possible to run a subset of models or tests in a [sandbox environment](/docs/environments-in-dbt) without having to first build their upstream parents. This can save time and computational resources when you want to test a small number of models in a large project. Defer requires that a manifest from a previous dbt invocation be passed to the `--state` flag or env var. Together with the `state:` selection method, these features enable "Slim CI". Read more about [state](/reference/node-selection/syntax#about-node-selection). + +An alternative command that accomplishes similar functionality for different use cases is `dbt clone` - see the docs for [clone](/reference/commands/clone#when-to-use-dbt-clone-instead-of-deferral) for more information. + ### Usage ```shell From e1b997289b9d41965f043b2ca0fcd42a935422d5 Mon Sep 17 00:00:00 2001 From: Grace Goheen Date: Tue, 18 Jul 2023 13:30:54 -0700 Subject: [PATCH 162/703] add caveats for useful bullets --- website/docs/reference/commands/clone.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/commands/clone.md b/website/docs/reference/commands/clone.md index 07b9259eeb7..3f74d7cd88a 100644 --- a/website/docs/reference/commands/clone.md +++ b/website/docs/reference/commands/clone.md @@ -11,9 +11,10 @@ The `dbt clone` command clones selected nodes from the [specified state](/refere - You may want to specify a higher number of [threads](/docs/running-a-dbt-project/using-threads) to decrease execution time since individual clone statements are independent of one another. The `clone` command is useful for: -- blue/green continuous deployment +- blue/green continuous deployment (on data warehouses that support zero-copy cloning tables) - cloning current production state into development schema(s) -- handling incremental models in Slim CI dbt Cloud jobs +- handling incremental models in Slim CI dbt Cloud jobs (on data warehouses that support zero-copy cloning tables) +- testing code changes on downstream dependencies in your BI tool ```bash # clone all of my models from specified state to my target schema(s) From 1a087c7c47c3a2268ab3d085947a204851fe29e3 Mon Sep 17 00:00:00 2001 From: Grace Goheen Date: Tue, 18 Jul 2023 14:04:28 -0700 Subject: [PATCH 163/703] error note --- website/docs/reference/commands/clone.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/clone.md b/website/docs/reference/commands/clone.md index 3f74d7cd88a..6b58a107a3b 100644 --- a/website/docs/reference/commands/clone.md +++ b/website/docs/reference/commands/clone.md @@ -4,7 +4,7 @@ sidebar_label: "clone" id: "clone" --- -The `dbt clone` command clones selected nodes from the [specified state](/reference/node-selection/syntax#establishing-state) to the target schema(s). This command makes use of the `clone` materialization: +The `dbt clone` command clones selected nodes from the [specified state](/reference/node-selection/syntax#establishing-state) to the target schema(s). You must always use different directories for source and target otherwise you will get an error message. This command makes use of the `clone` materialization: - If your data platform supports zero-copy cloning of tables, and this model exists as a table in the source environment, dbt will create it in your target environment as a clone - Otherwise, dbt will create a simple pointer view (`select * from` the source object) - By default, `dbt clone` will not recreate pre-existing relations in the current target. To override this, use the `--full-refresh` flag. From 72b217b8c375037a791bea195e2cf8bac605659c Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 18 Jul 2023 17:08:43 -0400 Subject: [PATCH 164/703] Adding date --- website/docs/docs/dbt-cloud-apis/service-tokens.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/service-tokens.md b/website/docs/docs/dbt-cloud-apis/service-tokens.md index e33ed772c00..f60cfe61a9b 100644 --- a/website/docs/docs/dbt-cloud-apis/service-tokens.md +++ b/website/docs/docs/dbt-cloud-apis/service-tokens.md @@ -5,7 +5,7 @@ description: "Service account tokens help you define permissions for securing ac --- :::info Important service account token update -If you have service tokens created prior to July 11, 2023, please read [this important update](/docs/dbt-cloud-apis/service-tokens#service-token-update). +If you have service tokens created on or before July 18, 2023, please read [this important update](/docs/dbt-cloud-apis/service-tokens#service-token-update). ::: @@ -101,13 +101,13 @@ Stakeholder service tokens have all the permissions listed in [Stakeholder](/doc ## Service token update -On July 11, 2023, dbt Labs made critical infrastructure changes to service account tokens. These enhancements improve the security and performance of all tokens created after July 11, 2023. To ensure security best practices are in place, we recommend you rotate your service tokens created before this date. +On July 18, 2023, dbt Labs made critical infrastructure changes to service account tokens. These enhancements improve the security and performance of all tokens created after July 18, 2023. To ensure security best practices are in place, we recommend you rotate your service tokens created before this date. To rotate your token: 1. Navigate to **Account settings** and click **Service tokens** on the left side pane. -2. Verify the **Created** date for the token is _before_ July 11, 2023. +2. Verify the **Created** date for the token is _on or before_ July 18, 2023. 3. Click **+ New Token** on the top right side of the screen. Ensure the new token has the same permissions as the old one. 4. Copy the new token and replace the old one in your systems. Store it in a safe place, as it will not be available again once the creation screen is closed. -5. Delete the old token in dbt Cloud by clicking the **trash can icon**. -Only take this action before the new token is in place to avoid service disruptions_. +5. Delete the old token in dbt Cloud by clicking the **trash can icon**. _Only take this action before the new token is in place to avoid service disruptions_. From 91b51afa70b75894b93d2801aeda73f81f1a6771 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 18 Jul 2023 17:14:23 -0400 Subject: [PATCH 165/703] Update website/docs/docs/dbt-cloud-apis/service-tokens.md --- website/docs/docs/dbt-cloud-apis/service-tokens.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/service-tokens.md b/website/docs/docs/dbt-cloud-apis/service-tokens.md index f60cfe61a9b..811bfaea29d 100644 --- a/website/docs/docs/dbt-cloud-apis/service-tokens.md +++ b/website/docs/docs/dbt-cloud-apis/service-tokens.md @@ -109,5 +109,5 @@ To rotate your token: 3. Click **+ New Token** on the top right side of the screen. Ensure the new token has the same permissions as the old one. 4. Copy the new token and replace the old one in your systems. Store it in a safe place, as it will not be available again once the creation screen is closed. -5. Delete the old token in dbt Cloud by clicking the **trash can icon**. _Only take this action before the new token is in place to avoid service disruptions_. +5. Delete the old token in dbt Cloud by clicking the **trash can icon**. _Only take this action after the new token is in place to avoid service disruptions_. From c42a5300ceaa8cef70659462a33c37a419db1480 Mon Sep 17 00:00:00 2001 From: Grace Goheen Date: Tue, 18 Jul 2023 14:22:12 -0700 Subject: [PATCH 166/703] error message begone --- website/docs/reference/commands/clone.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/clone.md b/website/docs/reference/commands/clone.md index 6b58a107a3b..3f74d7cd88a 100644 --- a/website/docs/reference/commands/clone.md +++ b/website/docs/reference/commands/clone.md @@ -4,7 +4,7 @@ sidebar_label: "clone" id: "clone" --- -The `dbt clone` command clones selected nodes from the [specified state](/reference/node-selection/syntax#establishing-state) to the target schema(s). You must always use different directories for source and target otherwise you will get an error message. This command makes use of the `clone` materialization: +The `dbt clone` command clones selected nodes from the [specified state](/reference/node-selection/syntax#establishing-state) to the target schema(s). This command makes use of the `clone` materialization: - If your data platform supports zero-copy cloning of tables, and this model exists as a table in the source environment, dbt will create it in your target environment as a clone - Otherwise, dbt will create a simple pointer view (`select * from` the source object) - By default, `dbt clone` will not recreate pre-existing relations in the current target. To override this, use the `--full-refresh` flag. From 8cbbcf818899f1a529579ca1f5f840878e37b736 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Tue, 18 Jul 2023 14:27:11 -0700 Subject: [PATCH 167/703] Update setup-sl.md making a few other changes to setup to incorporate the graphql pai --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 6c2212081e5..7a5488a92ea 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -34,7 +34,7 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; 3. To configure the new Semantic Layer, you must have a successful run in your new environment. We recommend running `dbt ls` since `dbt build` won’t succeed until you’ve created and defined semantic models and metrics. 4. To enable the dbt Semantic Layer, go to the **Account Settings** page and then select the specific project you want to enable the Semantic Layer for. 5. In the **Project Details** page, select **Configure Semantic Layer.** This will prompt you to enter data platform connection credentials for the Semantic Layer and select the environment where you want to enable the Semantic Layer. We recommend using a less privileged set of credentials when setting up your connection. The semantic layer requires SELECT and CREATE TABLE permissions. -6. After you’ve entered your credentials, you should see a **JDBC URL** connection string. Copy this string and save it in your password manager. This can be used to connect to the semantic layer JDBC. +6. After you’ve entered your credentials, you should see connection information that will allow you to connect to downstream tools. If the tool you are using can connect with JDBC, you can save the **JDBC URL** or each of the individual components provided (e.g., environment id, host). Alternatively, if the tool you connect to uses the Semantic Layer GraphQL API, save the GraphQL API host information. 7. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. Save this token for later. 8. You’re done 🎉! The semantic layer should is now enabled for your project. --> From d123c595f5471290f5f0abbdbbe260ee44212cc2 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Tue, 18 Jul 2023 14:38:48 -0700 Subject: [PATCH 168/703] Update sl-revamp-beta.md Trying to fix this broken link --- .../dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 8d37cd78c5d..9c0b7f34828 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -11,7 +11,7 @@ We are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use - [MetricFlow](/docs/build/about-metricflow), a framework for constructing performant and legible SQL from an all new set of semantic constructs which include semantic models, entities, and metrics. - New Semantic Layer Infrastructure that enables support for more data platforms (Snowflake, Databricks, BigQuery, Redshift and soon more) and improved performance. -- New and Improved [developer workflows](/docs/guides/migration/sl-migration), governance, and collaboration features. +- New and Improved [developer workflows](/guides/migration/sl-migration), governance, and collaboration features. - New [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to query metrics and build integrations. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. From 0f830c11b376e1444d382dd02dee6995209c75dc Mon Sep 17 00:00:00 2001 From: rpourzand Date: Tue, 18 Jul 2023 15:13:06 -0700 Subject: [PATCH 169/703] Update sl-graphql.md More GQL info --- website/docs/docs/dbt-cloud-apis/sl-graphql.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index d468bdb71f6..4c29838bf0d 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -14,25 +14,32 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; -[GraphQL](https://graphql.org/) is an open-source query language for APIs. It offers a more efficient and flexible approach compared to traditional RESTful APIs. +[GraphQL](https://graphql.org/) (GQL) is an open-source query language for APIs. It offers a more efficient and flexible approach compared to traditional RESTful APIs. With GraphQL, users can request specific data using a single query, reducing the need for many server round trips. This improves performance and minimizes network overhead. GraphQL has several advantages, such as self-documenting, having a strong typing system, supporting versioning and evolution, enabling rapid development, and having a robust ecosystem. These features make GraphQL a powerful choice for APIs that prioritize flexibility, performance, and developer productivity. +dbt Partners can use the Semantic Layer GraphQL API to build and integration with the dbt Semantic Layer. + ## dbt Semantic Layer GraphQL API -The dbt Semantic Layer GraphQL API offers capabilities like the JDBC API. It allows you to explore and execute commands conveniently through its self-documenting nature using the schema explorer (need link from roxi). +The dbt Semantic Layer GraphQL API allows you to explore and query metrics and dimensions. Due to it's self-documenting nature, you can explore the calls conveniently through the [schema explorer](https://cloud.getdbt.com/semantic-layer/api/graphql). + +## Using the GraphQL API +If you are a dbt user or partner with access to dbt Cloud and the Semantic Layer, you can setup and test this API in your oown instance by configuring the Semantic Layer and obtaining the right GQL onnection parameters provided. (PROVIDE link to set up?) ### Authentication -Authentication uses a dbt Cloud Service token passed through a header as follows: +Authentication uses a dbt Cloud Service token passed through a header as follows. To explore the schema, you can enter this information in the "header" section. ``` {"Authorization": "Bearer "} ``` +Each GQL request also comes with a dbt Cloud Environment Id. Our API will use the combination of the Service Token in the header and Environment Id to authenticate. + ### Metric metadata calls From 91435da0ad7b080545d3d674c1d63cf351175d91 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Tue, 18 Jul 2023 15:18:09 -0700 Subject: [PATCH 170/703] Update sl-jdbc.md A note on "using the jdbc api" --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index d8595a24572..84610bd4d3b 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -24,9 +24,16 @@ A JDBC driver is a software component enabling a Java application to interact wi - You can embed the driver into your application stack as needed, and you can use dbt Labs' [example project](https://github.com/dbt-labs/example-semantic-layer-clients) for reference. - If you’re a partner or user building a homegrown application, you’ll need to install an AWS root CA to the Java Trust [documentation](https://www.amazontrust.com/repository/) (specific to Java and JDBC call). +Partners of dbt Labs can use the JDBC API to build integrations in their tools with the dbt Semantic Layer + + +## Using the JDBC API + +If you are a dbt user or partner with access to dbt Cloud and the Semantic Layer, you can setup and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right JDBC connection parameters described in this document. (PROVIDE link to set up?). + ## Connection parameters -The JDBC connection requires a few different connection parameters. We provide the full JDBC string that you can connect with as well as the individual components required. +The JDBC connection requires a few different connection parameters. This is an example of a URL connection string and the individual components: @@ -43,6 +50,7 @@ jdbc:arrow-flight-sql://semantic-layer.cloud.getdbt.com:443?&environmentId=20233 *Note — If you're testing locally on a tool like DataGrip, you may also have to provide the following variable at the end or beginning of the JDBC URL `&disableCertificateVerification=true`. + ## Querying the API for metric metadata The Semantic Layer JDBC API has built-in metadata calls which can provide a user with information about their metrics and dimensions. Here are some metadata commands and examples: From dd5c6092bda4671aa2c34c1a651c7edb3453f7f4 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Tue, 18 Jul 2023 15:18:52 -0700 Subject: [PATCH 171/703] Update sl-graphql.md adding the same note for GQL --- website/docs/docs/dbt-cloud-apis/sl-graphql.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index 4c29838bf0d..1d9eb08b769 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -28,7 +28,7 @@ The dbt Semantic Layer GraphQL API allows you to explore and query metrics and d ## Using the GraphQL API -If you are a dbt user or partner with access to dbt Cloud and the Semantic Layer, you can setup and test this API in your oown instance by configuring the Semantic Layer and obtaining the right GQL onnection parameters provided. (PROVIDE link to set up?) +If you are a dbt user or partner with access to dbt Cloud and the Semantic Layer, you can setup and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right GQL connection parameters described in this document. (PROVIDE link to set up?). ### Authentication From 1991ca0bf45c956a88481c345eff6a0acec40fa8 Mon Sep 17 00:00:00 2001 From: Jeremy Cohen Date: Wed, 19 Jul 2023 01:04:19 +0200 Subject: [PATCH 172/703] Revise v1.6 migration guide (#3728) resolves #3696 resolves #3723 Revise v1.6 migration guide for readability. Still a handful of TODOs. ### Materialized views - Add `VersionBlock` components for adapter MVs, missed in https://github.com/dbt-labs/docs.getdbt.com/pull/3593 - We seem to be missing docs on Snowflake dynamic tables. I don't know why https://github.com/dbt-labs/docs.getdbt.com/issues/3494 was closed. ### Other updates - Add manifest v10 (will need addition to schemas.getdbt.com: https://github.com/dbt-labs/schemas.getdbt.com/issues/24) - Add note to upgrade guide for `state:old` and `state:unmodified` (missed in https://github.com/dbt-labs/docs.getdbt.com/pull/3596). I haven't done a thorough comb-through of other closed v1.6 PRs to see what needs addition to the migration guide. --- website/dbt-versions.js | 2 +- .../govern/project-dependencies.md | 4 +- .../versions/01-upgrading-to-v1.6.md | 64 +++++++++++++++---- .../docs/reference/artifacts/dbt-artifacts.md | 1 + .../docs/reference/artifacts/manifest-json.md | 57 ++++------------- website/docs/reference/commands/cmd-docs.md | 21 ++++-- .../docs/reference/node-selection/defer.md | 8 ++- .../docs/reference/node-selection/syntax.md | 14 +++- 8 files changed, 100 insertions(+), 71 deletions(-) diff --git a/website/dbt-versions.js b/website/dbt-versions.js index 1c6cb52dad1..01d1bf5d128 100644 --- a/website/dbt-versions.js +++ b/website/dbt-versions.js @@ -1,7 +1,7 @@ exports.versions = [ { version: "1.6", - EOLDate: "2024-07-20", // placeholder - need to confirm the final date + EOLDate: "2024-07-31", isPrerelease: true }, { diff --git a/website/docs/docs/collaborate/govern/project-dependencies.md b/website/docs/docs/collaborate/govern/project-dependencies.md index 3469ec1a7b6..158c405e4a7 100644 --- a/website/docs/docs/collaborate/govern/project-dependencies.md +++ b/website/docs/docs/collaborate/govern/project-dependencies.md @@ -5,8 +5,8 @@ sidebar_label: "Project dependencies" description: "Reference public models across dbt projects" --- -:::info -"Project" dependencies and cross-project `ref` is currently in closed beta and are features of dbt Cloud Enterprise. To access these features, please contact your account team. +:::caution Closed Beta - dbt Cloud Enterprise +"Project" dependencies and cross-project `ref` are features of dbt Cloud Enterprise, currently in Closed Beta. To access these features while they are in beta, please contact your account team at dbt Labs. ::: For a long time, dbt has supported code reuse and extension by installing other projects as [packages](/docs/build/packages). When you install another project as a package, you are pulling in its full source code, and adding it to your own. This enables you to call macros and run models defined in that other project. diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index 52850239a53..cb1e9af603d 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -1,17 +1,19 @@ --- -title: "Upgrading to v1.6 (beta)" +title: "Upgrading to v1.6 (prerelease)" description: New features and changes in dbt Core v1.6 --- -:::warning Beta Functionality +:::warning Prerelease -dbt Core v1.6 is in beta, and the features and functionality on this page are subject to change. +dbt Core v1.6 is available as a release candidate. [Final release is planned for July 31.](https://github.com/dbt-labs/dbt-core/issues/7990) + +Test it out, and [let us know](https://github.com/dbt-labs/dbt-core/issues/new/choose) if you run into any issues! ::: ## Resources -- [Changelog](https://github.com/dbt-labs/dbt-core/blob/main/CHANGELOG.md) +- [Changelog](https://github.com/dbt-labs/dbt-core/blob/1.6.latest/CHANGELOG.md) - [CLI Installation guide](/docs/core/installation) - [Cloud upgrade guide](/docs/dbt-versions/upgrade-core-in-cloud) - [Release schedule](https://github.com/dbt-labs/dbt-core/issues/7481) @@ -22,24 +24,58 @@ dbt Labs is committed to providing backward compatibility for all versions 1.x, ### Behavior changes -**Coming soon** +- dbt Core v1.6 does not support Python 3.7, which reached End Of Life on June 23. Support Python versions are 3.8, 3.9, 3.10, and 3.11. +- As part of the Semantic layer re-launch (in beta), the spec for `metrics` has changed significantly. Migration guide coming soon: https://github.com/dbt-labs/docs.getdbt.com/pull/3705 +- Manifest schema version is now v10, reflecting [TODO] changes + +### For consumers of dbt artifacts (metadata) + +The [manifest](/reference/artifacts/manifest-json) schema version has updated to `v10`. Specific changes: +- Addition of `semantic_models` and changes to `metrics` attributes +- Addition of `deprecation_date` as a model property +- Addition of `on_configuration_change` as default node configuration (to support materialized views) +- Small type changes to `contracts` and `constraints` +- Manifest `metadata` includes `project_name` + +### For maintainers of adapter plugins +For more detailed information and to ask questions, please read and comment on the GH discussion: [dbt-labs/dbt-core#7958](https://github.com/dbt-labs/dbt-core/discussions/7958). ## New and changed documentation -[`dbt retry`](/reference/commands/retry) is a new command that executes the previously run command from the point of failure. This convenient command enables you to continue a failed command without rebuilding all upstream dependencies. +### Materialized views -**Materialized view** support (for model and project configs) has been added for three data warehouses: - - [Bigquery](/reference/resource-configs/bigquery-configs#materialized-view) - - [Postgres](/reference/resource-configs/postgres-configs#materialized-view) - - [Redshift](/reference/resource-configs/redshift-configs#materialized-view) +Supported on: +- [Postgres](/reference/resource-configs/postgres-configs#materialized-view) +- [Redshift](/reference/resource-configs/redshift-configs#materialized-view) +- Snowflake (docs forthcoming) -[**Namespacing:**](/faqs/Models/unique-model-names) Model names can be duplicated across different namespaces (packages/projects), so long as they are unique within each package/project. We strongly encourage using [two-argument `ref`](/reference/dbt-jinja-functions/ref#two-argument-variant) when referencing a model from a different package/project. +Support for BigQuery and Databricks forthcoming. -[**Project dependencies**](/docs/collaborate/govern/project-dependencies): Introduces `dependencies.yml` and dependent `projects` as a feature of dbt Cloud Enterprise. Allows enforcing model access (public vs. protected/private) across project/package boundaries. Enables cross-project `ref` of public models, without requiring the installation of upstream source code. +### New commands for mature deployment -### Quick hits +[`dbt retry`](/reference/commands/retry) executes the previously run command from the point of failure. Rebuild just the nodes that errored or skipped in a previous run/build/test, rather than starting over from scratch. + +[`dbt clone`](/reference/commands/clone) leverages each data platform's functionality for creating lightweight copies of dbt models from one environment into another. Useful when quickly spinning up a new development environment, or promoting specific models from a staging environment into production. + +### Multi-project collaboration -More consistency and flexibility around packages! Resources defined in a package will respect variable and global macro definitions within the scope of that package. +[**Deprecation date**](/reference/resource-properties/deprecation_date): Models can declare a deprecation date that will warn model producers and downstream consumers. This enables clear migration windows for versioned models, and provides a mechanism to facilitate removal of immature or little-used models, helping to avoid project bloat. + +[Model names](/faqs/Models/unique-model-names) can be duplicated across different namespaces (projects/packages), so long as they are unique within each project/package. We strongly encourage using [two-argument `ref`](/reference/dbt-jinja-functions/ref#two-argument-variant) when referencing a model from a different package/project. + +More consistency and flexibility around packages. Resources defined in a package will respect variable and global macro definitions within the scope of that package. - `vars` defined in a package's `dbt_project.yml` are now available in the resolution order when compiling nodes in that package, though CLI `--vars` and the root project's `vars` will still take precedence. See ["Variable Precedence"](/docs/build/project-variables#variable-precedence) for details. - `generate_x_name` macros (defining custom rules for database, schema, alias naming) follow the same pattern as other "global" macros for package-scoped overrides. See [macro dispatch](/reference/dbt-jinja-functions/dispatch) for an overview of the patterns that are possible. + +:::caution Closed Beta - dbt Cloud Enterprise +[**Project dependencies**](/docs/collaborate/govern/project-dependencies): Introduces `dependencies.yml` and dependent `projects` as a feature of dbt Cloud Enterprise. Allows enforcing model access (public vs. protected/private) across project/package boundaries. Enables cross-project `ref` of public models, without requiring the installation of upstream source code. +::: + +### Quick hits + +- [`state:unmodified` and `state:old`](/reference/node-selection/methods#the-state-method) for [MECE](https://en.wikipedia.org/wiki/MECE_principle) stateful selection +- [`invocation_args_dict`](/reference/dbt-jinja-functions/flags#invocation_args_dict) includes full `invocation_command` as string +- [`dbt debug --connection`](/reference/commands/debug) to test just the data platform connection specified in a profile +- [`dbt docs generate --empty-catalog`](/reference/commands/cmd-docs) to skip catalog population while generating docs +- [`--defer-state`](/reference/node-selection/defer) enables more-granular control diff --git a/website/docs/reference/artifacts/dbt-artifacts.md b/website/docs/reference/artifacts/dbt-artifacts.md index 2fbcc329484..b20c1548d99 100644 --- a/website/docs/reference/artifacts/dbt-artifacts.md +++ b/website/docs/reference/artifacts/dbt-artifacts.md @@ -39,6 +39,7 @@ All artifacts produced by dbt include a `metadata` dictionary with these propert In the manifest, the `metadata` may also include: - `send_anonymous_usage_stats`: Whether this invocation sent [anonymous usage statistics](/reference/global-configs/usage-stats) while executing. +- `project_name`: The `name` defined in the root project's `dbt_project.yml`. (Added in manifest v10 / dbt Core v1.6) - `project_id`: Project identifier, hashed from `project_name`, sent with anonymous usage stats if enabled. - `user_id`: User identifier, stored by default in `~/dbt/.user.yml`, sent with anonymous usage stats if enabled. diff --git a/website/docs/reference/artifacts/manifest-json.md b/website/docs/reference/artifacts/manifest-json.md index c71c073d842..3a916ed6d4c 100644 --- a/website/docs/reference/artifacts/manifest-json.md +++ b/website/docs/reference/artifacts/manifest-json.md @@ -2,53 +2,18 @@ title: "Manifest JSON file" sidebar_label: "Manifest" --- - -**dbt Core v1.5 produces schema**: [`v9`](https://schemas.getdbt.com/dbt/manifest/v9/index.html) - - - - - -**dbt Core v1.4 produces schema**: [`v8`](https://schemas.getdbt.com/dbt/manifest/v8/index.html) - - - - - -**dbt Core v1.3 produces schema**: [`v7`](https://schemas.getdbt.com/dbt/manifest/v7/index.html) - - - - - -**dbt Core v1.2 produces schema**: [`v6`](https://schemas.getdbt.com/dbt/manifest/v6/index.html) - - - - - -**dbt Core v1.1 produces schema**: [`v5`](https://schemas.getdbt.com/dbt/manifest/v5/index.html) - - - - - -**dbt Core v1.0 produces schema**: [`v4`](https://schemas.getdbt.com/dbt/manifest/v4/index.html) - - - - - -**Produced by:** [`build`](/reference/commands/build) [`compile`](/reference/commands/compile) [`docs generate`](/reference/commands/cmd-docs) [`list`](/reference/commands/list) [`seed`](/reference/commands/seed) [`snapshot`](/reference/commands/snapshot) [`source freshness`](/reference/commands/source) [`test`](/reference/commands/test) [`run`](/reference/commands/run) [`run-operation`](/reference/commands/run-operation) - - - - - -**Produced by:** [`build`](commands/build) [`compile`](commands/compile) [`docs generate`](commands/cmd-docs) [`list`](commands/list) [`parse`](commands/parse) [`run`](commands/run) [`run-operation`](commands/run-operation) [`seed`](commands/seed) [`show`](commands/show) [`snapshot`](commands/snapshot) [`source freshness`](commands/source) [`test`](commands/test) - - +| dbt Core version | Manifest version | +|------------------|---------------------------------------------------------------| +| v1.6 | [v10](https://schemas.getdbt.com/dbt/manifest/v10/index.html) | +| v1.5 | [v9](https://schemas.getdbt.com/dbt/manifest/v9/index.html) | +| v1.4 | [v8](https://schemas.getdbt.com/dbt/manifest/v8/index.html) | +| v1.3 | [v7](https://schemas.getdbt.com/dbt/manifest/v7/index.html) | +| v1.2 | [v6](https://schemas.getdbt.com/dbt/manifest/v6/index.html) | +| v1.1 | [v5](https://schemas.getdbt.com/dbt/manifest/v5/index.html) | +| v1.0 | [v4](https://schemas.getdbt.com/dbt/manifest/v4/index.html) | + +**Produced by:** Any command that parses your project. This includes all commands **except** [`deps`](/reference/commands/deps), [`clean`](/reference/commands/clean), [`debug`](/reference/commands/debug), [`init`](/reference/commands/init) This single file contains a full representation of your dbt project's resources (models, tests, macros, etc), including all node configurations and resource properties. Even if you're only running some models or tests, all resources will appear in the manifest (unless they are disabled) with most of their properties. (A few node properties, such as `compiled_sql`, only appear for executed nodes.) diff --git a/website/docs/reference/commands/cmd-docs.md b/website/docs/reference/commands/cmd-docs.md index e96f825d2d9..754c5e93baf 100644 --- a/website/docs/reference/commands/cmd-docs.md +++ b/website/docs/reference/commands/cmd-docs.md @@ -10,22 +10,35 @@ id: "cmd-docs" The command is responsible for generating your project's documentation website by -1. copying the website `index.html` file into the `target/` directory -2. compiling the project to `target/manifest.json` -3. producing the `target/catalog.json` file, which contains metadata about the tables and views produced by the models in your project. +1. Copying the website `index.html` file into the `target/` directory +2. Compiling the resources in your project, so that their `compiled_code` will be included in [`manifest.json`](/reference/artifacts/manifest-json) +3. Running queries against database metadata to produce the [`catalog.json`](/reference/artifacts/catalog-json) file, which contains metadata about the tables and views produced by the models in your project. **Example**: ``` dbt docs generate ``` -Use the `--no-compile` argument to skip re-compilation. When this flag is provided, `dbt docs generate` will only execute steps (1) and (3), as described above. +Use the `--no-compile` argument to skip re-compilation. When this flag is provided, `dbt docs generate` will skip step (2) described above. **Example**: ``` dbt docs generate --no-compile ``` + + +Use the `--empty-catalog` argument to skip running the database queries to populate `catalog.json`. When this flag is provided, `dbt docs generate` will skip step (3) described above. + +This is not recommended for production environments, as it means that your documentation will be missing information gleaned from database metadata (the full set of columns in each table, and statistics about those tables). It can speed up `docs generate` in development, when you just want to visualize lineage and other information defined within your project. + +**Example**: +``` +dbt docs generate --empty-catalog +``` + + + ### dbt docs serve This command starts a webserver on port 8080 to serve your documentation locally and opens the documentation site in your default browser. The webserver is rooted in your `target/` directory. Be sure to run `dbt docs generate` before `dbt docs serve` because the `generate` command produces a [catalog metadata artifact](/reference/artifacts/catalog-json) that the `serve` command depends upon. You will see an error message if the catalog is missing. diff --git a/website/docs/reference/node-selection/defer.md b/website/docs/reference/node-selection/defer.md index e33f95a5142..6079e53793a 100644 --- a/website/docs/reference/node-selection/defer.md +++ b/website/docs/reference/node-selection/defer.md @@ -9,14 +9,18 @@ title: "Defer" -Deferral is a powerful, complex feature that enables compelling workflows. As the use cases for `--defer` evolve, dbt Labs might make enhancements to the feature, but commit to providing backward compatibility for supported versions of dbt Core. For details, see [dbt#5095](https://github.com/dbt-labs/dbt-core/discussions/5095). - Defer is a powerful feature that makes it possible to run a subset of models or tests in a [sandbox environment](/docs/environments-in-dbt) without having to first build their upstream parents. This can save time and computational resources when you want to test a small number of models in a large project. Defer requires that a manifest from a previous dbt invocation be passed to the `--state` flag or env var. Together with the `state:` selection method, these features enable "Slim CI". Read more about [state](/reference/node-selection/syntax#about-node-selection). An alternative command that accomplishes similar functionality for different use cases is `dbt clone` - see the docs for [clone](/reference/commands/clone#when-to-use-dbt-clone-instead-of-deferral) for more information. + + +It is possible to use separate state for `state:modified` and `--defer`, by passing paths to different manifests to each of the `--state`/`DBT_STATE` and `--defer-state`/`DBT_DEFER_STATE`. This enables more granular control in cases where you want to compare against logical state from one environment or past point in time, and defer to applied state from a different environment or point in time. If `--defer-state` is not specified, deferral will use the manifest supplied to `--state`. In most cases, you will want to use the same state for both: compare logical changes against production, and also "fail over" to the production environment for unbuilt upstream resources. + + + ### Usage ```shell diff --git a/website/docs/reference/node-selection/syntax.md b/website/docs/reference/node-selection/syntax.md index 36e3f03c422..1a43a32e2bc 100644 --- a/website/docs/reference/node-selection/syntax.md +++ b/website/docs/reference/node-selection/syntax.md @@ -81,7 +81,7 @@ Note that when you're using `--selector`, most other flags (namely `--select` an -## About node selection +## Stateful selection One of the greatest underlying assumptions about dbt is that its operations should be **stateless** and ****. That is, it doesn't matter how many times a model has been run before, or if it has ever been run before. It doesn't matter if you run it once or a thousand times. Given the same raw data, you can expect the same transformed result. A given run of dbt doesn't need to "know" about _any other_ run; it just needs to know about the code in the project and the objects in your database as they exist _right now_. @@ -106,7 +106,7 @@ State and defer can be set by environment variables as well as CLI flags: - + - `--state` or `DBT_STATE`: file path - `--defer` or `DBT_DEFER`: boolean @@ -119,6 +119,16 @@ In dbt v1.5, we deprecated the original syntax for state (`DBT_ARTIFACT_STATE_PA + + +- `--state` or `DBT_STATE`: file path +- `--defer` or `DBT_DEFER`: boolean +- `--defer-state` or `DBT_DEFER_STATE`: file path to use for deferral only (optional) + +If `--defer-state` is not specified, deferral will use the artifacts supplied by `--state`. This enables more granular control in cases where you want to compare against logical state from one environment or past point in time, and defer to applied state from a different environment or point in time. + + + If both the flag and env var are provided, the flag takes precedence. #### Notes: From f05cf490b24d4fa94cef85fe19561d760485086c Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Tue, 18 Jul 2023 19:50:57 -0700 Subject: [PATCH 173/703] add cli docs --- website/docs/docs/build/metricflow-cli.md | 247 ++++++++++++++++++++++ 1 file changed, 247 insertions(+) create mode 100644 website/docs/docs/build/metricflow-cli.md diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md new file mode 100644 index 00000000000..36abd524c8d --- /dev/null +++ b/website/docs/docs/build/metricflow-cli.md @@ -0,0 +1,247 @@ +--- +title: MetricFlow CLI +id: metricflow-cli +description: "Query metrics and metadata in your dbt project with the metricflow cli" +sidebar_label: "CLI" +tags: [Metrics, Semantic Layer] +--- + +After you have defined metrics in your dbt project, you can easily query metrics, dimensions, dimension values, and validate your configs using the MetricFlow CLI. + +## Installation +1. Create or activate your virtual environment.`python -m venv venv` +2. Run `pip install dbt-metricflow` + +## CLI commands + +## List +Retrieve metadata values about metrics/dimensions/entities/dimension values + +# List metrics +List the metrics with their available dimensions +``` +mf list metrics +Options: + --search TEXT Filter available metrics by this search term + --show-all-dimensions Show all dimensions associated with a metric. + --help Show this message and exit. +``` + +# List dimensions +List all unique dimensions for a metric or multiple metrics. Only common dimensions are shown if querying multiple metrics +``` +mf list dimensions --metrics +Options: + --metrics SEQUENCE List dimensions by given metrics (intersection). Ex. + --metrics bookings,messages + --help Show this message and exit. +``` + +# List dimension-values +List all dimension values with the corresponding metric +``` +mf list dimension-values --metrics --dimension +Options: + --dimension TEXT Dimension to query values from [required] + --metrics SEQUENCE Metrics that are associated with the dimension + [required] + --end-time TEXT Optional iso8601 timestamp to constraint the end time of + the data (inclusive) + --start-time TEXT Optional iso8601 timestamp to constraint the start time + of the data (inclusive) + --help Show this message and exit. +``` +# List entities +List all unique entities. +``` +mf list entities --metrics +Options: + --metrics SEQUENCE List entities by given metrics (intersection). Ex. + --metrics bookings,messages + --help Show this message and exit. +``` + +## Validate configs + Perform validations against the defined semantic model configurations. +``` +mf validate-configs +Options: + --dw-timeout INTEGER Optional timeout for data warehouse + validation steps. Default None. + --skip-dw If specified, skips the data warehouse + validations + --show-all If specified, prints warnings and future- + errors + --verbose-issues If specified, prints any extra details + issues might have + --semantic-validation-workers INTEGER + Optional. Uses the number of workers + specified to run the semantic validations. + Should only be used for exceptionally large + configs + --help Show this message and exit. +``` + +## Health checks +Performs a health check against the DW provided in the configs. +``` +mf health-checks +``` + +## Tutorial +Runs through a getting started tutorial. + +``` +mf tutorial +``` + +## Query +Create a new query with MetricFlow, execute that query agaisnt the users data platform and return the result. +``` +mf query --metrics --group-by +Options: + --metrics SEQUENCE Metrics to query for: syntax is --metrics bookings + or for multiple metrics --metrics bookings,messages + --group-by SEQUENCE Dimensions and/or entities to group by: syntax is + --group-by ds or for multiple group bys --group-by + ds,org + --end-time TEXT Optional iso8601 timestamp to constraint the end + time of the data (inclusive) + --start-time TEXT Optional iso8601 timestamp to constraint the start + time of the data (inclusive) + --where TEXT SQL-like where statement provided as a string. For + example: --where "revenue > 100" + --limit TEXT Limit the number of rows out using an int or leave + blank for no limit. For example: --limit 100 + --order SEQUENCE Metrics or group bys to order by ("-" prefix for + DESC). For example: --order -ds or --order + ds,-revenue + --csv FILENAME Provide filepath for dataframe output to csv + --explain In the query output, show the query that was + executed against the data warehouse + --show-dataflow-plan Display dataflow plan in explain output + --display-plans Display plans (e.g. metric dataflow) in the browser + --decimals INTEGER Choose the number of decimal places to round for + the numerical values + --show-sql-descriptions Shows inline descriptions of nodes in displayed SQL + --help Show this message and exit. + ``` + + +## Query Examples + +Query metrics by dimensions. + +The following query will retrun the order_amount metric by metric time. +``` +mf query --metrics order_amount --group-by metric_time +✔ Success 🦄 - query completed after 1.24 seconds +| METRIC_TIME | ORDER_AMOUNT | +|:--------------|---------------:| +| 2017-06-16 | 792.17 | +| 2017-06-17 | 458.35 | +| 2017-06-18 | 490.69 | +| 2017-06-19 | 749.09 | +| 2017-06-20 | 712.51 | +| 2017-06-21 | 541.65 | +``` + +You can include multiple dimensions in a query. For example, we can also group by the `is_food_order` dimension to see if orders we're for food or not. + +``` +mf query --metrics order_amount --group-by metric_time, is_food_order + Success 🦄 - query completed after 1.70 seconds +| METRIC_TIME | IS_FOOD_ORDER | ORDER_AMOUNT | +|:--------------|:----------------|---------------:| +| 2017-06-16 | True | 499.27 | +| 2017-06-16 | False | 292.90 | +| 2017-06-17 | True | 431.24 | +| 2017-06-17 | False | 27.11 | +| 2017-06-18 | True | 466.45 | +| 2017-06-18 | False | 24.24 | +| 2017-06-19 | False | 300.98 | +| 2017-06-19 | True | 448.11 | +``` + +You can add order and limit functions to filter and present the data in a readable format. The following query limits the data set to 10 records, and orders by metric time descending. + +``` +mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 --order -metric_time +✔ Success 🦄 - query completed after 1.41 seconds +| METRIC_TIME | IS_FOOD_ORDER | ORDER_AMOUNT | +|:--------------|:----------------|---------------:| +| 2017-08-31 | True | 459.90 | +| 2017-08-31 | False | 327.08 | +| 2017-08-30 | False | 348.90 | +| 2017-08-30 | True | 448.18 | +| 2017-08-29 | True | 479.94 | +| 2017-08-29 | False | 333.65 | +| 2017-08-28 | False | 334.73 | +``` + +You can futher filter the data set by adding a where clause to your query. + +``` + mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 --order -metric_time --where "is_food_order = True" + ✔ Success 🦄 - query completed after 1.06 seconds +| METRIC_TIME | IS_FOOD_ORDER | ORDER_AMOUNT | +|:--------------|:----------------|---------------:| +| 2017-08-31 | True | 459.90 | +| 2017-08-30 | True | 448.18 | +| 2017-08-29 | True | 479.94 | +| 2017-08-28 | True | 513.48 | +| 2017-08-27 | True | 568.92 | +| 2017-08-26 | True | 471.95 | +| 2017-08-25 | True | 452.93 | +| 2017-08-24 | True | 384.40 | +| 2017-08-23 | True | 423.61 | +| 2017-08-22 | True | 401.91 | +``` + +To filter by time, there are dedicated start and end time options. Using these options to filter by time allows MetricFlow to further optimize query performance by pushing down the where filter when appropriate. + +``` + mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 --order -metric_time --where "is_food_order = True" --start-time '2017-08-22' --end-time '2017-08-27' +✔ Success 🦄 - query completed after 1.53 seconds +| METRIC_TIME | IS_FOOD_ORDER | ORDER_AMOUNT | +|:--------------|:----------------|---------------:| +| 2017-08-27 | True | 568.92 | +| 2017-08-26 | True | 471.95 | +| 2017-08-25 | True | 452.93 | +| 2017-08-24 | True | 384.40 | +| 2017-08-23 | True | 423.61 | +| 2017-08-22 | True | 401.91 | +``` + +You can see the SQL metricflow is generating by adding --explain to your query. + +``` + mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 --order -metric_time --where "is_food_order = True" --start-time '2017-08-22' --end-time '2017-08-27' --explain + ✔ Success 🦄 - query completed after 0.28 seconds +🔎 SQL (remove --explain to see data or add --show-dataflow-plan to see the generated dataflow plan): +SELECT + metric_time + , is_food_order + , SUM(order_cost) AS order_amount +FROM ( + SELECT + cast(ordered_at as date) AS metric_time + , is_food_order + , order_cost + FROM ANALYTICS.js_dbt_sl_demo.orders orders_src_1 + WHERE cast(ordered_at as date) BETWEEN CAST('2017-08-22' AS TIMESTAMP) AND CAST('2017-08-27' AS TIMESTAMP) +) subq_3 +WHERE is_food_order = True +GROUP BY + metric_time + , is_food_order +ORDER BY metric_time DESC +LIMIT 10 +``` +To export the results of your query to a csv, simply add the `--csv file_name.csv` flag. + +``` +mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 --order -metric_time --where "is_food_order = True" --start-time '2017-08-22' --end-time '2017-08-27' --csv query_example.csv +✔ Success 🦄 - query completed after 0.83 seconds +🖨 Successfully written query output to query_example.csv +``` \ No newline at end of file From bc686db975ccb077fe59d4a7bdf6665c5363a9c8 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Tue, 18 Jul 2023 20:07:03 -0700 Subject: [PATCH 174/703] add spec for metrics and measures --- website/docs/docs/build/measures.md | 20 ++++++++++++++++++++ website/docs/docs/build/metrics-overview.md | 14 ++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/website/docs/docs/build/measures.md b/website/docs/docs/build/measures.md index f85d21e3dcb..e9922bda8a9 100644 --- a/website/docs/docs/build/measures.md +++ b/website/docs/docs/build/measures.md @@ -15,6 +15,26 @@ Measures are aggregations performed on columns in your model. They can be used a | [`agg`](#aggregation) | dbt supports the following aggregations: `sum`, `max`, `min`, `count_distinct`, and `sum_boolean`. | Required | | [`expr`](#expr) | You can either reference an existing column in the table or use a SQL expression to create or derive a new one. | Optional | | [`non_additive_dimension`](#non-additive-dimensions) | Non-additive dimensions can be specified for measures that cannot be aggregated over certain dimensions, such as bank account balances, to avoid producing incorrect results. | Optional | +|[agg_params]| specific aggregation properties such as a percentile. | [Optional]| +|[agg_time_dimension]| The time field. Defaults to the default agg time dimension for the semantic model. | [Optional] | +|[non_additive_dimension]| configs used if needing non-additive dimensions | [Optional]| +|[label]| How the metric will be displayed in docs and downstream integrations. | [Required]| + + +## Measyres Spec +An example of the complete yaml measures spec is below. The actual configuration of your measures will depend on the aggregation you're using. + +``` +measures: + - name: The name of the measure # think transaction_total. If `expr` not present then this is the expected name of the column [Required] + description: same as always [Optional] + agg: the aggregation type. #think average, sum, max, min, etc.[Required] + expr: the field # think transaction_total or some other name you might want to alias [Optional] + agg_params: specific aggregation properties such as a percentile [Optional] + agg_time_dimension: The time field. Defaults to the default agg time dimension for the semantic model. [Optional] + non_additive_dimension: configs used if needing non-additive dimensions [Optional] + label: How the metric will be displayed in docs and downstream integrations. [Required] +` ### Name diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index e7271ecf417..7658926cb19 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -16,6 +16,20 @@ The keys for metrics definitions are: * `constraint`: For any type of metric, you may optionally include a constraint string, which applies a dimensional filter when computing the metric. You may think of this as your WHERE clause. * `meta`: Additional metadata you want to add to your metric. +An example of the complete metrics spec configuration is below: +``` +metrics: + - name: metric name + description: same as always + type: the type of the metric + type_params: + - specific properties for the metric type + configs: here for `enabled` + label: The display name for your metric. This value will be shown in downstream tools. + filter: | + {{ dimension('name') }} > 0 and {{ dimension(' another name') }} is not null + +``` This page explains the different supported metric types you can add to your dbt project. - [About MetricFlow](/docs/build/about-metricflow) - [Semantic models](/docs/build/semantic-models) - [Metrics](/docs/build/metrics-overview) +- [MetricFlow CLI](/docs/build/metricflow-cli) diff --git a/website/sidebars.js b/website/sidebars.js index bf992619dbc..e11f51feca9 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -257,6 +257,7 @@ const sidebarSettings = { "docs/build/join-logic", "docs/build/validation", "docs/build/metricflow-time-spine", + "docs/build/metricflow-cli", ] }, "docs/build/sl-getting-started", From 9de4f66fa062bc14c5034a882bba82e589c04d3b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 12:20:03 +0100 Subject: [PATCH 183/703] change sidebar --- website/docs/docs/build/metricflow-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index ee048539ac4..8dff28680d4 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -2,7 +2,7 @@ title: MetricFlow CLI id: metricflow-cli description: "Query metrics and metadata in your dbt project with the metricflow cli" -sidebar_label: "MetricFlow CLI" +sidebar_label: "MetricFlow CLI commands" tags: [Metrics, Semantic Layer] --- From eab30e5aeb226f0ae2d4fbf8b9afa7885df9d489 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 12:32:39 +0100 Subject: [PATCH 184/703] active voice --- website/docs/docs/build/metricflow-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 9cab298fd59..6a49f11878f 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -6,7 +6,7 @@ sidebar_label: "MetricFlow CLI commands" tags: [Metrics, Semantic Layer] --- -After you have defined metrics in your dbt project, you can query metrics, dimensions, dimension values, and validate your configs using the MetricFlow command line (CLI). +Once you define metrics in your dbt project, you can query metrics, dimensions, dimension values, and validate your configs using the MetricFlow command line (CLI). ## Installation From 2022dd372ad677ff100bdb6de472dcf742a8f477 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 13:34:41 +0100 Subject: [PATCH 185/703] mirna's tweaks to nick and roxi's updates --- .../docs/dbt-cloud-apis/sl-api-overview.md | 2 +- website/docs/docs/dbt-cloud-apis/sl-graphql.md | 11 ++++++----- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 4 +++- .../06-July-2023/sl-revamp-beta.md | 18 +++++++++--------- .../docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- .../use-dbt-semantic-layer/quickstart-sl.md | 2 +- website/snippets/_new-sl-setup.md | 8 +++++--- website/snippets/_v2-sl-prerequisites.md | 6 +++--- 8 files changed, 29 insertions(+), 24 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index 0490615e491..bc5472a2c01 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -26,7 +26,7 @@ You can use the dbt Semantic Layer for a variety of tools and applications of da * Data discovery and cataloging * Machine learning and data science -The dbt Semantic Layer APIs are available for accounts on [Team or Enterprise plans](https://www.getdbt.com/pricing/), allowing them to query metrics and build integrations. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. +During [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta), the dbt Semantic Layer is accessible to all dbt Cloud Team and Enterprise multi-tenant plans [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America. It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools.
diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index 1d9eb08b769..19154eda216 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -19,16 +19,17 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; With GraphQL, users can request specific data using a single query, reducing the need for many server round trips. This improves performance and minimizes network overhead. GraphQL has several advantages, such as self-documenting, having a strong typing system, supporting versioning and evolution, enabling rapid development, and having a robust ecosystem. These features make GraphQL a powerful choice for APIs that prioritize flexibility, performance, and developer productivity. - -dbt Partners can use the Semantic Layer GraphQL API to build and integration with the dbt Semantic Layer. - ## dbt Semantic Layer GraphQL API The dbt Semantic Layer GraphQL API allows you to explore and query metrics and dimensions. Due to it's self-documenting nature, you can explore the calls conveniently through the [schema explorer](https://cloud.getdbt.com/semantic-layer/api/graphql). +dbt Partners can use the Semantic Layer GraphQL API to build and integration with the dbt Semantic Layer. + ## Using the GraphQL API -If you are a dbt user or partner with access to dbt Cloud and the Semantic Layer, you can setup and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right GQL connection parameters described in this document. (PROVIDE link to set up?). +If you're a dbt user or partner with access to dbt Cloud and the[dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), you can [setup](/docs/use-dbt-semantic-layer/setup-sl) and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right GQL connection parameters described in this document. + +Refer to [Get started with the dbt Semantic Layer](docs/use-dbt-semantic-layer/quickstart-sl) for more info. ### Authentication @@ -38,7 +39,7 @@ Authentication uses a dbt Cloud Service token passed through a header as follows {"Authorization": "Bearer "} ``` -Each GQL request also comes with a dbt Cloud Environment Id. Our API will use the combination of the Service Token in the header and Environment Id to authenticate. +Each GQL request also comes with a dbt Cloud environmentId. The API uses both the service token in the header and environmentId for authentication. ### Metric metadata calls diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 84610bd4d3b..25163eb05d6 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -29,7 +29,9 @@ Partners of dbt Labs can use the JDBC API to build integrations in their tools w ## Using the JDBC API -If you are a dbt user or partner with access to dbt Cloud and the Semantic Layer, you can setup and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right JDBC connection parameters described in this document. (PROVIDE link to set up?). +If you are a dbt user or partner with access to dbt Cloud and the[dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), you can [setup](/docs/use-dbt-semantic-layer/setup-sl) and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right JDBC connection parameters described in this document. + +Refer to [Get started with the dbt Semantic Layer](docs/use-dbt-semantic-layer/quickstart-sl) for more info. ## Connection parameters diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 9c0b7f34828..ec2ebeca7f1 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -7,11 +7,11 @@ date: 2023-07-31 sidebar_position: 9 --- -We are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), now available in [public beta](#public-beta). It aims to bring the best of modeling and semantics to downstream applications by introducing: +dbt Labs are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), now available in [public beta](#public-beta). It aims to bring the best of modeling and semantics to downstream applications by introducing: -- [MetricFlow](/docs/build/about-metricflow), a framework for constructing performant and legible SQL from an all new set of semantic constructs which include semantic models, entities, and metrics. -- New Semantic Layer Infrastructure that enables support for more data platforms (Snowflake, Databricks, BigQuery, Redshift and soon more) and improved performance. -- New and Improved [developer workflows](/guides/migration/sl-migration), governance, and collaboration features. +- [MetricFlow](/docs/build/about-metricflow) is a framework for constructing performant and legible SQL from an all new set of semantic constructs which include semantic models, entities, and metrics. +- New Semantic Layer infrastructure that enables support for more data platforms (Snowflake, Databricks, BigQuery, Redshift, and soon more), along with improved performance. +- New and improved [developer workflows](/guides/migration/sl-migration), governance, and collaboration features. - New [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to query metrics and build integrations. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. @@ -24,7 +24,7 @@ What sets the dbt Semantic Layer apart is its ability to centralize logic for ma We are excited to present several important capabilities with the enhanced dbt Semantic Layer: -- **Consistent organization**: Provides a consistent view of data, ensuring that metrics and definitions match across the organization and teh breadth of interfaces where data is consumed. This fosters trust in data and drives better decision-making by eliminating inconsistencies and errors that come up when individual users define metrics independently. +- **Consistent organization**: Provides a consistent view of data, ensuring that metrics and definitions match across the organization and the breadth of interfaces where data is consumed. This fosters trust in data and drives better decision-making by eliminating inconsistencies and errors that come up when individual users define metrics independently. - **Improved governance**: The dbt Semantic Layer ensures proper governance and auditing of data changes, providing an auditable record of modifications and clear ownership. This saves time by making it clear who can create and manage new metrics, ensuring accountability and data integrity. @@ -32,7 +32,7 @@ We are excited to present several important capabilities with the enhanced dbt S - **Enhanced efficiency**: With the dbt Semantic Layer, data teams can create and update metrics using a new set of validations that make defining and iterating on metrics efficient. The streamlined development workflows makes it simpler for a data team to serve large organizations with broad data needs. -- **Accessible data**: Defining common metrics and dimensions and making them joinable, makes access simpler for users with less expertise in the specifics of a companies data modeling work. This creates opportunities to leverage data insights, fostering collaboration and driving innovation in a more inclusive data environment. +- **Accessible data**: Defining common metrics and dimensions and making them joinable, makes access simpler for users with less expertise in the specifics of a company's data modeling work. This creates opportunities to leverage data insights, fostering collaboration and driving innovation in a more inclusive data environment. By bringing these enhancements to the dbt Semantic Layer, we enable organizations of all sizes and industries to leverage the power of semantics in their data workflows. @@ -42,11 +42,11 @@ The dbt Semantic Layer is currently available as a public beta, which means: - **Who** — To experience the new dbt Semantic Layer, you must be on a dbt Cloud [Team and Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plan, [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America and on dbt v1.6 and higher. Look out for announcements on removing the location requirement soon. - - Developer plans or dbt Core users can use MetricFlow to define and test metrics using the dbt-metricflow CLI only. + - Developer plans or dbt Core users can use MetricFlow to define and test metrics using the dbt MetricFlow CLI only. -- **What** — Public beta provides early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability later this year. We may also introduce new functionality that isn't backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer in October 2023. For now, there will be no billing for usage. If you have any questions on pricing please reach out to your account rep. +- **What** — Public beta provides early access to new features. The dbt Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability later this year. We may also introduce new functionality that isn't backwards compatible. We provide support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer in October 2023. For now, there will be no billing for usage. If you have any questions on pricing please reach out to your account representative. -- **When** — Public beta starts on July 31 and will end once the dbt Semantic Layer is available for GA in October 2023. +- **When** — Public beta starts on July 31, 2023 and will end once the dbt Semantic Layer is available for GA in October 2023. - **Where** — You can experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 6a2d3ea392d..d79e4ddf6fb 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -22,7 +22,7 @@ To read more about why you need a universal Semantic Layer, read this [blog post ## Explore the dbt Semantic Layer -During [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta), the dbt Semantic Layer is accessible to all dbt Cloud Team and Enterprise multi-tenant plans [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America. It's available on dbt v1.6 or newer. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. +During [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta), the dbt Semantic Layer is accessible to all dbt Cloud Team and Enterprise multi-tenant plans [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America. It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools.
diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index d8a6608e84d..70e6300df02 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -150,7 +150,7 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; ## Connect and query APIs -add content here +This step requires you to connect to the [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview). Once you've connected to an API, you should then set up and query metrics in your downstream tool of choice. Refer to [dbt Semantic Layer Apis](/docs/dbt-cloud-apis/sl-api-overview) and [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. ## FAQs diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 1e8631db14e..3e8fdf5d867 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -11,9 +11,11 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 4. Enter the credentials you want the Semantic Layer to use specific to your data platform. * Note: We recommend using a less privileged set of credentials because your Semantic Layer users will be querying it in downstream applications. At a minimum, the Semantic Layer needs to have read access to the schema(s) that contains the dbt models that you used to build your semantic models. 5. Select the deployment environment you want for the Semantic Layer -6. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. -7. Save & copy your environment ID, service token, and host for inputting into a downstream tool -8. Great job, you've configured the Semantic Layer 🎉! +6. You should see connection information that allows you to connect to downstream tools. + * If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). If it uses the Semantic Layer GraphQL API, save the GraphQL API host information instead. +7. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. +8. Save & copy your environment ID, service token, and host for inputting into a downstream tool +9. Great job, you've configured the Semantic Layer 🎉! diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 1063e8e961d..d602e5d0d3b 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -1,15 +1,15 @@ -- Have a [multi-tenant dbt Cloud](/docs/deploy/regions) instance, hosted in North America +- Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America - Have both your production and development environments running dbt version 1.6 or higher - Use Snowflake, BigQuery, Databricks, and Redshift data platform - A successful run in the environment where your Semantic Layer is configured * Note — Deployment environment is currently supported (_development experience coming soon_) -- Install the [MetricFlow command line (CLI)](https://github.com/dbt-labs/metricflow) package +- Install the [MetricFlow CLI](/docs/build/metricflow-cli) * Note — After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/use-dbt-semantic-layer/sl-api-overview) in the integrated tool to import metric definitions - * Developer accounts will be able to query manually via the CLI using SQL. To dynamically query metrics using external tools, you'll need access to the Semantic Layer APIs.
+ * Developer accounts will be able to query manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you'll need access to the Semantic Layer APIs.
From 36ad75ee7d32d142d33df568ab3a32c8230d7ee3 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 13:44:32 +0100 Subject: [PATCH 186/703] fix space --- website/docs/docs/dbt-cloud-apis/sl-graphql.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index 19154eda216..e834346d016 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -27,7 +27,7 @@ dbt Partners can use the Semantic Layer GraphQL API to build and integration wit ## Using the GraphQL API -If you're a dbt user or partner with access to dbt Cloud and the[dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), you can [setup](/docs/use-dbt-semantic-layer/setup-sl) and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right GQL connection parameters described in this document. +If you're a dbt user or partner with access to dbt Cloud and the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), you can [setup](/docs/use-dbt-semantic-layer/setup-sl) and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right GQL connection parameters described in this document. Refer to [Get started with the dbt Semantic Layer](docs/use-dbt-semantic-layer/quickstart-sl) for more info. From a067a4a8213def3004ba6e32df606977b69fa6d7 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 14:28:29 +0100 Subject: [PATCH 187/703] put partner guide back in --- .../sl-partner-integration-guide.md | 660 ++++++++++++++++++ website/sidebars.js | 1 + 2 files changed, 661 insertions(+) create mode 100644 website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md new file mode 100644 index 00000000000..6f7ae1df2e7 --- /dev/null +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -0,0 +1,660 @@ +--- +title: "dbt Semantic Layer integration" +id: "sl-partner-integration-guide" +description: Learn about partner integration guidelines, roadmap, and connectivity. +--- + +# dbt Semantic Layer partner integration + +:::info Coming soon +The dbt Semantic Layer is undergoing some sophisticated changes, enabling more complex metric definitions and efficient querying. As part of these changes, the dbt_metrics package will be deprecated and replaced with MetricFlow. For more info, check out the [The dbt Semantic Layer: what's next?](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/) and [dbt_metrics deprecation](https://docs.getdbt.com/blog/deprecating-dbt-metrics) blog. +::: + +This guide is for dbt Semantic Layer integration partners and explains integration guidelines, and connectivity.
+ +To become a formal partner, integrate with the API, or have questions/feedback — **[contact us](mailto:semantic-layer@dbtlabs.com)** for more info. + +The dbt Semantic Layer allows users to dynamically generate and query datasets in downstream tools based on their dbt governed assets, such as metrics, models, and entities. It helps organizations manage complexities such as data, tools, and teams to make more efficient and trustworthy decisions. + +The rapid growth of different tools in the modern data stack has helped data professionals address the diverse needs of different teams. The downside of this growth is the fragmentation of business logic across teams, tools, and workloads. + +To solve this, the dbt Semantic Layer provides a platform where users can confidently leverage their data from within their tools. dbt Cloud's change management capabilities ensure that any user modifications made to core business constructs, like metrics or entities, are distributed into all the tools connected to the data platform. + +The dbt Semantic Layer can be used for a variety of tools and applications of data. Here are some common use cases + +* Business intelligence (BI), reporting, and analytics, +* Data quality and monitoring, +* Governance and privacy, +* Data discovery and cataloging, +* Machine learning and data science. + +:::info Share your use case + +If you'd like to share other use cases for the dbt Semantic Layer, contact the [dbt Labs team](mailto:semantic-layer@dbtlabs.com). + +::: + + +## Product overview + +The dbt Semantic Layer product architecture includes four primary components: + +| Components | Information | Developer plans | Team plans | Enterprise plans | License | +| --- | --- | :---: | :---: | :---: | --- | +| **[dbt Project](/docs/build/metrics)** | Define models and metrics in dbt Core. | ✅ | ✅ | ✅ | Open source in dbt Core | +| **[dbt Server](https://github.com/dbt-labs/dbt-server)**| A persisted HTTP server that wraps dbt Core to handle RESTful API requests for dbt operations. | ✅ | ✅ | ✅ | BSL | +| **SQL Proxy** | Reverse-proxy that accepts dbt-SQL (SQL + Jinja-like query models and metrics, use macros), compiles the query into pure SQL, executes the query in the data platform, and returns the data. | ✅

_* Available during Public Preview only_ | ✅ | ✅ | Proprietary in dbt Cloud | +| **[Discovery API](/docs/dbt-cloud-apis/discovery-api)** | Accesses metric definitions primarily via integrations and is the source of truth for objects defined in dbt projects (like models, macros, sources, and metrics). The Discovery API is updated at the end of every dbt Cloud run. | ❌ | ✅ | ✅ | Proprietary in dbt Cloud | + +Review the following current architecture to understand how the components work together: + + + + +## Integration guidelines + +In collaboration with dbt Labs, partners and users can build dbt Semantic Layer integrations that can import model metadata and metric definitions, query metrics, use macros, and more. + +For more details, refer to the [Integration roadmap](#integration) and [Integration best practices](#best-practices) guidance. + +**Integration roadmap ** + +Integration partners generally build and approach their roadmap in the following stages: + +| Feature | Info | Availability | +|----------|-------|:------------:| +| **Model metadata** | Import/sync model metadata (descriptions, dimensions, test, freshness, and more) via the [dbt Cloud Discovery API](/docs/dbt-cloud-apis/discovery-api). | ✅ | +| **Metric definitions** | Import/sync metric definitions (metric calculation, dimensions, description, and more) via the [dbt Cloud Discovery API](/docs/dbt-cloud-apis/discovery-api). | ✅ | +| **dbt Semantic Layer as a data source** | Connect to the dbt Semantic Layer as a data source (for example, the Snowflake Proxy Server). Users can execute dbt-SQL to query metrics or models and use macros.* | ✅ | +| **Query metrics** | Query the imported metrics via a metric-centric UI (for example, a user can select a metric, time grain, and dimensions of interest). | ✅ | +| **Entity definitions** | Import/sync entity definitions (descriptions, dimensions, data types, relationships, metrics, and more) and query entities via the dbt Semantic Layer. | _*Coming soon | +| **dbt Semantic Layer Connector** | A dedicated connector with the ability to query any data platform supported in dbt Cloud. (Will replace (3).) | _*Coming soon | + +_*The coming soon features are expected to launch in 2023. + +**Integration best practices ** + +To build a successful and seamless dbt Semantic Layer integration, it should express the following: + +- **Consistent**: Have a consistent user experience (UX) incorporated into existing core user workflows. +- **Trustworthy**: Treat dbt assets (metrics, models, and entities) as first-class objects and indicate that their definitions and resulting datasets come from dbt Cloud. +- **Efficient**: Provide a clear advantage over the current approach to setting up metrics and analyses, and finding dimensions/datasets in the tool. +- **Accessible**: Include a self-serve component so a data consumer can ask questions via the user interface (UI), if applicable. + + +## Use the Discovery API + +This section will explain how to connect to and query the [Discovery API](/docs/dbt-cloud-apis/discovery-api) for model and metric definitions. + +To use the dbt Semantic Layer, you must meet the [prerequisites](/docs/use-dbt-semantic-layer/dbt-sl#prerequisites). + +
+ Discovery API authorization +
+
Refer to our Authorization documentation to learn how to authorize requests to the Discovery API.



+ + Metrics-specific queries work identical to existing Discovery API queries. This means existing integrations that query model metadata will work perfectly in the context of metrics. +
+
+
+ +
+ Query the Discovery API +
+
Test out the Discovery API by using the GraphQL sandbox and use this Python client as a starting point to develop. +
+
+
+

+ + + +### Query models for a project + +You can query model definitions or details about a specific model for a project from a given job. + + + + + + + +This is an example of querying all models that utilize the schema`analytics` from a given job. + +``` +{ + models(jobId: 181329, schema: "analytics") { + name + status + compileCompletedAt + database + dbtVersion + runGeneratedAt + } +} +``` + + + + +``` +{ + "data": { + "models": [ + { + "name": "customers", + "status": "success", + "compileCompletedAt": "2022-12-15T06:37:24.186Z", + "database": "analytics", + "dbtVersion": "1.3.1", + "runGeneratedAt": "2022-12-15T06:37:25.187Z" + }, + { + "name": "stg_customers", + "status": "success", + "compileCompletedAt": "2022-12-15T06:37:22.509Z", + "database": "analytics", + "dbtVersion": "1.3.1", + "runGeneratedAt": "2022-12-15T06:37:25.187Z" + }, + { + "name": "stg_orders", + "status": "success", + "compileCompletedAt": "2022-12-15T06:37:22.509Z", + "database": "analytics", + "dbtVersion": "1.3.1", + "runGeneratedAt": "2022-12-15T06:37:25.187Z" + } + ] + } +} +``` + + + + +This is an example of querying details about a specific model, `model.jaffle_shop.customers`, from a given job. + +``` +{ + model(jobId: 181329, uniqueId: "model.jaffle_shop.customers") { + parentsModels { + runId + uniqueId + executionTime + } + } +} +{ + "data": { + "model": { + "parentsModels": [ + { + "runId": 105297555, + "uniqueId": "model.jaffle_shop.stg_customers", + "executionTime": 1.676571846008301 + }, + { + "runId": 105297555, + "uniqueId": "model.jaffle_shop.stg_orders", + "executionTime": 1.631831407546997 + } + ] + } + } +} +``` + + + + + + +### Query metrics for a project + +Query metrics definitions or details for a project from a given job and refer to the following resources: + +- [Metrics query](/docs/dbt-cloud-apis/discovery-schema-metrics) — Information on how to query the full list of metrics defined in a user’s project with the dbt Cloud Discovery API. +- [dbt Metrics docs](https://docs.getdbt.com/docs/build/metrics#available-properties) — Information on the available metric properties. +- [GraphQL sandbox](https://studio.apollographql.com/sandbox/explorer?endpoint=https%3A%2F%2Fmetadata.cloud.getdbt.com%2Fgraphql) — Access to test the dbt Cloud Discovery API testing environment. + + + + + + +This is an example listing metrics from a given job: + +``` +{ + metrics(jobId: 123) { + name + label + description + model + dependsOn + calculation_method + expression + timestamp + timeGrains + dimensions + window + filters + tags + meta + } +} +``` + + + + +The `metric` query supports all metric properties listed in **Listing metrics**. +The following abbreviated example is querying details about the metric `new_customers` from job `123`: + +This is an example of querying details about a specific metric `new_customers` from a given job `123`. + +``` +{ + metric(jobId: 123) { + label + calculation_method + timestamp + timeGrains + dimensions + } +} +``` + + + + + +``` +{ + "data": { + "metrics": [ + { + "uniqueId": "metric.claim_to_fame.total_claim_charges", + "name": "total_claim_charges", + "tags": [], + "label": "Total Claim Charges", + "calculation_method": "sum", + "expression": "total_charge_amount", + "timestamp": "created_at", + "timeGrains":[ + "day", + "week", + "month" + ], + "meta": {}, + "resourceType": "metric", + "model": { + "name": "fct_billed_patient_claims" + } + }, + { + "uniqueId": "metric.claim_to_fame.total_billed_diagnoses", + "name": "total_billed_diagnoses", + "tags": [], + "label": "Total Billed Diagnoses", + "calculation_method": "count_distinct", + "expression": "diagnosis_id", + "timestamp": "created_at", + "timeGrains":[ + "week", + "month", + "year" + ], + "meta": {}, + "resourceType": "metric", + "model": { + "name": "fct_billed_patient_claims" + }, + } + ] + } +} +``` + + + + + +``` +metrics: + - name: total_claim_charges + label: Total Claim Charges + model: ref('fct_billed_patient_claims') + calculation_method: sum + expression: total_charge_amount + timestamp: created_at + time_grains: [day, week, month, all_time] + + + - name: total_billed_diagnoses + label: Total Billed Diagnoses + model: ref('fct_billed_patient_claims') + calculation_method: count_distinct + expression: diagnosis_id + timestamp: created_at + time_grains: [day, week, month] +``` + + + + + + + + +## Query the dbt Semantic Layer + +This section explains how to connect to or query the dbt Semantic Layer Proxy Server to return model data, metric data, and so on. + +When you configure the dbt Semantic Layer, dbt Cloud provides a Proxy Server endpoint that users can connect to as though it's a Snowflake-hosted endpoint. Once the queries are submitted, dbt Cloud will: + +1. Compile dbt-sql queries into valid Snowflake SQL, +2. Execute the compiled SQL against the Snowflake data platform, +3. Return the results to the client. + +Replace the hostname in your existing data platform connection with the relevant dbt Cloud Proxy Server URL (for example, `abc123.proxy.cloud.getdbt.com`). All queries you submit through the endpoint will be compiled en route to the data platform.* + +*_Note: This approach will change with the new Semantic Layer connection in mid-2023, which will be able to query all data platforms supported in dbt Cloud through dedicated JDBC/ODBC drivers, and eventually an API._ + + + + + + + +Users can compile and execute metric queries using macros defined in the [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics). This package: + +- Generates the SQL required to accurately calculate the metric definition, +- Supplies helper macros for derived calculations (like month over month, year to date, and so on) time series operations + + +``` +select * +from {{ metrics.calculate( + metric_list=[metric('customers'), metric(‘revenue’)], + grain='week', + dimensions=['plan', 'country'], + secondary_calculations=[ + metrics.period_to_date(aggregate="sum", period="year"), + metrics.rolling(aggregate="average", interval=4, alias="avg_past_4wks") + ], + start_date='2020-01-01', + end_date="date_trunc('day', getdate())" +) }} +``` + + + + + +Model queries allow users to query models and use macros from their dbt project. + +``` +select cents_to_dollars('amount_cents') as amount_dollars +from {{ ref('orders') }} +``` + + + +### Entities + + +dbt Labs will introduce a new node type, **[entity](https://github.com/dbt-labs/dbt-core/issues/6379)**, when dbt Core version 1.5 launches. It introduces a new and efficient way to define metrics by reusing logic (for example, `time_grains`). + +Entities are semantic objects made up of curated dimensions from models with more metadata defined. Over time, users can standardize metric and entity definitions with packages to speed up development. + +For integrations, entities will provide information like: + +- a way to organize metrics based on the entity they reference, and +- a new consumable and dynamically generated dataset (versus finding a table in the data platform). + +This information will be available alongside the Discovery API, and entities can be directly queried through the dbt Semantic Layer. + + + +:::caution 🚧 + +Entities are a work in progress — expect continuous changes and improvements. To stay up-to-date, refer to the [entity discussions](https://github.com/dbt-labs/dbt-core/issues/6379) page. + +::: + + + + + + + +Define entities in your dbt project. + +``` +entities: ## The top-level path of the new node + - name: [Required] ## The name of the entity + model: [Required] ## The name of the model that the entity is dependent on + description: [Optional] ## The description of the entity + + dimensions: [Optional] ## The list of dimensions & properties associated with the entity. + - include: [Optional] * + - exclude: [Optional] + - name: [Required] ## The name of the dimension + column_name: [Optional] ## The name of the column in the model if not 1:1. Serves as mapping + data_type: [Optional] ## The data type of the dimension + description: [Optional] ## Description of the dimension + default_timestamp: [Optional] ## Setting datetime dimension as default for metrics + time_grains: [Optional] ## Acceptable time grains for the datetime dimension + primary_key: [Optional] ## Whether this dimension is part of the primary key +``` + + + + +Query entities via the Discovery API. + +``` +"entity.project_name.entity_name": { + "unique_id": "entity.project_name.entity_name", + "package_name": "project_name", + "original_file_path": "models/metric_definitions/ratio_metric.yml", + "name": "entity_name", + "model": "ref('model_name')", + "description": "some description", + "dimensions": { + "dimension_name": { + "name": "dimension_name", + "column_name": "column_name", + "default_timestamp": "true", + "time_grains": "[day, week, month, year]" + "primary_key": true, + "data_type": null, + "description": "TBD", + "meta": {}, + } + }, + "resource_type": "entity", + "meta": {}, + "tags": [], + "config": { + "enabled": true, + }, + "depends_on": { + "macros": [], + "nodes": [ + "model.project_name.model_name", + ] + }, + "docs": { + "show": true, + "node_color": null + }, + "refs": [ + [ + "model_name", + ] + ], + "created_at": 1669653016.522599 + }, + ``` + + + + +How to define new [metrics](/docs/build/metrics) in your dbt project. The metric definition and metadata response will change accordingly once entities are introduced, notably with metrics referencing entities instead of models and inheriting entity dimensions. + + ``` + metrics: + ## Always required + - name: [Required] ## The name of the metric + label: [Required] ## The human-readable name of the metric + calculation_method: [Required] ## The calculation/aggregation used for the metric + expression: [Required] ## The SQL expression being aggregated/calculated + entity: [Required] ## The entity being used as the source of the metric + + ## Always optional + description: [Optional] ## Any description about the metric + timestamp: [Optional] ## The name of the timestamp field to use + time_grains: [Optional] ## The list of time grains that are permitted + filters: [Optional] ## The filters of the metric + window: [Optional] ## The ability to make a metric cumulative over a time period + config: [Optional] ## Additional information for configuring the output + + ## Either or dimensions: + include: [Optional] ## The list of dimensions to be included. Either * or list + exclude: [Optional] ## The list of dimensions to be excluded from the inherited list + ``` + + + + + +``` +"metric.project_name.metric_name": { + "fqn": [ + "project_name", + "folder_name", + "metric_name" + ], + "unique_id": "metric.project_name.metric_name", + "package_name": "project_name", + "root_path": "file_path", + "path": "file_path", + "original_file_path": "file_path", + "name": "metric_name", + "description": "description", + "entity": "entity_name", + "label": "Human readable version", + "calculation_method": "the calc method", + "timestamp": "the timestamp field", + "time_grains": [ + "day", + "week" + ], + "expression": "a field name or sql expression", + "dimensions": [ + { + "entity_name": [ + "had_discount", + "order_country" + ] + } + ], + "window": null, + "resource_type": "metric", + "filters": [], + "meta": {}, + "tags": [], + "config": { + "enabled": true + }, + "unrendered_config": {}, + "sources": [], + "depends_on": { + "macros": [], + "nodes": [ + "entity.projet_name.entity_name", + ] + }, + "entities": [ + [ + "entity_name" + ] + ], + "metrics": ["used for derived metrics"], + "created_at": 1669653027.290001 + }, + ``` + + + + +Query an entity using dbt-SQL. Eventually, users will be able to query entities and dynamically generate datasets using a macro (like with metrics), without having to find specific tables or columns. + +``` +select * +from {{ entities.calculate( + entity_list=[...], [Required, one to start] + dimensions: [...], [Optional, default is all] + metrics: [...], [Optional, default is all at finest grain] + filters: ... + )}} + ``` + + + +### dbt Semantic Layer Connector + +In order to support more data platforms and enhance the user experience, users will be able to connect to a [dbt Cloud-supported data platform](/docs/cloud/connect-data-platform/about-connections) with the dbt Semantic Layer. + +Integration partners need to install the [Arrow FlightSQL](https://arrow.apache.org/docs/format/FlightSql.html) JDBC/ODBC driver, which will authenticate with dbt Cloud and the data platform that it queries. + + + + + +### dbt Semantic Layer API + +dbt Cloud will provide a web API that supports: + +- Compiling dbt-SQL queries to return their compiled SQL. +- Executing dbt-SQL queries and returning the queried results from the data platform. + +The API will be a viable integration point with the dbt Semantic Layer. It will be authorized by a [dbt Cloud service token](/docs/dbt-cloud-apis/service-tokens) and eventually support the invocation of dbt commands (e.g., `dbt run`, `dbt test`, etc.) in the future. + + +## Contact us + +### For dbt Semantic Layer support + +For partner and customer support, please email the [Support team](mailto:support@getdbt.com). Please ensure the message includes: + +- "Semantic Layer" +- The name of the partner software +- The dbt Cloud account ID of the customer, if you are a partner making the inquiry + +### For product and partnerships + +If you'd like to become a formal partner, have product feedback/questions, or are interested in integrating, email the [Product and Partnership team](mailto:semantic-layer@dbtlabs.com). + + + +## Related docs + +- [dbt Semantic Layer docs](https://docs.getdbt.com/docs/use-dbt-semantic-layer/dbt-sl) to learn about the product. +- [dbt Metrics docs](https://docs.getdbt.com/docs/building-a-dbt-project/metrics) for more information about its components. +- [dbt Semantic Layer intro blog](https://www.getdbt.com/blog/dbt-semantic-layer/) and [launch blog](https://www.getdbt.com/blog/frontiers-of-the-dbt-semantic-layer/) to learn more about the product vision and purpose. +- [dbt Semantic Layer integrations page](https://www.getdbt.com/product/semantic-layer-integrations) for information about the available partner integrations. + + diff --git a/website/sidebars.js b/website/sidebars.js index 7a4e961c6be..5012c0c216f 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -1084,6 +1084,7 @@ const sidebarSettings = { "guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project", ], }, + "guides/dbt-ecosystem/databricks-guides/sl-partner-integration-guide", ], }, { From e96674ae57a9ebaeb6d1b35e9d8be9d0827c44e7 Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Wed, 19 Jul 2023 10:23:17 -0400 Subject: [PATCH 188/703] update spotlight text --- website/docs/community/spotlight/fabiyi-opeyemi.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/community/spotlight/fabiyi-opeyemi.md b/website/docs/community/spotlight/fabiyi-opeyemi.md index dee785cda11..f26ee27910b 100644 --- a/website/docs/community/spotlight/fabiyi-opeyemi.md +++ b/website/docs/community/spotlight/fabiyi-opeyemi.md @@ -38,4 +38,4 @@ I've learned how to show empathy as a data professional and be a great engineer ## Anything else interesting you want to tell us? -Maybe, I will consider DevRel as a career sometime 😀 because of my innate passion and love for community and people. Several folks tell me I'm a strong DevRel talent any product-led company would be lucky to have, so you can reach out if you need someone to drive your community engagement, haha 😂. +Maybe, I will consider DevRel as a career sometime because of my innate passion and love for community and people. Several folks tell me I'm a strong DevRel talent and a valuable asset for any product-led company. If you need someone to bounce ideas off of or discuss😃 your community engagement efforts, please feel free to reach out. From 6963cea971257f3fb1a7d415d6eba30421306e0e Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 16:16:19 +0100 Subject: [PATCH 189/703] org tabs better --- website/docs/docs/build/metricflow-cli.md | 34 +++++++++++++++-------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 6a49f11878f..0098d470def 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -8,7 +8,7 @@ tags: [Metrics, Semantic Layer] Once you define metrics in your dbt project, you can query metrics, dimensions, dimension values, and validate your configs using the MetricFlow command line (CLI). -## Installation +# Installation You can install the [MetricFlow CLI](https://github.com/dbt-labs/metricflow#getting-started) from [PyPI](https://pypi.org/project/dbt-metricflow/). You need to use `pip` to install the MetricFlow CLI on Windows or Linux operating systems: @@ -17,7 +17,7 @@ You can install the [MetricFlow CLI](https://github.com/dbt-labs/metricflow#gett The MetricFlow CLI is compatible with Python versions 3.8, 3.9, 3.10 and 3.11 -## CLI commands +# CLI commands The MetricFlow CLI provides the following commands to retrieve metadata and query metrics. @@ -33,13 +33,13 @@ To execute the commands, use the `mf` prefix before the command name. For exampl - [`tutorial`](#tutorial) — Dedicated MetricFlow tutorial to help get you started. - [`query`](#query) — Query metrics and dimensions you want to see in the CLI. Refer to [query examples](#query-examples) to help you get started. -### List +## List This command retrieves metadata values related to [Metrics](/docs/build/metrics-overview), [Dimensions](/docs/build/dimensions), and [Entities](/docs/build/entities) values. For example, if you're trying to retrieve the `name` metadata value for a metric, you can use the following command: -### List metrics +## List metrics This command lists the metrics with their available dimensions: @@ -51,7 +51,7 @@ Options: --help Show this message and exit. ``` -### List dimensions +## List dimensions This command lists all unique dimensions for a metric or multiple metrics. It displays only common dimensions when querying multiple metrics: @@ -63,7 +63,7 @@ Options: --help Show this message and exit. ``` -### List dimension-values +## List dimension-values This command lists all dimension values with the corresponding metric: @@ -79,7 +79,7 @@ Options: of the data (inclusive) --help Show this message and exit. ``` -### List entities +## List entities This command lists all unique entities: @@ -114,7 +114,7 @@ Options: --help Show this message and exit. ``` -### Health checks +## Health checks This command performs a health check against the data platform you provided in the configs: @@ -122,7 +122,7 @@ This command performs a health check against the data platform you provided in t mf health-checks ``` -### Tutorial +## Tutorial Follow the dedicated MetricFlow tutorial to help you get started: @@ -130,7 +130,7 @@ Follow the dedicated MetricFlow tutorial to help you get started: mf tutorial ``` -### Query +## Query Create a new query with MetricFlow, execute that query against the user's data platform, and return the result: @@ -165,7 +165,7 @@ Options: ``` -### Query examples +## Query examples The following tabs presents various different types of query examples that you can use to query metrics and dimensions. Select the tab that best suits your needs: @@ -220,6 +220,7 @@ mf query --metrics order_amount --group-by metric_time, is_food_order + **Example 3** — You can add order and limit functions to filter and present the data in a readable format. The following query limits the data set to 10 records and orders them by `metric_time`, descending. @@ -297,6 +298,17 @@ mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 + + + +### Additional query examples + +The following tabs presents additional query examples, like exporting to a CSV. Select the tab that best suits your needs: + + + + + **Example 6** — Add `--explain` to your query to view the SQL generated by MetricFlow. From 6f9e3d7c71d71c0ffdd284d307468735c20efcd5 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 17:07:46 +0100 Subject: [PATCH 190/703] fix headers --- website/docs/docs/build/metricflow-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 0098d470def..32ec5864b7a 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -91,7 +91,7 @@ Options: --help Show this message and exit. ``` -### Validate-configs +## Validate-configs This command performs validations against the defined semantic model configurations: From 44209776e402d4357730ed16652aff3ba81defec Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Wed, 19 Jul 2023 09:09:27 -0700 Subject: [PATCH 191/703] Update auto-update config --- .github/workflows/autoupdate.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/autoupdate.yml b/.github/workflows/autoupdate.yml index 4105ec6b902..352a34b4b7a 100644 --- a/.github/workflows/autoupdate.yml +++ b/.github/workflows/autoupdate.yml @@ -4,9 +4,9 @@ on: # This will trigger on all pushes to all branches. push: {} # Alternatively, you can only trigger if commits are pushed to certain branches, e.g.: - # push: - # branches: - # - current + push: + branches: + - current # - unstable jobs: autoupdate: From bac3b31d7a19f057f5510976b5392b36717c5086 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 17:12:42 +0100 Subject: [PATCH 192/703] adding cumulative metrics --- website/docs/docs/build/about-metricflow.md | 1 + website/docs/docs/build/metrics-overview.md | 5 +++-- website/sidebars.js | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index 6ec7ecfe4b5..d96d477c1fb 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -60,6 +60,7 @@ Metrics, which is a key concept, are functions that combine measures, constraint MetricFlow supports different metric types: +- [Cumulative](/docs/build/cumulative-metrics) — Aggregates a measure over a given window. - [Derived](/docs/build/derived) — An expression of other metrics, which allows you to do calculations on top of metrics. - [Ratio](/docs/build/ratio) — Create a ratio out of two measures, like revenue per customer. - [Simple](/docs/build/simple) — Metrics that refer directly to one measure. diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index e7271ecf417..103b7a242bc 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -25,7 +25,7 @@ This page explains the different supported metric types you can add to your dbt - [Ratio](#ratio-metrics) — Create a ratio out of two measures. --> - ### Derived metrics [Derived metrics](/docs/build/derived) are defined as an expression of other metrics. Derived metrics allow you to do calculations on top of metrics. @@ -145,7 +144,9 @@ You can set more metadata for your metrics, which can be used by other tools lat ## Related docs - [Semantic models](/docs/build/semantic-models) +- [Cumulative](/docs/build/cumulative-metrics) - [Derived](/docs/build/derived) + diff --git a/website/sidebars.js b/website/sidebars.js index bf992619dbc..1a1b33ab1db 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -275,6 +275,7 @@ const sidebarSettings = { label: "Metrics", link: { type: "doc", id: "docs/build/metrics-overview"}, items: [ + "docs/build/cumulative", "docs/build/derived", "docs/build/ratio", "docs/build/simple", From 3f8a9adf536cd8469a7b540880a824ecbc90f9f7 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 17:19:13 +0100 Subject: [PATCH 193/703] fix links --- website/docs/docs/build/about-metricflow.md | 2 +- website/docs/docs/build/metrics-overview.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index d96d477c1fb..5a42fcd7b3e 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -60,7 +60,7 @@ Metrics, which is a key concept, are functions that combine measures, constraint MetricFlow supports different metric types: -- [Cumulative](/docs/build/cumulative-metrics) — Aggregates a measure over a given window. +- [Cumulative](/docs/build/cumulative) — Aggregates a measure over a given window. - [Derived](/docs/build/derived) — An expression of other metrics, which allows you to do calculations on top of metrics. - [Ratio](/docs/build/ratio) — Create a ratio out of two measures, like revenue per customer. - [Simple](/docs/build/simple) — Metrics that refer directly to one measure. diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index 103b7a242bc..b2cadb9116f 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -144,7 +144,7 @@ You can set more metadata for your metrics, which can be used by other tools lat ## Related docs - [Semantic models](/docs/build/semantic-models) -- [Cumulative](/docs/build/cumulative-metrics) +- [Cumulative](/docs/build/cumulative) - [Derived](/docs/build/derived) From 991ff053a24e97b0a6b5b3c5631c1c1d428953ab Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Wed, 19 Jul 2023 09:36:52 -0700 Subject: [PATCH 194/703] Update .github/workflows/autoupdate.yml --- .github/workflows/autoupdate.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/autoupdate.yml b/.github/workflows/autoupdate.yml index 352a34b4b7a..f26abcb6802 100644 --- a/.github/workflows/autoupdate.yml +++ b/.github/workflows/autoupdate.yml @@ -2,7 +2,7 @@ name: Auto Update on: # This will trigger on all pushes to all branches. - push: {} +# push: {} # Alternatively, you can only trigger if commits are pushed to certain branches, e.g.: push: branches: From 5bbfa6b81dea5b9fb594d36ce96c5021d3c011e7 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 19 Jul 2023 17:49:11 +0100 Subject: [PATCH 195/703] Update metrics-overview.md adding timespine info --- website/docs/docs/build/metrics-overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index b2cadb9116f..351c674ca8a 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -28,7 +28,7 @@ This page explains the different supported metric types you can add to your dbt ### Cumulative metrics -[Cumulative metrics](/docs/build/cumulative) aggregate a measure over a given window. Note that if no window is specified, the window would accumulate the measure over all time. +[Cumulative metrics](/docs/build/cumulative) aggregate a measure over a given window. If no window is specified, the window would accumulate the measure over all time. **Note**m, you will need to create the [time spine model](/docs/build/metricflow-time-spine) before you add cumulative metrics. ```yaml # Cumulative metrics aggregate a measure over a given window. The window is considered infinite if no window parameter is passed (accumulate the measure over all time) From cc7ea5938a4290b5cf9e23a5e93f1c6c28242719 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 19 Jul 2023 17:51:43 +0100 Subject: [PATCH 196/703] Update cumulative-metrics.md --- website/docs/docs/build/cumulative-metrics.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index 77d23d32dce..efdde600635 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -8,6 +8,12 @@ tags: [Metrics, Semantic Layer] Cumulative metrics aggregate a measure over a given window. If no window is specified, the window is considered infinite and accumulates values over all time. +:::info MetricFlow time spine required + +You will need to create the [time spine model](/docs/build/metricflow-time-spine) before you add cumulative metrics. + +::: + ```yaml # Cumulative metrics aggregate a measure over a given window. The window is considered infinite if no window parameter is passed (accumulate the measure over all time) metrics: @@ -24,7 +30,7 @@ metrics: ### Window options -This section details examples for when you specify and don't specify window options. +This section details examples of when you specify and don't specify window options. @@ -56,7 +62,7 @@ metrics: window: 7 days ``` -From the sample yaml above, note the following: +From the sample YAML above, note the following: * `type`: Specify cumulative to indicate the type of metric. * `type_params`: Specify the measure you want to aggregate as a cumulative metric. You have the option of specifying a `window`, or a `grain to date`. @@ -142,7 +148,7 @@ metrics: ```yaml metrics: name: revenue_monthly_grain_to_date #For this metric, we use a monthly grain to date - description: Monthly revenue using a grain to date of 1 month (think of this as a monthly resetting point) + description: Monthly revenue using grain to date of 1 month (think of this as a monthly resetting point) type: cumulative type_params: measures: From 014175fabafc408ec19fba0b0f866ee46ea2fdf6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 19 Jul 2023 18:07:31 +0100 Subject: [PATCH 197/703] Update website/docs/docs/build/metricflow-cli.md --- website/docs/docs/build/metricflow-cli.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 32ec5864b7a..23ac3c14079 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -41,6 +41,9 @@ For example, if you're trying to retrieve the `name` metadata value for a metric ## List metrics +```bash +mf list + This command lists the metrics with their available dimensions: ```bash From 5a74d72318938843de735ad0937b3bdb27ecd090 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 19 Jul 2023 18:07:54 +0100 Subject: [PATCH 198/703] Update website/docs/docs/build/metricflow-cli.md --- website/docs/docs/build/metricflow-cli.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 23ac3c14079..9e934e9ccca 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -37,7 +37,6 @@ To execute the commands, use the `mf` prefix before the command name. For exampl This command retrieves metadata values related to [Metrics](/docs/build/metrics-overview), [Dimensions](/docs/build/dimensions), and [Entities](/docs/build/entities) values. -For example, if you're trying to retrieve the `name` metadata value for a metric, you can use the following command: ## List metrics From ff192709adeedb2bc637ddb5bdd4928946552e48 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 19 Jul 2023 18:35:12 +0100 Subject: [PATCH 199/703] links --- website/docs/docs/dbt-versions/experimental-features.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/website/docs/docs/dbt-versions/experimental-features.md b/website/docs/docs/dbt-versions/experimental-features.md index 35c64146149..3d7454215f7 100644 --- a/website/docs/docs/dbt-versions/experimental-features.md +++ b/website/docs/docs/dbt-versions/experimental-features.md @@ -21,3 +21,8 @@ To enable or disable experimental features: 2. Find Experimental features at the bottom of Your Profile page. 3. Click **Beta** to toggle the features on or off as shown in the following image. ![Experimental features](/img/docs/dbt-versions/experimental-feats.png) + +## Beta terms and conditions + +By using or enabling beta features/products, you agree to the Beta terms and conditions. Download the [Beta terms and conditions](/docs/cloud/about-cloud/assets/beta-t&c.docx) for more info. + From 85ef0e8e359a1f5577277059d86fbf10ec2d9b41 Mon Sep 17 00:00:00 2001 From: Anders Swanson Date: Wed, 19 Jul 2023 12:59:52 -0400 Subject: [PATCH 200/703] snowflake dynamic tables: first draft --- .../resource-configs/snowflake-configs.md | 67 ++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 42ee3635089..154f8795eea 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -77,7 +77,7 @@ select ... ``` -In this example, you can set up a query tag to be applied to every query with the model's name. +In this example, you can set up a query tag to be applied to every query with the model's name. ```sql @@ -341,3 +341,68 @@ In the configuration format for the model SQL file: + + + +## Dynamic Tables + +[Dynamic Tables](https://docs.snowflake.com/en/user-guide/dynamic-tables-about) are Snowflake's flavor of Materialized Views. The `CREATE DYNAMIC TABLE` ([docs](https://docs.snowflake.com/en/sql-reference/sql/create-dynamic-table)) statement requires the following parameters `TARGET_LAG` and `WAREHOUSE`, so a dbt-snowflake user must also provide these. + +You can create a dynamic table by editing _one_ of these files: + +- the SQL file for your model +- the `dbt_project.yml` configuration file + +The following examples create a dynamic table: + + + +```sql +{{ + config( + materialized = 'dynamic_table', + warehouse = 'MY_WAREHOUSE', + target_lag = '10 min', + ) +}} +``` + + + + + +```yaml +models: + path: + materialized: dynamic_table + warehouse: MY_WAREHOUSE + target_lag: '10 min' +``` + + + +### Limitations + +#### Changing materialization to and from "dynamic_table" + +Swapping an already materialized model to be a dynamic table and vise versa. The workaround is the manually drop the existing materialization in the data warehouse before calling `dbt run` again. + +To illustrate, assume for the example model below, `my_model`, that it has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="dynamic_table"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. + + + +```yaml + +{{ config( + materialized="table" # or any model type eg view, incremental +) }} + +``` + + + +#### Altering `target_lag` or `warehouse` + +Currently, changing either the `target_lag` or `warehouse` parameters for a pre-existing Dynamic Table (DT) will result in the Dynamic Table being dropped and replaced, rather than altered. + + From e1354eb2c70de5ad144cefac4100d6a8ebdb13a8 Mon Sep 17 00:00:00 2001 From: Anders Swanson Date: Wed, 19 Jul 2023 13:47:39 -0400 Subject: [PATCH 201/703] updated limitations add postgres limitation --- .../resource-configs/postgres-configs.md | 20 +++++++++++++++++++ .../resource-configs/redshift-configs.md | 8 ++++++++ 2 files changed, 28 insertions(+) diff --git a/website/docs/reference/resource-configs/postgres-configs.md b/website/docs/reference/resource-configs/postgres-configs.md index eb9108ad431..d4f6958ae27 100644 --- a/website/docs/reference/resource-configs/postgres-configs.md +++ b/website/docs/reference/resource-configs/postgres-configs.md @@ -148,4 +148,24 @@ models: ``` +### Limitations + +#### Changing materialization to and from "materialized_view" + +Swapping an already materialized model to be a materialized view and vise versa. The workaround is the manually drop the existing materialization in the data warehouse before calling `dbt run` again. + +To illustrate, assume for the example model below, `my_model`, that it has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="materialized_view"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. + + + +```yaml + +{{ config( + materialized="table" # or any model type eg view, incremental +) }} + +``` + + + diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index a0ebf7e88df..00dfe517cea 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -136,4 +136,12 @@ models: ``` +### Limitations + +#### Changing materialization from "materialized_view" to table or view + +Swapping a materialized view to be a table or view is not supported. The workaround is to manually drop the existing materialized view in the data warehouse before calling `dbt run` again. + +To illustrate, assume for a materialized view, `my_mv.sql`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="view"`, they will get an error. The workaround is to execute `DROP MATERIALIZE VIEW my_mv CASCASE` on the data warehouse before trying the model again. + From dc5ca3bfe0cd14f6756f012ed9b4b62cff2ecd17 Mon Sep 17 00:00:00 2001 From: Anders Swanson Date: Wed, 19 Jul 2023 14:00:48 -0400 Subject: [PATCH 202/703] BQ MVs are not supported --- .../resource-configs/bigquery-configs.md | 45 ------------------- 1 file changed, 45 deletions(-) diff --git a/website/docs/reference/resource-configs/bigquery-configs.md b/website/docs/reference/resource-configs/bigquery-configs.md index c425fd5b94b..1df21af98e4 100644 --- a/website/docs/reference/resource-configs/bigquery-configs.md +++ b/website/docs/reference/resource-configs/bigquery-configs.md @@ -764,48 +764,3 @@ Views with this configuration will be able to select from objects in `project_1. The `grant_access_to` config is not thread-safe when multiple views need to be authorized for the same dataset. The initial `dbt run` operation after a new `grant_access_to` config is added should therefore be executed in a single thread. Subsequent runs using the same configuration will not attempt to re-apply existing access grants, and can make use of multiple threads. - - - -## Materialized view - -The BigQuery adapter supports [materialized views](https://cloud.google.com/bigquery/docs/materialized-views-intro) and refreshes them for every subsequent `dbt run` you execute. For more information, see [Refresh Materialized Views](https://cloud.google.com/bigquery/docs/materialized-views-manage#refresh) in the Google docs. - -Materialized views support the optional configuration `on_configuration_change` with the following values: -- `apply` (default) — attempts to update the existing database object if possible, avoiding a complete rebuild. The following changes can be applied without the need to rebuild the materialized view: - - enable_refresh - - refresh_interval_minutes - - max_staleness -- `skip` — allows runs to continue while also providing a warning that the model was skipped -- `fail` — forces runs to fail if a change is detected in a materialized view - -You can create a materialized view by editing _one_ of these files: -- the SQL file for your model -- the `dbt_project.yml` configuration file - -The following examples create a materialized view: - - - -```sql -{{ - config( - materialized = 'materialized_view', - on_configuration_change = 'apply', - ) -}} -``` - - - - - - -```yaml -models: - path: - materialized: materialized_view -``` - - - From 9ba9816c94876a8f104fd7ce6019fc78a1f64d2c Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Wed, 19 Jul 2023 14:07:34 -0400 Subject: [PATCH 203/703] More updates based on feedback --- .../manage-access/enterprise-permissions.md | 199 +----------------- .../snippets/enterprise-permissions-table.md | 83 ++++---- 2 files changed, 47 insertions(+), 235 deletions(-) diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index de73ba02e9a..ed2ffb68cee 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -20,202 +20,9 @@ The following permission sets are available for assignment in dbt Cloud Enterpri can be granted to dbt Cloud groups which are then in turn granted to users. A dbt Cloud group can be associated with more than one permission sets. -:::info Role permisisons - -The following table lists the standard roles and permissions associated with them in dbt Cloud. Some roles, such as _Stakeholder_ have more nuanced access to features. View the individual role descriptions for more information beyond the table definitions. - -::: - - - -### Account Admin - -- **Has permissions on:** Authorized projects, account-level settings -- **License restrictions:** must have a developer license - -Account Admins have unrestricted access to dbt Cloud accounts. Users with Account Admin permissions can: - -- Create, delete, and modify all projects in an account -- Create, delete, and modify Connections -- Create, delete, and modify Environments -- Create, delete, and modify Groups -- Create, delete, and modify Group Memberships -- Create, delete, and modify Jobs -- Create, delete, and modify outbound webhook subscriptions -- Create, delete, and modify Repositories -- Manage Notification Settings -- Manage account-level [artifacts](/docs/deploy/artifacts) -- Run and cancel jobs -- Use the IDE -- View and modify Account Settings -- Generate [service tokens](/docs/dbt-cloud-apis/service-tokens), such as for [API usage](/docs/dbt-cloud-apis/overview) - -### Security Admin - -- **Has permissions on:** Account-level settings -- **License restrictions:** must have a Developer or an IT license - -Security Admins have access to modify certain account-level settings. Users with Security Admin permissions can: - -- View and modify Account Settings such as: - - View, invite, and modify account users - - Create, delete, and modify Groups - - Create, delete, and modify License Mappings - - Create and modify SSO Configurations - - View and export Audit Logs - - Create, delete, and modify IP Restrictions - -### Billing Admin - -- **Has permissions on:** Account-level settings -- **License restrictions:** must have a Developer or an IT license - -Billing Admins have access to modify certain account-level settings related to billing. Users with Billing Admin permissions can: - -- View and modify **Account Settings** such as: - - View billing information - - Modify billing information (accounts on the Team plan) - - This includes modifying Developer Seat counts for the Account - -### Project Creator -- **Has permissions on:** Authorized projects, account-level settings -- **License restrictions:** must have a developer license - -Project Creators have write and read-only access to dbt Cloud accounts, but do not have the permissions required to modify SSO settings and account integrations. - -Users with Project Creator permissions can: - -- View Account Settings -- View and modify project users -- Create, delete and modify all projects in an account -- Create, delete, and modify Connections -- Create, delete, and modify Environments -- Create, delete, and modify Jobs -- Create, delete, and modify Repositories -- Run and cancel jobs -- Use the IDE -- View Groups -- View Notification Settings - -### Account Viewer - -- **Has permissions on:** Authorized projects, account-level settings -- **License restrictions:** must have a developer license - -Account Viewers have read-only access to dbt Cloud accounts. Users with Account Viewer permissions can: -- View all projects in an account -- View Account Settings -- View account-level artifacts -- View Connections -- View Environments -- View Groups -- View Group Memberships -- View Jobs -- View Notification Settings -- View Repositories - -### Admin -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Admins have unrestricted access to _projects_ in dbt Cloud accounts which they are members of. -Admins can perform the following actions in projects they are assigned to: -- Create, delete, and modify Repositories -- Create, delete, and modify Connections -- Create, delete, and modify Environments -- Create, delete, and modify Group Memberships -- Create, delete, and modify Jobs -- Create, delete, and modify outbound webhook subscriptions -- Run and cancel jobs -- Use the IDE -- View project details - -### Git Admin -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Git Admins can perform the following actions in projects they are assigned to: -- Create, delete, and modify Repositories -- View Connections -- View Environments -- View Jobs -- View project details - -### Database Admin -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Database Admins can perform the following actions in projects they are assigned to: -- Create, delete, and modify Connections -- View Environments -- View Jobs -- View project details -- View Repositories - -### Team Admin -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Team Admins can perform the following actions in projects they are assigned to: -- View Groups -- View Environments -- View Jobs -- View project details -- View Repositories - -### Job Admin -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Job Admins can perform the following actions in projects they are assigned to: -- Create, delete, and modify Jobs -- Run and cancel jobs -- View connections -- View, edit, and create environments -- View historical runs - -### Job Viewer -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Job Viewers can perform the following actions in projects they are assigned to: -- View environments -- View historical runs -- View job definitions - -### Developer -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Developers can perform the following actions in projects they are assigned to: -- Configure personal developer credentials -- Create, delete, and modify Jobs -- Create, delete, and modify outbound webhook subscriptions -- Run and cancel jobs -- Use the IDE - -### Analyst -- **Has permissions on:** Authorized projects -- **License restrictions:** must have a developer license - -Analysts can perform the following actions in projects they are assigned to: -- Configure personal developer credentials -- Configure environmental variables -- View connections -- View environments -- View historical runs -- View job definitions -- Use the IDE - - -### Stakeholder -- **Has permissions on:** Authorized projects -- **License restrictions:** Intended for use with Read-Only licenses, but may be used with Developer licenses. - -Stakeholders can perform the following actions in projects they are assigned to: -- View generated documentation -- View generated source freshness reports -- View the Read-Only dashboard + + + ## Diagram of the Permission Sets diff --git a/website/snippets/enterprise-permissions-table.md b/website/snippets/enterprise-permissions-table.md index eda75a6e396..3fec61264ac 100644 --- a/website/snippets/enterprise-permissions-table.md +++ b/website/snippets/enterprise-permissions-table.md @@ -2,56 +2,61 @@ Key: * (W)rite — Create new or modify existing. Includes `send`, `create`, `delete`, `allocate`, `modify`, and `read`. -* (M)odify — Change existing fields but can not create new. Includes `delete` and `read`. -* (R)ead — Can view but canm not create or change any fields. -* ❌ = No access to the feature -* ✅ = Can access feature that does not use C/M/D/V permissions +* (R)ead — Can view but can not create or change any fields. -## Account role permissions +Permissions: + +* Account-level permissions — Permissions related to management of the dbt Cloud account. For example, billing and account settings. +* Project-level permissions — Permissions related to the projects in dbt Cloud. For example, repos and access to the IDE. + +## Account roles +Account roles are primarily designed for managing the dbt Cloud account. Permissions to alter the account settings (for example, generating service tokens, inviting users, configuring SSO). They may also have access to project-level permissions as well. The **Account Admin** role is the highest level of access that can be assigned. ### Account permissions -| | Account Admin | Billing admin | Project creator | Security admin | Viewer | -|-------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| -| Account settings | W | | R | R | R | -| Audit logs | R | | | R | | -| Auth provider | W | | | W | R | -| Billing | W | W | | | R | -| Invitations | W | | W | W | R | -| IP restrictions | W | | | W | R | -| Members | W | | W | W | R | -| Project (create) | W | | W | | | -| Public models | R | R | R | R | R | -| Service tokens | W | | | R | | -| Webhooks | W | | | | | +| Account-level permission| Account Admin | Billing admin | Project creator | Security admin | Viewer | +|:-------------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| +| Account settings | W | | R | R | R | +| Audit logs | R | | | R | | +| Auth provider | W | | | W | R | +| Billing | W | W | | | R | +| Invitations | W | | W | W | R | +| IP restrictions | W | | | W | R | +| Members | W | | W | W | R | +| Project (create) | W | | W | | | +| Public models | R | R | R | R | R | +| Service tokens | W | | | R | | +| Webhooks | W | | | | | ### Project permissions -| | Account Admin | Billing admin | Project creator | Security admin | Viewer | -|-------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| -| Connections | W | | W | | R | -| Credentials | W | | W | | R | -| Custom environment variables| W | | W | | R | -| dbt adapters | W | | W | | R | -| Develop (IDE) | W | | W | | | -| Environments | W | | W | | R | -| Groups | W | | R | W | R | -| Jobs | W | | W | | R | -| Licenses | W | | W | W | R | -| Metadata | R | | R | | R | -| Permissions | W | | W | W | R | -| Profile | W | | W | | R | -| Projects | W | | W | R | R | -| Repositories | W | | W | | R | -| Runs | W | | W | | R | -| Semantic Layer Config| W | | W | | R | +|Project-level permission | Account Admin | Billing admin | Project creator | Security admin | Viewer | +|:-------------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| +| Connections | W | | W | | R | +| Credentials | W | | W | | R | +| Custom env variables | W | | W | | R | +| dbt adapters | W | | W | | R | +| Develop (IDE) | W | | W | | | +| Environments | W | | W | | R | +| Groups | W | | R | W | R | +| Jobs | W | | W | | R | +| Licenses | W | | W | W | R | +| Metadata | R | | R | | R | +| Permissions | W | | W | W | R | +| Profile | W | | W | | R | +| Projects | W | | W | R | R | +| Repositories | W | | W | | R | +| Runs | W | | W | | R | +| Semantic Layer Config | W | | W | | R | ## Project role permissions +The project roles are intended for users who will be working within the projects in various capacities. They'll primarily have access to project-level permissions such as repos and the IDE, but may also have some account-level permisions. + ### Account permissions -| | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | +| Account-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | |--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| | Account settings | R | | R | | R | | | | | | R | | | Auth provider | | | | | | | | | | | | | @@ -65,11 +70,11 @@ Key: ### Project permissions -| | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | +|Project-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | |--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| | Connections | W | R | W | R | R | R | | | | R | R | | | Credentials | W | W | W | W | R | W | | | | R | R | | -| Custom environment variables| W | W | W | W | W | W | R | | | R | W | | +| Custom env variables | W | W | W | W | W | W | R | | | R | W | | | dbt adapters | W | W | W | W | R | W | | | | R | R | | | Develop (IDE) | W | W | | W | | | | | | | | | | Environments | W | R | R | R | R | W | R | | | R | R | | From dcc6c5c5277355dc4e3d8469332ace3ca84cfca7 Mon Sep 17 00:00:00 2001 From: Jessica Date: Wed, 19 Jul 2023 15:52:45 -0400 Subject: [PATCH 204/703] Apply small edits --- .../docs/quickstarts/starburst-galaxy-qs.md | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/website/docs/quickstarts/starburst-galaxy-qs.md b/website/docs/quickstarts/starburst-galaxy-qs.md index d9bd3b98a43..33228710509 100644 --- a/website/docs/quickstarts/starburst-galaxy-qs.md +++ b/website/docs/quickstarts/starburst-galaxy-qs.md @@ -68,7 +68,7 @@ Using Starburst Galaxy, you can create tables and also transform them with dbt. ``` ## Connect Starburst Galaxy to the Amazon S3 bucket {#connect-to-s3-bucket} -If your Starburst Galaxy instance is not already connected to your S3 bucket, you need to create a cluster, create a catalog that connects to the S3 bucket, associate the new catalog (your data source) to your new cluster, and configure privilege settings. +If your Starburst Galaxy instance is not already connected to your S3 bucket, you need to create a cluster, configure a catalog that allows Starburst Galaxy to connect to the S3 bucket, add the catalog to your new cluster, and configure privilege settings. In addition to Amazon S3, Starburst Galaxy supports many other data sources. To learn more about them, you can refer to the [Catalogs overview](https://docs.starburst.io/starburst-galaxy/catalogs/index.html) in the Starburst Galaxy docs. @@ -79,11 +79,11 @@ In addition to Amazon S3, Starburst Galaxy supports many other data sources. To When done, click **Create cluster**. -1. Create a catalog. Click **Catalogs** on the left sidebar of the Starburst Galaxy UI, then click **Create catalog** in the main body of the page. -2. On the **Create a data source** page, select the Amazon S3 tile. -3. In the **Name and description** section of the **Amazon S3** page, fill out the fields. -4. In the **Authentication to S3** section of the **Amazon S3** page, select the [AWS (S3) authentication mechanism](#prerequisites) you chose to connect with. -5. In the **Metastore configuration** section, set these options: +3. Create a catalog. Click **Catalogs** on the left sidebar of the Starburst Galaxy UI, then click **Create catalog** in the main body of the page. +4. On the **Create a data source** page, select the Amazon S3 tile. +5. In the **Name and description** section of the **Amazon S3** page, fill out the fields. +6. In the **Authentication to S3** section of the **Amazon S3** page, select the [AWS (S3) authentication mechanism](#prerequisites) you chose to connect with. +7. In the **Metastore configuration** section, set these options: - **Default S3 bucket name** — Enter the name of your S3 bucket you want to access. - **Default directory name** — Enter the folder name of where the Jaffle Shop data lives in the S3 bucket. This is the same folder name you used in [Load data to an Amazon S3 bucket](#load-data-to-s3). - **Allow creating external tables** — Enable this option. @@ -93,19 +93,19 @@ In addition to Amazon S3, Starburst Galaxy supports many other data sources. To -7. Click **Test connection**. This verifies that Starburst Galaxy can access your S3 bucket. -8. Click **Connect catalog** if the connection test passes. +8. Click **Test connection**. This verifies that Starburst Galaxy can access your S3 bucket. +9. Click **Connect catalog** if the connection test passes. -9. On the **Set permissions** page, click **Skip**. You can add permissions later if you want. -10. On the **Add to cluster** page, choose the cluster you want to add the data source to from the dropdown and click **Add to cluster**. -11. Add the location privilege for your S3 bucket to your role in Starburst Galaxy. Click **Access control > Roles and privileges** on the left sidebar of the Starburst Galaxy UI. Then, in the **Roles** table, click the role name **accountadmin**. +10. On the **Set permissions** page, click **Skip**. You can add permissions later if you want. +11. On the **Add to cluster** page, choose the cluster you want to add the catalog to from the dropdown and click **Add to cluster**. +12. Add the location privilege for your S3 bucket to your role in Starburst Galaxy. Click **Access control > Roles and privileges** on the left sidebar of the Starburst Galaxy UI. Then, in the **Roles** table, click the role name **accountadmin**. If you're using an existing Starburst Galaxy cluster and don't have access to the accountadmin role, then select a role that you do have access to. To learn more about access control, refer to [Access control](https://docs.starburst.io/starburst-galaxy/security/access-control.html) in the Starburst Galaxy docs. -1. On the **Roles** page, click the **Privileges** tab and click **Add privilege**. -2. On the **Add privilege** page, set these options: +13. On the **Roles** page, click the **Privileges** tab and click **Add privilege**. +14. On the **Add privilege** page, set these options: - **What would you like to modify privileges for?** — Choose **Location**. - **Enter a storage location provide** — Enter the storage location of _your S3 bucket_ and the folder of where the Jaffle Shop data lives. Make sure to include the `/*` at the end of the location. - **Create SQL** — Enable the option. @@ -115,7 +115,7 @@ In addition to Amazon S3, Starburst Galaxy supports many other data sources. To ## Create tables with Starburst Galaxy -To query the Jaffle Shop data with Starburst Galaxy, you need to create tables using the Jaffle Shop data that you [loaded to your S3 bucket](#load-data-to-s3). You can do this (and run any SQL statement) from the [query editor](https://docs.starburst.io/starburst-galaxy/query/index.html). +To query the Jaffle Shop data with Starburst Galaxy, you need to create tables using the Jaffle Shop data that you [loaded to your S3 bucket](#load-data-to-s3). You can do this (and run any SQL statement) from the [query editor](https://docs.starburst.io/starburst-galaxy/query/query-editor.html). 1. Click **Query > Query editor** on the left sidebar of the Starburst Galaxy UI. The main body of the page is now the query editor. 2. Configure the query editor so it queries your S3 bucket. In the upper right corner of the query editor, select your cluster in the first gray box and select your catalog in the second gray box: From 92fdc0f2f9883ef791a59591a6a657a942f9431b Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Wed, 19 Jul 2023 14:11:01 -0700 Subject: [PATCH 205/703] Create blog for ChatGPT (#3748) resolves https://github.com/dbt-labs/docs.getdbt.com/issues/3367 ## What are you changing in this pull request and why? Adding blog post by @pbritosa-sage along with @jasnonaz ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --------- Co-authored-by: Jason Ganz Co-authored-by: gwen windflower --- website/blog/2023-07-17-GPT-and-dbt-test.md | 213 ++++++++++++++++++ website/blog/authors.yml | 10 + ...-on-the-importance-of-naming.md => src.md} | 0 .../2023-07-17-GPT-and-dbt-test/image1.png | Bin 0 -> 159022 bytes .../2023-07-17-GPT-and-dbt-test/image2.png | Bin 0 -> 124206 bytes .../2023-07-17-GPT-and-dbt-test/image3.png | Bin 0 -> 324117 bytes .../static/img/blog/authors/pedro_brito.jpeg | Bin 0 -> 123646 bytes 7 files changed, 223 insertions(+) create mode 100644 website/blog/2023-07-17-GPT-and-dbt-test.md rename website/blog/{2021-11-23-on-the-importance-of-naming.md => src.md} (100%) create mode 100644 website/static/img/blog/2023-07-17-GPT-and-dbt-test/image1.png create mode 100644 website/static/img/blog/2023-07-17-GPT-and-dbt-test/image2.png create mode 100644 website/static/img/blog/2023-07-17-GPT-and-dbt-test/image3.png create mode 100644 website/static/img/blog/authors/pedro_brito.jpeg diff --git a/website/blog/2023-07-17-GPT-and-dbt-test.md b/website/blog/2023-07-17-GPT-and-dbt-test.md new file mode 100644 index 00000000000..84f756919a5 --- /dev/null +++ b/website/blog/2023-07-17-GPT-and-dbt-test.md @@ -0,0 +1,213 @@ +--- +title: "Create dbt Documentation and Tests 10x faster with ChatGPT" +description: "You can use ChatGPT to infer the context of verbosely named fields from database table schemas." +slug: create-dbt-documentation-10x-faster-with-ChatGPT + +authors: [pedro_brito_de_sa] + +tags: [analytics craft, data ecosystem] +hide_table_of_contents: true + +date: 2023-07-18 +is_featured: true +--- + +Whether you are creating your pipelines into dbt for the first time or just adding a new model once in a while, **good documentation and testing should always be a priority** for you and your team. Why do we avoid it like the plague then? Because it’s a hassle having to write down each individual field, its description in layman terms and figure out what tests should be performed to ensure the data is fine and dandy. How can we make this process faster and less painful? + +By now, everyone knows the wonders of the GPT models for code generation and pair programming so this shouldn’t come as a surprise. But **ChatGPT really shines** at inferring the context of verbosely named fields from database table schemas. So in this post I am going to help you 10x your documentation and testing speed by using ChatGPT to do most of the leg work for you. + + + +As a one-person Analytics team at [Sage](http://www.hellosage.com/) I had to create our dbt pipelines from the ground up. This meant 30+ tables of internal facts and dimensions + external data into a Staging Layer, plus all of the following layers of augmented models and Mart tables. After the fact, we are talking about 3500+ lines of YAML that I was NOT excited to get started on. Fortunately for me, this was February 2023 and ChatGPT had just come out. And boy, was I glad to have it. After a good dose of “prompt engineering” I managed to get most of my documentation and tests written out, only needing a few extra tweaks. + +Writing this article as of July 2023, and now powered by GPT-4 and not GPT 3.5, it is already easier to get the same results I did, so here are my learnings that I hope everyone can replicate. + +## Use verbose tables with verbose fields + +ChatGPT can only infer so much, so tables with names and fields that resemble encryption keys are unlikely to be good for this approach. In this example we are going to use this table: + +```sql +create or replace TRANSIENT TABLE STAGING.BASE.STG_STAFF_MEMBER ( + ID NUMBER(38,0), + CREATEDATETIME TIMESTAMP_NTZ(9), + UPDATEDATETIME TIMESTAMP_NTZ(9), + VERSION NUMBER(38,0), + FIRSTNAME VARCHAR(16777216), + JOBTITLE VARCHAR(16777216), + LASTNAME VARCHAR(16777216), + MIDDLENAME VARCHAR(16777216), + ISCAREADMIN BOOLEAN, + ISARCHIVED BOOLEAN, + ADDRESSID VARCHAR(16777216), + ENTERPRISEID VARCHAR(16777216), + ISDELETED BOOLEAN +); + +``` + +--- + +I copied this definition from Snowflake, and I would recommend that you always include both the name and type of the fields to get better results. This is especially helpful if you want to make sure ChatGPT correctly distinguishes between text, number, boolean or array fields, which may not be clear from the name alone. + +## Start out with simple prompts + +We all know how ChatGPT can digest very complex prompts, but as this is a tool for you to get the best results for your use case, I would recommend starting with simple, but specific, prompts. + +Opening ChatGPT with GPT4, my first prompt is usually along these lines: + + + +And the output of this simple prompt is nothing short of amazing: + +```yaml +version: 2 + +models: + - name: STAFF_MEMBER + description: This table contains information about the staff members. + columns: + - name: ID + description: The unique identifier for the staff member. + tests: + - unique + - not_null + - name: CREATEDATETIME + description: The timestamp when the record was created. + tests: + - not_null + - name: UPDATEDATETIME + description: The timestamp when the record was last updated. + - name: VERSION + description: Version number of the record. + - name: FIRSTNAME + description: The first name of the staff member. + tests: + - not_null + - name: JOBTITLE + description: The job title of the staff member. + tests: + - not_null + - name: LASTNAME + description: The last name of the staff member. + tests: + - not_null + - name: MIDDLENAME + description: The middle name of the staff member. + - name: ISCARADMIN + description: Boolean value indicating if the staff member is a care administrator. + tests: + - accepted_values: + values: ['true', 'false'] + - name: ISARCHIVED + description: Boolean value indicating if the staff member record is archived. + tests: + - accepted_values: + values: ['true', 'false'] + - name: COMMUNITYID + description: Identifier for the community of the staff member. + - name: ENTERPRISEID + description: Identifier for the enterprise of the staff member. + - name: ISDELETED + description: Boolean value indicating if the staff member record is deleted. + tests: + - accepted_values: + values: ['true', 'false'] +``` + +Back in my day (5 months ago), ChatGPT with GPT 3.5 didn’t have much context on what a dbt-style YAML file was, so the result was a funky, non-dbt YAML format. If you are using GPT 3.5 and the results you get from the first prompt don’t compile in dbt, I would recommend an extra step I took which is to pass your understanding of what a dbt-style YAML file is. You can do this simply by copy-pasting a piece of a publicly available YAML file like [this one from the Jaffle Shop example](https://github.com/dbt-labs/jaffle_shop/blob/main/models/schema.yml), or a piece of YAML from your own code base. + +A prompt for it would look something like: + + + +## Specify details on generic tests in your prompts + +dbt has four built-in generic tests: unique, not_null, accepted_values and relationships. My approach to adding details on these to the prompts is one of ‘more is better’, as in it’s faster to just delete tests that I don’t need in certain fields than having to add them manually. + +ChatGPT will throw unique and not_null tests for mostly all columns that have ‘id’ in their name, and in my experience it adds them to a few more columns than it should, which is usually quick to fix. + +Accepted_values and relationships are slightly trickier but the model can be adjusted to account for these in fairly simple ways. My tips are: + +- accepted_values: add extra detail to the schema like an extra keyword like ‘CATEGORICAL’ after the data type +- relationships: bind the relationships to fields with specific names. For better results, pass on a list of valid table names from your schema that it can refer to. + +One way of doing this is with a prompt like this: + + + +Which results in the following output: + +```yaml +version: 2 + +models: + - name: STAFF_MEMBER + description: This table contains information about the staff members. + columns: + - name: ID + description: The unique identifier for the staff member. + tests: + - unique + - not_null + - name: CREATEDATETIME + description: The timestamp when the record was created. + tests: + - not_null + - name: UPDATEDATETIME + description: The timestamp when the record was last updated. + - name: VERSION + description: Version number of the record. + - name: FIRSTNAME + description: The first name of the staff member. + tests: + - not_null + - name: JOBTITLE + description: The job title of the staff member. This is a categorical field. + tests: + - not_null + - accepted_values: + values: ['Job Title 1', 'Job Title 2', 'Job Title 3'] # replace these with actual job titles + - name: LASTNAME + description: The last name of the staff member. + tests: + - not_null + - name: MIDDLENAME + description: The middle name of the staff member. + - name: ISCARADMIN + description: Boolean value indicating if the staff member is a care administrator. + tests: + - accepted_values: + values: ['true', 'false'] + - name: ISARCHIVED + description: Boolean value indicating if the staff member record is archived. + tests: + - accepted_values: + values: ['true', 'false'] + - name: COMMUNITYID + description: Identifier for the community of the staff member. + tests: + - relationships: + to: STAGING.COMMUNITY.ID # replace with actual reference table + field: ID + - name: ENTERPRISEID + description: Identifier for the enterprise of the staff member. + tests: + - relationships: + to: STAGING.ENTERPRISE.ID # replace with actual reference table + field: ID + - name: ISDELETED + description: Boolean value indicating if the staff member record is deleted. + tests: + - accepted_values: + values: ['true', 'false'] +``` + +Even though it doesn’t magically guess the categories of your variables or your relationships, it is definitely helpful to have some placeholders in the right places. + +As an add-on, giving the model a short description of the data models and the tables you are working with will help it fine tune your results. + +## Wrap-Up + +Creating documentation is still a very manual job, and this approach only works for one table at a time (maybe you can be the one leveraging the OpenAI API and creating a webapp that processes multiple tables at once?). However, ChatGPT can clearly cut a lot of time in these tasks. + +I hope that these simple tips help you be more motivated and efficient in creating documentation and tests for your data models. And remember: verbosity in - verbosity out! diff --git a/website/blog/authors.yml b/website/blog/authors.yml index 72e747cc577..6d222e8a543 100644 --- a/website/blog/authors.yml +++ b/website/blog/authors.yml @@ -373,6 +373,16 @@ pat_kearns: name: Pat Kearns organization: dbt Labs +pedro_brito_de_sa: + image_url: /img/blog/authors/pedro_brito.jpeg + job_title: Product Analyst + links: + - icon: fa-linkedin + url: https://www.linkedin.com/in/pbritosa/ + name: Pedro Brito de Sa + organization: Sage + + rastislav_zdechovan: image_url: /img/blog/authors/rastislav-zdechovan.png job_title: Analytics Engineer diff --git a/website/blog/2021-11-23-on-the-importance-of-naming.md b/website/blog/src.md similarity index 100% rename from website/blog/2021-11-23-on-the-importance-of-naming.md rename to website/blog/src.md diff --git a/website/static/img/blog/2023-07-17-GPT-and-dbt-test/image1.png b/website/static/img/blog/2023-07-17-GPT-and-dbt-test/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..687bdef75682350e2842b35ca1cb08a6fd149ee8 GIT binary patch literal 159022 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

HT=u%?*585mH!hy}DL$sN?rj`>7_c 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%0DcYxEOcrdXx*qBszt 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 bK3*^qD6UeJcSZ-#z=yPig7_~{Bj5i6yY~LQ literal 0 HcmV?d00001 diff --git a/website/static/img/blog/2023-07-17-GPT-and-dbt-test/image3.png b/website/static/img/blog/2023-07-17-GPT-and-dbt-test/image3.png new file mode 100644 index 0000000000000000000000000000000000000000..fa4b837a82f5f0be9f9cf21334bcc7539e4e1b26 GIT binary patch literal 324117 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�fWskNvWlC=`*5kgtw6 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

!hSqxus$@Movc$7f`=yGm{gD`z4S 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 z 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 literal 0 HcmV?d00001 diff --git a/website/static/img/blog/authors/pedro_brito.jpeg b/website/static/img/blog/authors/pedro_brito.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..9f163a431f301b6b720a694bbf609b586ed05be3 GIT binary patch literal 123646 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≫PZM93FCC3Z&1fqXW&5q`MGt!V8?3!=vQUl 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 Date: Wed, 19 Jul 2023 15:49:35 -0700 Subject: [PATCH 206/703] Fix link in debugging-schema-names.md (#3766) ## What are you changing in this pull request and why? Found this bad link using the new link checker! ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- website/docs/guides/legacy/debugging-schema-names.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/legacy/debugging-schema-names.md b/website/docs/guides/legacy/debugging-schema-names.md index 12daacb1f2d..6c869b5f8af 100644 --- a/website/docs/guides/legacy/debugging-schema-names.md +++ b/website/docs/guides/legacy/debugging-schema-names.md @@ -16,7 +16,7 @@ You can also follow along via this video: Do a file search to check if you have a macro named `generate_schema_name` in the `macros` directory of your project. #### I do not have a macro named `generate_schema_name` in my project -This means that you are using dbt's default implementation of the macro, as defined [here](https://github.com/dbt-labs/dbt-core/blob/main/core/dbt/include/global_project/macros/get_custom_name/get_custom_schema.sql#L17-L30) +This means that you are using dbt's default implementation of the macro, as defined [here](https://github.com/dbt-labs/dbt-core/blob/main/core/dbt/include/global_project/macros/get_custom_name/get_custom_schema.sql#L47C1-L60) ```sql {% macro generate_schema_name(custom_schema_name, node) -%} From 66266fa290c1e62e79569e936656a372ac6452f4 Mon Sep 17 00:00:00 2001 From: Bart Schuijt Date: Thu, 20 Jul 2023 11:01:21 +0200 Subject: [PATCH 207/703] Update modify-owner-column.md Small typo fix. --- website/docs/faqs/Docs/modify-owner-column.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/faqs/Docs/modify-owner-column.md b/website/docs/faqs/Docs/modify-owner-column.md index db06e5af6cf..8395a182bb9 100644 --- a/website/docs/faqs/Docs/modify-owner-column.md +++ b/website/docs/faqs/Docs/modify-owner-column.md @@ -8,7 +8,7 @@ id: modify-owner-column Due to the nature of the field, you won't be able to change the owner column in your generated documentation. -The _owner_ field in `dbt-docs` is pulled from database metdata (`catalog.json`), meaning the owner of that table in the database. With the exception of exposures, it's not pulled from an `owner` field set within dbt. +The _owner_ field in `dbt-docs` is pulled from database metadata (`catalog.json`), meaning the owner of that table in the database. With the exception of exposures, it's not pulled from an `owner` field set within dbt. Generally, dbt's database user owns the tables created in the database. Source tables are usually owned by the service responsible for ingesting/loading them. From 0cfbd7218c2ddb1d876b7969c51ca119149b9c9b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 10:52:59 +0100 Subject: [PATCH 208/703] adding tc pdf --- .../docs/dbt-versions/experimental-features.md | 3 +-- website/static/assets/beta-tc.pdf | Bin 0 -> 31198 bytes 2 files changed, 1 insertion(+), 2 deletions(-) create mode 100644 website/static/assets/beta-tc.pdf diff --git a/website/docs/docs/dbt-versions/experimental-features.md b/website/docs/docs/dbt-versions/experimental-features.md index 3d7454215f7..718974f7821 100644 --- a/website/docs/docs/dbt-versions/experimental-features.md +++ b/website/docs/docs/dbt-versions/experimental-features.md @@ -24,5 +24,4 @@ To enable or disable experimental features: ## Beta terms and conditions -By using or enabling beta features/products, you agree to the Beta terms and conditions. Download the [Beta terms and conditions](/docs/cloud/about-cloud/assets/beta-t&c.docx) for more info. - +By using or enabling features that aren't yet in general release ("Beta Features"), you agree to its terms and conditions. Download the [Beta terms and conditions](/assets/beta-tc.pdf) for more info. diff --git a/website/static/assets/beta-tc.pdf b/website/static/assets/beta-tc.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f285cf95a557b2e4a34b65e1f75694fc2704dd9b GIT binary patch literal 31198 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 YgQK3k Date: Thu, 20 Jul 2023 11:20:58 +0100 Subject: [PATCH 209/703] Update product-lifecycles.md --- website/docs/docs/dbt-versions/product-lifecycles.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/product-lifecycles.md b/website/docs/docs/dbt-versions/product-lifecycles.md index f676c6af2eb..7567af70a97 100644 --- a/website/docs/docs/dbt-versions/product-lifecycles.md +++ b/website/docs/docs/dbt-versions/product-lifecycles.md @@ -14,7 +14,7 @@ Any dbt feature will fall into one of the following lifecycle states: ### dbt Cloud -- **Beta:** Beta features may be made available for the purpose of customer testing and evaluation. These may not be feature-complete or fully stable. There may still be some planned additions and modifications to product behaviors while in Beta. Breaking changes may occur – although we will do our best to communicate them in advance, we may not always be able to do so. Beta features may not be fully documented, technical support may be limited, and service level objectives (SLOs) may not be provided. +- **Beta:** Beta features may be made available for the purpose of customer testing and evaluation. These may not be feature-complete or fully stable. There may still be some planned additions and modifications to product behaviors while in Beta. Breaking changes may occur – although we will do our best to communicate them in advance, we may not always be able to do so. Beta features may not be fully documented, technical support may be limited, and service level objectives (SLOs) may not be provided. Download the [Beta terms and conditions](/assets/beta-tc.pdf) for more info. - **Preview (Private or Public):** Preview features are stable and can be considered for production deployments. There may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality to Preview features that is not backward compatible. Preview features include documentation, technical support, and include service level objectives (SLOs). Features in Preview are generally provided at no extra cost, although they may become paid features in their Generally Available state. From de55ceb6596a8933d403c1be190393c7e66d2296 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 12:15:09 +0100 Subject: [PATCH 210/703] add partial --- website/docs/docs/dbt-cloud-apis/sl-api-overview.md | 12 +++++++++++- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 11 ++++++++++- website/sidebars.js | 2 +- website/snippets/_sl-plan-info.md | 1 + 4 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 website/snippets/_sl-plan-info.md diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index bc5472a2c01..9cc07518705 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -26,7 +26,17 @@ You can use the dbt Semantic Layer for a variety of tools and applications of da * Data discovery and cataloging * Machine learning and data science -During [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta), the dbt Semantic Layer is accessible to all dbt Cloud Team and Enterprise multi-tenant plans [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America. It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. + + +import Features from '/snippets/_sl-plan-info.md' + + +

    diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index d79e4ddf6fb..e690078cd60 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -21,8 +21,17 @@ Moving metric definitions out of the BI layer and into the modeling layer allows To read more about why you need a universal Semantic Layer, read this [blog post](https://www.getdbt.com/blog/universal-semantic-layer/). ## Explore the dbt Semantic Layer + -During [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta), the dbt Semantic Layer is accessible to all dbt Cloud Team and Enterprise multi-tenant plans [hosted](/docs/cloud/about-cloud/regions-ip-addresses) in North America. It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. +import Features from '/snippets/_sl-plan-info.md' + + +

    diff --git a/website/sidebars.js b/website/sidebars.js index 5012c0c216f..17259b70867 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -1084,7 +1084,7 @@ const sidebarSettings = { "guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project", ], }, - "guides/dbt-ecosystem/databricks-guides/sl-partner-integration-guide", + "guides/dbt-ecosystem/sl-partner-integration-guide", ], }, { diff --git a/website/snippets/_sl-plan-info.md b/website/snippets/_sl-plan-info.md new file mode 100644 index 00000000000..23d259a346b --- /dev/null +++ b/website/snippets/_sl-plan-info.md @@ -0,0 +1 @@ +During {props.cycle}, the {props.product} is accessible to {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. From cbb016fbcd66d0b6ef220520ce13e1d27ece3164 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 12:51:51 +0100 Subject: [PATCH 211/703] changes --- website/docs/docs/dbt-cloud-apis/sl-api-overview.md | 13 ++++++++----- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 4 ++-- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 +- .../use-dbt-semantic-layer/avail-sl-integrations.md | 8 ++++++-- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 6 +++--- .../docs/use-dbt-semantic-layer/quickstart-sl.md | 6 +++++- .../docs/use-dbt-semantic-layer/sl-architecture.md | 4 +--- website/docs/guides/migration/sl-migration.md | 2 +- website/snippets/_legacy-sl-callout.md | 2 +- website/snippets/_new-sl-changes.md | 2 +- website/snippets/_new-sl-setup.md | 2 +- website/snippets/_v2-sl-prerequisites.md | 2 +- 12 files changed, 31 insertions(+), 22 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index 9cc07518705..89429c18d55 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -1,8 +1,8 @@ --- -title: "Semantic Layer APIs" +title: "Semantic Layer API" id: sl-api-overview description: "Integrate and query using the Semantic Layer API." -tags: [Semantic Layer, APIs] +tags: [Semantic Layer, API] hide_table_of_contents: true --- @@ -38,19 +38,22 @@ instance="hosted in North America" />

    -
    +
    + @@ -12,9 +14,11 @@ import NewSLChanges from '/snippets/_new-sl-changes.md'; + + Discover the diverse range of data applications that seamlessly integrate with the powerful dbt Semantic Layer, powered by MetricFlow — from business intelligence tools to notebooks, spreadsheets, data catalogs, and more. These integrations allow you to query and unlock valuable insights from your data ecosystem. -Query dbt metrics via external integrations using the sophisticated [dbt Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) (JDBC, GraphQL, and Discovery APIs). With these APIs, you can query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. +Query dbt metrics via external integrations using the sophisticated {frontMatter.meta.api_name}. Use the API to query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. Here are some of the integrations you can query from: @@ -30,7 +34,7 @@ For information on the partner integrations, their documentation, and more &mdas ## Related docs -- [dbt Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to learn how to integrate with the JDBC, GraphQL, and Discovery APIs to query your metrics in downstream tools. +- {frontMatter.meta.api_name} to learn how to integrate with the JDBC to query your metrics in downstream tools. diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index e690078cd60..e36622c1910 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -37,7 +37,7 @@ instance="hosted in North America" @@ -60,8 +60,8 @@ instance="hosted in North America" icon="dbt-bit"/> diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 70e6300df02..658b828cfc6 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -4,6 +4,8 @@ id: quickstart-sl description: "Use this guide to build and define metrics, set up the dbt Semantic Layer, and query them using the Semantic Layer APIs." sidebar_label: "Get started with the dbt Semantic Layer" tags: [Semantic Layer] +meta: + api_name: dbt Semantic Layer API --- @@ -150,7 +152,9 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; ## Connect and query APIs -This step requires you to connect to the [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview). Once you've connected to an API, you should then set up and query metrics in your downstream tool of choice. Refer to [dbt Semantic Layer Apis](/docs/dbt-cloud-apis/sl-api-overview) and [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. +This step requires you to connect to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC to query your metrics in downstream tools.

    + +Once you've connected to an API, you should then set up and query metrics in your downstream tool of choice. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. ## FAQs diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index 8e76c8daca0..f350ab6996c 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -16,9 +16,7 @@ At a high level, the dbt Semantic Layer allows you to define metrics and query t | **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with the YAML specifications. | ✅ | ✅ | ✅ | BSL package (code is source available) | | **MetricFlow Server**| A proprietary server that takes metric requests and generates optimized SQL for the specific data platform. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| | **Semantic Layer Gateway** | A service that passes queries to MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

    ❌| ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | -| **Semantic Layer APIs** | The interfaces that allow users to submit metric queries include the MetricFlow CLI, JDBC API, and GraphQL. These APIs also serve as the foundation for building first-class integrations with various tools. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| - - +| **Semantic Layer API** | The interfaces that allow users to submit metric queries include the MetricFlow CLI and JDBC API. They also serve as the foundation for building first-class integrations with various tools. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| ## Related questions diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index fc4bcf76204..f9b34ebd35d 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -157,6 +157,6 @@ Now that your Semantic Layer is set up, you will need to update any downstream i - [Get started with the dbt Semantic Layer](/docs/use-dbt-semantic-layer/quickstart-sl) - [Example dbt project](https://github.com/dbt-labs/jaffle-sl-template) - [Set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) -- [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) +- [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) - [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) - Developer workflow demo diff --git a/website/snippets/_legacy-sl-callout.md b/website/snippets/_legacy-sl-callout.md index 67517bb4342..622e8290181 100644 --- a/website/snippets/_legacy-sl-callout.md +++ b/website/snippets/_legacy-sl-callout.md @@ -1,6 +1,6 @@ :::tip Upgrade to access the new dbt Semantic Layer -The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing new APIs, and making it more efficient to define/query metrics. This means the legacy Semantic Layer, available in dbt v1.5 or lower, is no longer supported and won't receive any code fixes. +The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing a new API, and making it more efficient to define/query metrics. This means the legacy Semantic Layer, available in dbt v1.5 or lower, is no longer supported and won't receive any code fixes. **Who does this affect?** Anyone who uses the legacy Semantic Layer. The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses). You must be on dbt v1.6 or higher to access it. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. diff --git a/website/snippets/_new-sl-changes.md b/website/snippets/_new-sl-changes.md index a5f8c2210bb..6773dbdabf5 100644 --- a/website/snippets/_new-sl-changes.md +++ b/website/snippets/_new-sl-changes.md @@ -3,6 +3,6 @@ The dbt Semantic Layer has been re-released with [significant improvements](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. -The new version is available in [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and introduces [MetricFlow](/docs/build/about-metricflow), an essential component. It also includes new semantic elements, better governance, improved efficiency, easier data access, and new Semantic Layer APIs. +The new version is available in [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and introduces [MetricFlow](/docs/build/about-metricflow), an essential component. It also includes new semantic elements, better governance, improved efficiency, easier data access, and new Semantic Layer API. ::: diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 3e8fdf5d867..65f38fd625d 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -12,7 +12,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade * Note: We recommend using a less privileged set of credentials because your Semantic Layer users will be querying it in downstream applications. At a minimum, the Semantic Layer needs to have read access to the schema(s) that contains the dbt models that you used to build your semantic models. 5. Select the deployment environment you want for the Semantic Layer 6. You should see connection information that allows you to connect to downstream tools. - * If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). If it uses the Semantic Layer GraphQL API, save the GraphQL API host information instead. + * If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). 7. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. 8. Save & copy your environment ID, service token, and host for inputting into a downstream tool 9. Great job, you've configured the Semantic Layer 🎉! diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index d602e5d0d3b..b8ec7f6aa02 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -8,7 +8,7 @@ * Note — Deployment environment is currently supported (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli) * Note — After installing the package, make sure you run at least one model. -- Set up the [Semantic Layer API](/docs/use-dbt-semantic-layer/sl-api-overview) in the integrated tool to import metric definitions +- Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions * Developer accounts will be able to query manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you'll need access to the Semantic Layer APIs.
    From dbe0a7664c61016258a2975643d379e9280b9541 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 20 Jul 2023 14:17:56 +0100 Subject: [PATCH 212/703] Update website/docs/docs/dbt-versions/experimental-features.md --- website/docs/docs/dbt-versions/experimental-features.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/experimental-features.md b/website/docs/docs/dbt-versions/experimental-features.md index 718974f7821..02a8157d4cd 100644 --- a/website/docs/docs/dbt-versions/experimental-features.md +++ b/website/docs/docs/dbt-versions/experimental-features.md @@ -24,4 +24,4 @@ To enable or disable experimental features: ## Beta terms and conditions -By using or enabling features that aren't yet in general release ("Beta Features"), you agree to its terms and conditions. Download the [Beta terms and conditions](/assets/beta-tc.pdf) for more info. +By using or enabling features that aren't yet in general release ("Beta Features"), you agree to the [Beta Features Terms and Conditions](/assets/beta-tc.pdf). From 3588d0fd705746543366c398d6cdfcf0aae5d818 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 20 Jul 2023 14:18:36 +0100 Subject: [PATCH 213/703] Update website/docs/docs/dbt-versions/product-lifecycles.md --- website/docs/docs/dbt-versions/product-lifecycles.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/product-lifecycles.md b/website/docs/docs/dbt-versions/product-lifecycles.md index 7567af70a97..65aad0ad333 100644 --- a/website/docs/docs/dbt-versions/product-lifecycles.md +++ b/website/docs/docs/dbt-versions/product-lifecycles.md @@ -14,7 +14,7 @@ Any dbt feature will fall into one of the following lifecycle states: ### dbt Cloud -- **Beta:** Beta features may be made available for the purpose of customer testing and evaluation. These may not be feature-complete or fully stable. There may still be some planned additions and modifications to product behaviors while in Beta. Breaking changes may occur – although we will do our best to communicate them in advance, we may not always be able to do so. Beta features may not be fully documented, technical support may be limited, and service level objectives (SLOs) may not be provided. Download the [Beta terms and conditions](/assets/beta-tc.pdf) for more info. +- **Beta:** Beta features may be made available for the purpose of customer testing and evaluation. These may not be feature-complete or fully stable. There may still be some planned additions and modifications to product behaviors while in Beta. Breaking changes may occur – although we will do our best to communicate them in advance, we may not always be able to do so. Beta features may not be fully documented, technical support may be limited, and service level objectives (SLOs) may not be provided. Download the [Beta Features Terms and Conditions](/assets/beta-tc.pdf) for more info. - **Preview (Private or Public):** Preview features are stable and can be considered for production deployments. There may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality to Preview features that is not backward compatible. Preview features include documentation, technical support, and include service level objectives (SLOs). Features in Preview are generally provided at no extra cost, although they may become paid features in their Generally Available state. From fe0f51ff1283a1deef337c2755147457400a4e6e Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 14:29:13 +0100 Subject: [PATCH 214/703] gsg updates --- website/dbt-versions.js | 22 +--- .../docs/docs/build/build-metrics-intro.md | 2 +- website/docs/docs/build/sl-getting-started.md | 110 ++++++++++++------ .../06-July-2023/sl-revamp-beta.md | 2 +- .../use-dbt-semantic-layer/quickstart-sl.md | 15 +-- website/sidebars.js | 1 - website/snippets/_v2-sl-prerequisites.md | 5 +- 7 files changed, 90 insertions(+), 67 deletions(-) diff --git a/website/dbt-versions.js b/website/dbt-versions.js index 324a98b80a0..227b620ae86 100644 --- a/website/dbt-versions.js +++ b/website/dbt-versions.js @@ -186,23 +186,7 @@ exports.versionedPages = [ { "page": "docs/build/ratio", "firstVersion": "1.6", - }, - { - "category": "docs/use-dbt-semantic-layer/sl-api-overview", - "firstVersion": "1.6", - }, - { - "category": "docs/use-dbt-semantic-layer/graphql", - "firstVersion": "1.6", - }, - { - "category": "docs/use-dbt-semantic-layer/jdbc", - "firstVersion": "1.6", - }, - { - "category": "docs/use-dbt-semantic-layer/sl-manifest", - "firstVersion": "1.6", - }, + } ] exports.versionedCategories = [ @@ -213,9 +197,5 @@ exports.versionedCategories = [ { "category": "Build your metrics", "firstVersion": "1.6", - }, - { - "category": "Semantic Layer APIs", - "firstVersion": "1.6", } ] diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 99dcd8c52c8..19b31cab931 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -51,7 +51,7 @@ Before you start, keep the following considerations in mind: diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index d1275352a21..c46fa916f70 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -4,43 +4,52 @@ title: Get started with MetricFlow description: "Learn how to create your first semantic model and metric." sidebar_label: Get started with MetricFlow tags: [Metrics, Semantic Layer] +meta: + api_name: dbt Semantic Layer API --- This getting started page recommends a workflow to help you get started creating your first metrics. Here are the following steps you'll take: -- [Create a semantic model](#create-a-semantic-model) -- [Create your metrics](#create-your-metrics) -- [Test and query your metrics](#test-and-query-your-metrics) +Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: + +- [Create a semantic model](#create-a-semantic-model) with MetricFlow +- [Define metrics](#define-metrics) with MetricFlow +- [Test metrics](#test-metrics) with the MetricFlow +- [Run a production job](#run-a-production-job) in dbt Cloud +- [Set up dbt Semantic Layer](#set-up-dbt-semantic-layer) in dbt Cloud +- [Connect and query API](#connect-and-query-api) in dbt Cloud +- [Test and query with the CLI](#test-and-query-with-the-cli) + * For Developer plans or dbt Core users only ## Prerequisites -- Use the [command line (CLI)](/docs/core/about-the-cli) and have a dbt project and repository set up. - * Note: Support for dbt Cloud and integrations coming soon. -- Your dbt production environment must be on [dbt Core v1.6](/docs/dbt-versions/core) or higher. Support for the development environment coming soon. -- Have a dbt project connected to Snowflake or Postgres. - * Note: Support for BigQuery, Databricks, and Redshift coming soon. - Have an understanding of key concepts in [MetricFlow](/docs/build/about-metricflow), which powers the revamped dbt Semantic Layer. -- Recommended — dbt Labs recommends you install the [MetricFlow CLI package](https://github.com/dbt-labs/metricflow) to test your metrics. +- Have both your production and development environments running dbt version 1.6 or higher +- Use Snowflake, BigQuery, Databricks, and Redshift data platform +- A successful run in the environment where your Semantic Layer is configured + * Note — Deployment environment is currently supported (_development experience coming soon_) +- To query with dbt Cloud: + * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America + * Set up the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions. +- To query locally: + * dbt Core or Developer accounts must manually install the [MetricFlow CLI package](/docs/build/metricflow-cli) to test or query their metrics. After installing the package, make sure you run at least one model.
    + :::tip New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template) to help you get started! ::: -## Install MetricFlow - -Before you begin, make sure you install the `metricflow` and [dbt adapter](/docs/supported-data-platforms) via PyPI in the CLI. To install them, open the command line interface (CLI) and use the pip install command `pip install "dbt-metricflow[your_adapter_name]"`. - -Note that specifying `[your_adapter_name]` is required. This is because you must install MetricFlow as an extension of a dbt adapter. For example, for a Snowflake adapter, run `pip install "dbt-metricflow[snowflake]"`. - -Currently, the supported adapters are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). - ## Create a semantic model -MetricFlow, which powers the dbt Semantic Layer, has two main objects: [semantic models](/docs/build/semantic-models) and [metrics](/docs/build/metrics-overview). You can think of semantic models as nodes in your semantic graph, connected via entities as edges. MetricFlow takes semantic models defined in YAML configuration files as inputs and creates a semantic graph that you can use to query metrics. +Before you begin, we recommend you learn about more about [MetricFlow](/docs/build/about-metricflow) and its key concepts. There are two main objects: + +- [Semantic models](/docs/build/semantic-models) — Nodes in your semantic graph, connected via entities as edges. MetricFlow takes semantic models defined in YAML configuration files as inputs and creates a semantic graph that you can use to query metrics. +- [Metrics](/docs/build/metrics-overview) — Can be defined in the same YAML files as your semantic models, or split into separate YAML files into any other subdirectories (provided that these subdirectories are also within the same dbt project repo). -This step will guide you through setting up your semantic models, which consists of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). +This step will guide you through setting up your semantic models, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures), in your editor of choice. 1. Name your semantic model, fill in appropriate metadata, and map it to a model in your dbt project. + ```yaml semantic_models: - name: transactions @@ -87,11 +96,13 @@ group by metric_time_day, country -- dimensions ``` ::: -## Create your metrics +## Define metrics -Now that you've created your first semantic model, it's time to define your first metric. MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). You can define metrics in the same YAML files as your semantic models, or create a new file. +Now that you've created your first semantic model, it's time to define your first metric. MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). -The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. +1. You can define metrics in the same YAML files as your semantic models, or create a new file. + +2. The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. ```yaml --- @@ -101,28 +112,61 @@ metrics: type_params: measure: transaction_amount_usd ``` + +3. Save your code and make sure you test your metrics before committing them to your repository. + +To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. -Interact and test your metric using the CLI before committing it to your MetricFlow repository. +## Test metrics -## Test and query your metrics +The following steps explain how to test your metrics using the [MetricFlow CLI](/docs/build/metricflow-cli) (dbt Cloud IDE support coming soon). -Follow these steps to test and query your metrics using MetricFlow: +dbt Core or Developer plan user should refer to [Test and query with the CLI](#test-and-query-with-the-cli) for detailed steps. -1. If you haven't done so already, make sure you [install MetricFlow](#install-metricflow). +1. To test your metrics, make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. +2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. +3. Run `mf validate-configs` to validate the changes before committing them -2. Run `mf --help` to confirm you have MetricFlow installed, and to see the available commands. If you don't have the CLI installed, run `pip install --upgrade "dbt-metricflow[your_adapter_name]"`. For example, if you have a Snowflake adapter, run `pip install --upgrade "dbt-metricflow[snowflake]"`. +## Run a production job -3. Save your files and run `mf validate-configs` to validate the changes before committing them +Once you’ve defined metrics in your dbt project, you can perform a job run in your deployment environment to materialize your metrics. The deployment environment is only supported for the dbt Semantic Layer at this moment. + +1. Go to **Deploy** in the navigation header +2. Select **Jobs** to re-run the job with the most recent code in the deployment environment. +3. Your metric should appear as a red node in the dbt Cloud IDE and dbt directed acyclic graphs (DAG). + + + +## Set up dbt Semantic Layer + +import SlSetUp from '/snippets/_new-sl-setup.md'; + + + +## Connect and query API + +To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America. + +1. Refer to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC. +2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. + +## Test and query with the CLI + +Before you begin, make sure you install the `metricflow` and [dbt adapter](/docs/supported-data-platforms) via PyPI in the CLI. To install them, open the command line interface (CLI) and use the pip install command `pip install "dbt-metricflow[your_adapter_name]"`. -4. Run `mf query --metrics --group-by ` to query the metrics and dimensions you want to see in the CLI. + * Note that specifying `[your_adapter_name]` is required. This is because you must install MetricFlow as an extension of a dbt adapter. For example, for a Snowflake adapter, run `pip install "dbt-metricflow[snowflake]"`. -5. Verify that the metric values are what you expect. You can view the generated SQL if you enter `--explain` in the CLI. +To test your metrics locally: -6. Then commit your changes to push them to your git repo. +1. Make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. +2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. +3. Run `mf validate-configs` to validate the changes before committing them - +1. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. +2. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. +3. Commit and merge the code changes that contain the metric definitions. ## Related docs diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index ec2ebeca7f1..d8bb7c71940 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -12,7 +12,7 @@ dbt Labs are thrilled to announce the re-release of the [dbt Semantic Layer](/do - [MetricFlow](/docs/build/about-metricflow) is a framework for constructing performant and legible SQL from an all new set of semantic constructs which include semantic models, entities, and metrics. - New Semantic Layer infrastructure that enables support for more data platforms (Snowflake, Databricks, BigQuery, Redshift, and soon more), along with improved performance. - New and improved [developer workflows](/guides/migration/sl-migration), governance, and collaboration features. -- New [Semantic Layer APIs](/docs/dbt-cloud-apis/sl-api-overview) to query metrics and build integrations. +- New [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) using JDBC to query metrics and build integrations. With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 658b828cfc6..01a3630e6d2 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -24,7 +24,7 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. - [Create your metrics](#create-your-metrics) with MetricFlow - [Run your production job](#run-your-production-job) in dbt Cloud - [Set up dbt Semantic Layer](#setup) in dbt Cloud -- [Connect and Query APIs](#connect-and-query-apis) +- [Connect and Query API](#connect-and-query-apis) ## Prerequisites @@ -113,14 +113,15 @@ metrics: 3. Click **Save** and then **Preview** the code in the dbt Cloud IDE. +## Test metrics -### Test metrics +The following steps explain how to test and manually query your metrics using the [MetricFlow CLI](/docs/build/metricflow-cli) only. dbt Cloud IDE support will be available soon. -The following steps explain how to query and test your metrics, which currently is only available via the CLI. However, IDE support will be available soon: - -1. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions in the IDE. -3. Run `mf validate-configs` to validate the changes before committing them. -3. Commit and merge the code changes that contain the metric definitions. +1. Make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. +2. Run `mf validate-configs` to validate the changes before committing them. +3. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. +4. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. +5. Commit and merge the code changes that contain the metric definitions. To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. diff --git a/website/sidebars.js b/website/sidebars.js index 6bd51847291..e0f617e8e0f 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -487,7 +487,6 @@ const sidebarSettings = { link: { type: "doc", id: "docs/dbt-cloud-apis/sl-api-overview" }, items: [ "docs/dbt-cloud-apis/sl-jdbc", - "docs/dbt-cloud-apis/sl-graphql", "docs/dbt-cloud-apis/sl-manifest", ], }, diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index b8ec7f6aa02..bd10ad76c72 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -6,10 +6,9 @@ - Use Snowflake, BigQuery, Databricks, and Redshift data platform - A successful run in the environment where your Semantic Layer is configured * Note — Deployment environment is currently supported (_development experience coming soon_) -- Install the [MetricFlow CLI](/docs/build/metricflow-cli) - * Note — After installing the package, make sure you run at least one model. +- Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions - * Developer accounts will be able to query manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you'll need access to the Semantic Layer APIs.
    + * Developer accounts will be able to query manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you'll need to have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
    From 29779859f2f95fce715ae387881597b9e539bcf8 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 14:35:43 +0100 Subject: [PATCH 215/703] gsg nit --- website/docs/docs/build/sl-getting-started.md | 2 +- .../docs/use-dbt-semantic-layer/quickstart-sl.md | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index c46fa916f70..805174d74fc 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -17,7 +17,7 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. - [Test metrics](#test-metrics) with the MetricFlow - [Run a production job](#run-a-production-job) in dbt Cloud - [Set up dbt Semantic Layer](#set-up-dbt-semantic-layer) in dbt Cloud -- [Connect and query API](#connect-and-query-api) in dbt Cloud +- [Connect and query API](#connect-and-query-api) with dbt Cloud - [Test and query with the CLI](#test-and-query-with-the-cli) * For Developer plans or dbt Core users only diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 01a3630e6d2..e24773b3513 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -21,10 +21,11 @@ MetricFlow is a powerful component within the dbt Semantic Layer that helps user Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: - [Create a semantic model](#create-a-semantic-model) with MetricFlow -- [Create your metrics](#create-your-metrics) with MetricFlow -- [Run your production job](#run-your-production-job) in dbt Cloud -- [Set up dbt Semantic Layer](#setup) in dbt Cloud -- [Connect and Query API](#connect-and-query-apis) +- [Define metrics](#define-metrics) with MetricFlow +- [Test metrics](#test-metrics) with MetricFlow +- [Run a production job](#run-a-production-job) in dbt Cloud +- [Set up dbt Semantic Layer](#setup) in dbt Cloud +- [Connect and query API](#connect-and-query-api) with dbt Cloud ## Prerequisites @@ -151,11 +152,12 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; -## Connect and query APIs +## Connect and query API -This step requires you to connect to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC to query your metrics in downstream tools.

    +To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America. -Once you've connected to an API, you should then set up and query metrics in your downstream tool of choice. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. +1. Refer to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC. +2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. ## FAQs From 38f943ac078bea4e83abcab8de862d5b6015bb37 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 20 Jul 2023 14:43:59 +0100 Subject: [PATCH 216/703] Update website/docs/docs/cloud/about-cloud/browsers.md --- website/docs/docs/cloud/about-cloud/browsers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/about-cloud/browsers.md b/website/docs/docs/cloud/about-cloud/browsers.md index 4aa1e273f33..628fcc95938 100644 --- a/website/docs/docs/cloud/about-cloud/browsers.md +++ b/website/docs/docs/cloud/about-cloud/browsers.md @@ -24,6 +24,6 @@ To improve your experience using dbt Cloud, we suggest that you turn off ad bloc ### Browser sessions -A session is a period of time during which you’re signed in to a dbt Cloud account from a browser. dbt Cloud will not automatically log you out after a set time. However, if you close your browser, it will end your session and log you out. You'll need to log in again the next time you try to access dbt Cloud. +A session is a period of time during which you’re signed in to a dbt Cloud account from a browser. If you close your browser, it will end your session and log you out. You'll need to log in again the next time you try to access dbt Cloud. If you've logged in using [SSO](/docs/cloud/manage-access/sso-overview) or [OAuth](/docs/cloud/manage-access/set-up-snowflake-oauth), you can customize your session time, which might vary depending on your identity provider (IdP). From 219c42f7ca02d4ea83da6215ed59c255dea3d1a6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 20 Jul 2023 14:44:41 +0100 Subject: [PATCH 217/703] Update website/docs/docs/cloud/about-cloud/browsers.md --- website/docs/docs/cloud/about-cloud/browsers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/about-cloud/browsers.md b/website/docs/docs/cloud/about-cloud/browsers.md index 628fcc95938..88004a1f6ab 100644 --- a/website/docs/docs/cloud/about-cloud/browsers.md +++ b/website/docs/docs/cloud/about-cloud/browsers.md @@ -26,4 +26,4 @@ To improve your experience using dbt Cloud, we suggest that you turn off ad bloc A session is a period of time during which you’re signed in to a dbt Cloud account from a browser. If you close your browser, it will end your session and log you out. You'll need to log in again the next time you try to access dbt Cloud. -If you've logged in using [SSO](/docs/cloud/manage-access/sso-overview) or [OAuth](/docs/cloud/manage-access/set-up-snowflake-oauth), you can customize your session time, which might vary depending on your identity provider (IdP). +If you've logged in using [SSO](/docs/cloud/manage-access/sso-overview) or [OAuth](/docs/cloud/git/connect-github#personally-authenticate-with-github), you can customize your session time, which might vary depending on your identity provider (IdP). From d1edf3da64bc06502de4571446dd0537391ae361 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 20 Jul 2023 14:48:35 +0100 Subject: [PATCH 218/703] Update website/docs/docs/cloud/about-cloud/browsers.md --- website/docs/docs/cloud/about-cloud/browsers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/about-cloud/browsers.md b/website/docs/docs/cloud/about-cloud/browsers.md index 88004a1f6ab..2fc5a8b4b4d 100644 --- a/website/docs/docs/cloud/about-cloud/browsers.md +++ b/website/docs/docs/cloud/about-cloud/browsers.md @@ -26,4 +26,4 @@ To improve your experience using dbt Cloud, we suggest that you turn off ad bloc A session is a period of time during which you’re signed in to a dbt Cloud account from a browser. If you close your browser, it will end your session and log you out. You'll need to log in again the next time you try to access dbt Cloud. -If you've logged in using [SSO](/docs/cloud/manage-access/sso-overview) or [OAuth](/docs/cloud/git/connect-github#personally-authenticate-with-github), you can customize your session time, which might vary depending on your identity provider (IdP). +If you've logged in using [SSO](/docs/cloud/manage-access/sso-overview) or [OAuth](/docs/cloud/git/connect-github#personally-authenticate-with-github), you can customize your maximum session duration, which might vary depending on your identity provider (IdP). From 3deeb24886a80a743779c762c98a84baeb26896b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 14:56:22 +0100 Subject: [PATCH 219/703] FIX LINKS --- website/docs/docs/build/sl-getting-started.md | 10 +++++----- website/snippets/_test-tenancy.md | 2 -- website/snippets/_v2-sl-prerequisites.md | 8 ++++---- 3 files changed, 9 insertions(+), 11 deletions(-) delete mode 100644 website/snippets/_test-tenancy.md diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 805174d74fc..8d1a471b6d0 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -32,7 +32,7 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America * Set up the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions. - To query locally: - * dbt Core or Developer accounts must manually install the [MetricFlow CLI package](/docs/build/metricflow-cli) to test or query their metrics. After installing the package, make sure you run at least one model.
    + * dbt Core or Developer accounts must manually install the MetricFlow CLI (WILL ADD LINK WHEN CLI PR IS LIVE) to test or query their metrics. After installing the package, make sure you run at least one model.
    :::tip @@ -119,11 +119,11 @@ To continue building out your metrics based on your organization's needs, refer ## Test metrics -The following steps explain how to test your metrics using the [MetricFlow CLI](/docs/build/metricflow-cli) (dbt Cloud IDE support coming soon). +The following steps explain how to test your metrics using the MetricFlow CLI (WILL ADD LINK WHEN CLI PR IS LIVE) ) (dbt Cloud IDE support coming soon). dbt Core or Developer plan user should refer to [Test and query with the CLI](#test-and-query-with-the-cli) for detailed steps. -1. To test your metrics, make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. +1. To test your metrics, make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. 3. Run `mf validate-configs` to validate the changes before committing them @@ -145,7 +145,7 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; ## Connect and query API -To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America. +To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. 1. Refer to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC. 2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. @@ -158,7 +158,7 @@ Before you begin, make sure you install the `metricflow` and [dbt adapter](/docs To test your metrics locally: -1. Make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. +1. Make sure you have the MetricFlow CLI (WILL ADD LINK WHEN CLI PR IS LIVE) installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. 3. Run `mf validate-configs` to validate the changes before committing them diff --git a/website/snippets/_test-tenancy.md b/website/snippets/_test-tenancy.md deleted file mode 100644 index 7fa5fac97f1..00000000000 --- a/website/snippets/_test-tenancy.md +++ /dev/null @@ -1,2 +0,0 @@ - -dbt Cloud is available in both single (virtual private) and multi-tenant configurations. diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index bd10ad76c72..5006e1dc2a6 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -1,7 +1,7 @@ -- Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America +- Have a dbt Cloud Team or Enterprise [multi-tenant]/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America - Have both your production and development environments running dbt version 1.6 or higher - Use Snowflake, BigQuery, Databricks, and Redshift data platform - A successful run in the environment where your Semantic Layer is configured @@ -16,7 +16,7 @@ -- Have a multi-tenant dbt Cloud instance, hosted in North America
    +- Have a multi-tenant dbt Cloud instance, hosted in North America
    - Have both your production and development environments running dbt version 1.3 or higher
    - Use Snowflake data platform
    - Install the dbt metrics package version >=1.3.0, <1.4.0 in your dbt project
    @@ -29,7 +29,7 @@ -- Have a multi-tenant dbt Cloud instance, hosted in North America
    +- Have a multi-tenant dbt Cloud instance, hosted in North America
    - Have both your production and development environments running dbt version 1.3 or higher
    - Use Snowflake data platform
    - Install the dbt metrics package version >=1.3.0, <1.4.0 in your dbt project
    @@ -42,7 +42,7 @@ -- Have a multi-tenant dbt Cloud instance, hosted in North America
    +- Have a multi-tenant dbt Cloud instance, hosted in North America
    - Have both your production and development environments running dbt version 1.2
    - Use Snowflake data platform
    - Install the dbt metrics package version >=0.3.0, <0.4.0 in your dbt project
    From 68e994e398a425a9a44640067760d0f6f3709ca9 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 15:59:09 +0100 Subject: [PATCH 220/703] space --- website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md | 1 + 1 file changed, 1 insertion(+) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index e24773b3513..b239ddc83c7 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -84,6 +84,7 @@ measures: :::tip If you're familiar with writing SQL, you can think of dimensions as the columns you would group by and measures as the columns you would aggregate. + ```sql select metric_time_day, -- time From 0c9ef6cb000e77cf070d7ebd084efbc52ceaa78b Mon Sep 17 00:00:00 2001 From: dave-connors-3 <73915542+dave-connors-3@users.noreply.github.com> Date: Thu, 20 Jul 2023 10:16:01 -0500 Subject: [PATCH 221/703] Update metricflow-time-spine.md --- website/docs/docs/build/metricflow-time-spine.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 607df692bc9..650500b9aec 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -11,6 +11,12 @@ MetricFlow uses a timespine table to construct cumulative metrics. By default, M To create this table, you need to create a model in your dbt project called `metricflow_time_spine` and add the following code: ```sql +{{ + config( + materialized = 'table', + ) +}} + -- metricflow_time_spine.sql with days as ( {{dbt_utils.date_spine('day' From 7c4083a3cc74355b5b08192a77c85948e6d9ad98 Mon Sep 17 00:00:00 2001 From: dave-connors-3 <73915542+dave-connors-3@users.noreply.github.com> Date: Thu, 20 Jul 2023 10:18:26 -0500 Subject: [PATCH 222/703] move comment --- website/docs/docs/build/metricflow-time-spine.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 650500b9aec..6199346124c 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -11,13 +11,13 @@ MetricFlow uses a timespine table to construct cumulative metrics. By default, M To create this table, you need to create a model in your dbt project called `metricflow_time_spine` and add the following code: ```sql +-- metricflow_time_spine.sql {{ config( materialized = 'table', ) }} --- metricflow_time_spine.sql with days as ( {{dbt_utils.date_spine('day' , "to_date('01/01/2000','mm/dd/yyyy')" From 46a5775a81d8501f70c21f4be50150e65fd39570 Mon Sep 17 00:00:00 2001 From: dave-connors-3 <73915542+dave-connors-3@users.noreply.github.com> Date: Thu, 20 Jul 2023 10:19:30 -0500 Subject: [PATCH 223/703] formatting --- website/docs/docs/build/metricflow-time-spine.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 6199346124c..15415297ccc 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -19,11 +19,15 @@ To create this table, you need to create a model in your dbt project called `met }} with days as ( - {{dbt_utils.date_spine('day' - , "to_date('01/01/2000','mm/dd/yyyy')" - , "to_date('01/01/2027','mm/dd/yyyy')" - ) + + {{ + dbt_utils.date_spine( + 'day', + "to_date('01/01/2000','mm/dd/yyyy')", + "to_date('01/01/2027','mm/dd/yyyy')" + ) }} + ), final as ( @@ -31,8 +35,7 @@ final as ( from days ) -select * -from final +select * from final ``` You only need to include the `date_day` column in the table. MetricFlow can handle broader levels of detail, but it doesn't currently support finer grains. From f1a2e7e1b5eded7f7485364e80f6f6d3d6443156 Mon Sep 17 00:00:00 2001 From: winnie <91998347+gwenwindflower@users.noreply.github.com> Date: Thu, 20 Jul 2023 11:06:58 -0500 Subject: [PATCH 224/703] Update semantic-models.md Fix capitalization miss and add a link for clarity --- website/docs/docs/build/semantic-models.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/semantic-models.md b/website/docs/docs/build/semantic-models.md index 28fccaddb72..a304944a440 100644 --- a/website/docs/docs/build/semantic-models.md +++ b/website/docs/docs/build/semantic-models.md @@ -140,11 +140,11 @@ You can refer to entities (join keys) in a semantic model using the `name` param MetricFlow simplifies this by allowing you to query all metric groups and construct the join during the query. To specify dimensions parameters, include the `name` (either a column or SQL expression) and `type` (`categorical` or `time`). Categorical groups represent qualitative values, while time groups represent dates of varying granularity. -dimensions are identified using the name parameter, just like identifiers. The naming of groups must be unique within a semantic model, but not across semantic models since MetricFlow, uses entities to determine the appropriate groups. +Dimensions are identified using the name parameter, just like identifiers. The naming of groups must be unique within a semantic model, but not across semantic models since MetricFlow, uses entities to determine the appropriate groups. :::info For time groups -For semantic models with a measure, you must have a primary time group. +For semantic models with a measure, you must have a [primary time group](/docs/build/dimensions#time). ::: From e3e1b303d7cdcb7f1b288d6e734193ef7a25f98c Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 17:31:22 +0100 Subject: [PATCH 225/703] adding file --- website/snippets/_test-tenancy.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 website/snippets/_test-tenancy.md diff --git a/website/snippets/_test-tenancy.md b/website/snippets/_test-tenancy.md new file mode 100644 index 00000000000..7fa5fac97f1 --- /dev/null +++ b/website/snippets/_test-tenancy.md @@ -0,0 +1,2 @@ + +dbt Cloud is available in both single (virtual private) and multi-tenant configurations. From d972fb3dc70aeabce3d171f51a46e51f008f01a2 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 20 Jul 2023 17:43:29 +0100 Subject: [PATCH 226/703] fix link --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 7ea30e5e737..eec19374fe4 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -29,7 +29,7 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. - A successful run in the environment where your Semantic Layer is configured * Note — Deployment environment is currently supported (_development experience coming soon_) - To query with dbt Cloud: - * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America + * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America * Set up the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions. - To query locally: * dbt Core or Developer accounts must manually install the [MetricFlow CLI](/docs/build/metricflow-cli) to test or query their metrics. After installing the package, make sure you run at least one model.
    From aebdcc543da40335028600f5d2a18f4ebfaff464 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Thu, 20 Jul 2023 11:19:56 -0700 Subject: [PATCH 227/703] Update avail-sl-integrations.md adding more details on the boundaries of our JDBC driver --- .../docs/use-dbt-semantic-layer/avail-sl-integrations.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 8ebf96278df..30c2337b5dc 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -22,10 +22,10 @@ Discover the diverse range of data applications that seamlessly integrate with t The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. Here are some of the integrations you can query from: -- Google Sheets — coming soon - Hex — -- Mode — -- Any SQL developer tool that supports a generic driver, such as DataGrip +- Mode — +- Google Sheets - Coming Soon! +- Any tool that allows you to write SQL and meets one of the two criteria -- (a) supports a generic JDBC driver option (e.g., DataGrip) or (b) supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or greater. For information on the partner integrations, their documentation, and more — refer to the [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) page. From cfb3cc58683f0ed3b44019367a9c9d7dd78b7112 Mon Sep 17 00:00:00 2001 From: Brian Jan Date: Thu, 20 Jul 2023 13:42:42 -0500 Subject: [PATCH 228/703] Update set-up-sso-azure-active-directory.md Fix redirect URI in Azure AD SSO doc --- .../cloud/manage-access/set-up-sso-azure-active-directory.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md b/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md index fcc9a79e860..f58bceff816 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-azure-active-directory.md @@ -45,7 +45,7 @@ need to select the appropriate directory and then register a new application. | Application Type | Redirect URI | | ----- | ----- | -| Single-Tenant _(recommended)_ | `https://YOUR_AUTH0_URI/login/callback?connection=` | +| Single-Tenant _(recommended)_ | `https://YOUR_AUTH0_URI/login/callback` | | Multi-Tenant | `https://YOUR_AUTH0_URI/login/callback` | From bd6dd60f4b0b2d82eb05327979be43f22a4ecfcb Mon Sep 17 00:00:00 2001 From: rpourzand Date: Thu, 20 Jul 2023 13:10:45 -0700 Subject: [PATCH 229/703] Update sl-jdbc.md Adding new JDBC metadata commands! --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 30 ++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 440e0bfbd8a..f050c7bd635 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -81,7 +81,6 @@ select * from {{ semantic_layer.dimensions(metrics=['food_order_amount'])}} ``` - @@ -97,6 +96,35 @@ semantic_layer.dimension_values(metrics=["food_order_amount"], group_by="custome + + +Use this query to fetch queryable granularities for a list of metrics. This argument allows you to only show the time granularities that make sense for the source model that the metrics are built off of. + +Note, `metrics` is a required argument that lists with one or multiple metrics in it. + +```bash +select * from {{ + semantic_layer.queryable_granularities(metrics=['food_order_amount', 'order_gross_profit'])}} +``` + + + + + + +Use this query to fetch available metrics given dimensions. This command is essentially the opposite of getting dimensions given a list of metrics. + +Note, `group_by` is a required argument that lists one or multiple dimensions in it. + +```bash +select * from {{ + semantic_layer.metrics_for_dimensions(group_by=['customer__customer_type']) + +}} +``` + + + ## Querying the API for metric values From 9a64f9017ea9a1dcf1d320e4a453b9ae036f1110 Mon Sep 17 00:00:00 2001 From: Anders Date: Thu, 20 Jul 2023 16:38:13 -0400 Subject: [PATCH 230/703] Apply suggestions from code review --- website/docs/reference/resource-configs/postgres-configs.md | 3 ++- website/docs/reference/resource-configs/redshift-configs.md | 1 + website/docs/reference/resource-configs/snowflake-configs.md | 4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/website/docs/reference/resource-configs/postgres-configs.md b/website/docs/reference/resource-configs/postgres-configs.md index d4f6958ae27..2e603ba8111 100644 --- a/website/docs/reference/resource-configs/postgres-configs.md +++ b/website/docs/reference/resource-configs/postgres-configs.md @@ -150,9 +150,10 @@ models: ### Limitations +Below are current limitations that we hope to address in a future release. #### Changing materialization to and from "materialized_view" -Swapping an already materialized model to be a materialized view and vise versa. The workaround is the manually drop the existing materialization in the data warehouse before calling `dbt run` again. +Swapping an already materialized model to be a materialized view and vise versa. The workaround is the manually drop the existing materialization in the data warehouse before calling `dbt run` again. Normally, re-running with the `--full-refresh` flag would resolve this, but not in this case. To illustrate, assume for the example model below, `my_model`, that it has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="materialized_view"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 00dfe517cea..0991afc21db 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -138,6 +138,7 @@ models: ### Limitations +Below are current limitations that we hope to address in a future release. #### Changing materialization from "materialized_view" to table or view Swapping a materialized view to be a table or view is not supported. The workaround is to manually drop the existing materialized view in the data warehouse before calling `dbt run` again. diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 154f8795eea..da110fd50df 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -362,7 +362,7 @@ The following examples create a dynamic table: config( materialized = 'dynamic_table', warehouse = 'MY_WAREHOUSE', - target_lag = '10 min', + target_lag = '10 minutes', ) }} ``` @@ -376,7 +376,7 @@ models: path: materialized: dynamic_table warehouse: MY_WAREHOUSE - target_lag: '10 min' + target_lag: '10 minutes' ``` From 3cabbd220b864a17837e4957bdf51e5bdf505b82 Mon Sep 17 00:00:00 2001 From: Anders Swanson Date: Thu, 20 Jul 2023 16:43:18 -0400 Subject: [PATCH 231/703] explicitly callout parameters --- .../resource-configs/snowflake-configs.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index da110fd50df..9644a1539f5 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -346,7 +346,19 @@ In the configuration format for the model SQL file: ## Dynamic Tables -[Dynamic Tables](https://docs.snowflake.com/en/user-guide/dynamic-tables-about) are Snowflake's flavor of Materialized Views. The `CREATE DYNAMIC TABLE` ([docs](https://docs.snowflake.com/en/sql-reference/sql/create-dynamic-table)) statement requires the following parameters `TARGET_LAG` and `WAREHOUSE`, so a dbt-snowflake user must also provide these. +[Dynamic Tables](https://docs.snowflake.com/en/user-guide/dynamic-tables-about) are Snowflake's flavor of Materialized Views. + +### Parameters + +dbt-snowflake requires the following parameters: + +- `TARGET_LAG` +- `WAREHOUSE` + +To learn more about each parameter and what values it can take, see +the Snowflake docs page: [`CREATE DYNAMIC TABLE: Parameters`](https://docs.snowflake.com/en/sql-reference/sql/create-dynamic-table) + +### Usage You can create a dynamic table by editing _one_ of these files: From dd64a6e9e8f06c556263582ebeb0455b6a7a68a7 Mon Sep 17 00:00:00 2001 From: "Alison (she/her)" Date: Thu, 20 Jul 2023 17:43:35 -0400 Subject: [PATCH 232/703] Update database.md to fix a link and clarify the Redshift specific consideration --- website/docs/reference/resource-configs/database.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/resource-configs/database.md b/website/docs/reference/resource-configs/database.md index b4759d8b6f3..4e7ce3be039 100644 --- a/website/docs/reference/resource-configs/database.md +++ b/website/docs/reference/resource-configs/database.md @@ -12,7 +12,7 @@ This is a work in progress document. While this configuration applies to multipl ## Definition -Optionally specify a custom database for a [model](docs/build/models) or [seed](/docs/build/seeds). (To specify a database for a [snapshot](/docs/build/snapshots), use the [`target_database` config](/reference/resource-configs/target_database)). +Optionally specify a custom database for a [model](/docs/build/sql-models) or [seed](/docs/build/seeds). (To specify a database for a [snapshot](/docs/build/snapshots), use the [`target_database` config](/reference/resource-configs/target_database)). When dbt creates a relation (/) in a database, it creates it as: `{{ database }}.{{ schema }}.{{ identifier }}`, e.g. `analytics.finance.payments` @@ -43,4 +43,4 @@ seeds: ## Warehouse specific information * BigQuery: `project` and `database` are interchangeable -* Redshift: Cross-database queries are not possible in Redshift. As such, dbt will return a Database Error if you use this configuration. +* Redshift: Cross-database queries are not possible in Redshift. As such, dbt will return a Database Error if you use 'Database A' for a seed file and try to `{{ ref() }}` that seed file(or its database object) in a model using 'Database B'. This error would only be found at runtime. From d5cd737a9764e7a881abda4bc3dc0cea88c559aa Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Fri, 21 Jul 2023 09:59:14 +0100 Subject: [PATCH 233/703] Update website/docs/docs/dbt-versions/experimental-features.md --- website/docs/docs/dbt-versions/experimental-features.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/experimental-features.md b/website/docs/docs/dbt-versions/experimental-features.md index 02a8157d4cd..5ed0cf037ca 100644 --- a/website/docs/docs/dbt-versions/experimental-features.md +++ b/website/docs/docs/dbt-versions/experimental-features.md @@ -24,4 +24,4 @@ To enable or disable experimental features: ## Beta terms and conditions -By using or enabling features that aren't yet in general release ("Beta Features"), you agree to the [Beta Features Terms and Conditions](/assets/beta-tc.pdf). +By using or enabling features that are not yet in general release ("Beta Features"), you agree to the [Beta Features Terms and Conditions](/assets/beta-tc.pdf). From 87f34aac03abc465a3fb26858733d08ea4836691 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Fri, 21 Jul 2023 13:26:11 +0100 Subject: [PATCH 234/703] add screenshots, edit best practices --- website/docs/docs/build/metricflow-cli.md | 2 + website/docs/docs/build/sl-getting-started.md | 28 +-- .../avail-sl-integrations.md | 4 +- .../use-dbt-semantic-layer/quickstart-sl.md | 8 +- .../sl-partner-integration-guide.md | 175 ++++++++++++++++-- website/snippets/_new-sl-setup.md | 22 ++- website/snippets/_v2-sl-prerequisites.md | 3 +- .../semantic-layer/sl-configure-sl.jpg | Bin 0 -> 48952 bytes .../semantic-layer/sl-initial-page.jpg | Bin 0 -> 29742 bytes 9 files changed, 197 insertions(+), 45 deletions(-) create mode 100644 website/static/img/docs/dbt-cloud/semantic-layer/sl-configure-sl.jpg create mode 100644 website/static/img/docs/dbt-cloud/semantic-layer/sl-initial-page.jpg diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 9e934e9ccca..8687d4e31aa 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -15,6 +15,8 @@ You can install the [MetricFlow CLI](https://github.com/dbt-labs/metricflow#gett 1. Create or activate your virtual environment.`python -m venv venv` 2. Run `pip install dbt-metricflow` + * You can install MetricFlow using PyPI as an extension of your dbt adapter in the CLI. To install the adapter, run `pip install "dbt-metricflow[your_adapter_name]"` and add the adapter name at the end of the command. For example, for a Snowflake adapter run `pip install "dbt-metricflow[snowflake]"` + The MetricFlow CLI is compatible with Python versions 3.8, 3.9, 3.10 and 3.11 # CLI commands diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index eec19374fe4..71145beed8f 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -119,9 +119,10 @@ To continue building out your metrics based on your organization's needs, refer ## Test metrics -The following steps explain how to test your metrics using the [MetricFlow CLI](/docs/build/metricflow-cli) (dbt Cloud IDE support coming soon). - -dbt Core or Developer plan user should refer to [Test and query with the CLI](#test-and-query-with-the-cli) for detailed steps. +:::note +For public beta, you can't yet test metrics using the dbt Cloud IDE (support coming soon). To test metrics, you must install the [MetricFlow CLI](/docs/build/metricflow-cli). + * dbt Core or Developer plan users can skip to [Test and query with the CLI](#test-and-query-with-the-cli) for detailed steps. +::: 1. To test your metrics, make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. @@ -145,24 +146,26 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; ## Connect and query API -To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. +Before you begin, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. + +To connect and query your metrics using the dbt Semantic Layer and its API: 1. Refer to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC. -2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. +2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. -## Test and query with the CLI +Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. -Before you begin, make sure you install the `metricflow` and [dbt adapter](/docs/supported-data-platforms) via PyPI in the CLI. To install them, open the command line interface (CLI) and use the pip install command `pip install "dbt-metricflow[your_adapter_name]"`. +## Test and query with the CLI - * Note that specifying `[your_adapter_name]` is required. This is because you must install MetricFlow as an extension of a dbt adapter. For example, for a Snowflake adapter, run `pip install "dbt-metricflow[snowflake]"`. +Before you begin, dbt Core or Developer plan users must first install the [MetricFlow CLI](/docs/build/metricflow-cli). -To test your metrics locally: +**Test using the CLI:** -1. Make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. +1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. 3. Run `mf validate-configs` to validate the changes before committing them -To query your metrics locally: +**Query using the CLI:** 1. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. 2. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. @@ -173,6 +176,3 @@ To query your metrics locally: - [Get started with the dbt Semantic Layer](/docs/use-dbt-semantic-layer/quickstart-sl) - [The dbt Semantic Layer: what’s next](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/) blog post - [About MetricFlow](/docs/build/about-metricflow) -- [Semantic models](/docs/build/semantic-models) -- [Metrics](/docs/build/metrics-overview) -- [MetricFlow CLI](/docs/build/metricflow-cli) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 30c2337b5dc..ac6317a9c9d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -25,7 +25,9 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi - Hex — - Mode — - Google Sheets - Coming Soon! -- Any tool that allows you to write SQL and meets one of the two criteria -- (a) supports a generic JDBC driver option (e.g., DataGrip) or (b) supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or greater. +- Any tool that allows you to write SQL and meets one of the two criteria: + * Supports a generic JDBC driver option (such as DataGrip) or + * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. For information on the partner integrations, their documentation, and more — refer to the [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) page. diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index b239ddc83c7..5e85f87e792 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -117,7 +117,7 @@ metrics: ## Test metrics -The following steps explain how to test and manually query your metrics using the [MetricFlow CLI](/docs/build/metricflow-cli) only. dbt Cloud IDE support will be available soon. +The following steps explain how to test and manually query your metrics. 1. Make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. 2. Run `mf validate-configs` to validate the changes before committing them. @@ -158,7 +158,9 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America. 1. Refer to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC. -2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. +2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. + +Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. ## FAQs @@ -181,7 +183,7 @@ The dbt Semantic Layer is proprietary, however, some components of the dbt Seman ## Next steps -Are you ready to define your own metrics and bring consistency to data consumers? Review the following documents to understand how to structure, define, and query metrics, and set up the dbt Semantic Layer. +Ready to define your own metrics and bring consistency to data consumers? Review the following documents to get started: - [Set up dbt Semantic Layer](docs/use-dbt-semantic-layer/setup-dbt-sl) - [Build your metrics](/docs/build/build-metrics-intro) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index 6f7ae1df2e7..b5f848d9832 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -1,15 +1,163 @@ --- -title: "dbt Semantic Layer integration" +title: "dbt Semantic Layer integration best practices" id: "sl-partner-integration-guide" description: Learn about partner integration guidelines, roadmap, and connectivity. --- -# dbt Semantic Layer partner integration + -:::info Coming soon -The dbt Semantic Layer is undergoing some sophisticated changes, enabling more complex metric definitions and efficient querying. As part of these changes, the dbt_metrics package will be deprecated and replaced with MetricFlow. For more info, check out the [The dbt Semantic Layer: what's next?](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/) and [dbt_metrics deprecation](https://docs.getdbt.com/blog/deprecating-dbt-metrics) blog. +import NewChanges from '/snippets/_new-sl-changes.md'; + + + +To fit your tool within the world of the Semantic Layer, dbt Labs offers some best practice recommendations for how to expose metrics and allow users to interact with them seamlessly. + +:::note +This is an evolving guide that is meant to provide recommendations based on our experience. If you have any feedback, we'd love to hear it (email?)! ::: + +## Requirements + +To build a dbt Semantic Layer integration: + +- Initially, we recommend building an integration with the [JDBC](/docs/dbt-cloud-apis/sl-jdbc) followed by enhancements of additional features. Refer to the dedicated [dbt Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) for more technical integration details. + +- Familiarize yourself with the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and [MetricFlow](/docs/build/about-metricflow)'s key concepts. There are two main objects: + + - [Semantic models](/docs/build/semantic-models) — Nodes in your semantic graph, connected via entities as edges. MetricFlow takes semantic models defined in YAML configuration files as inputs and creates a semantic graph that you can use to query metrics. + - [Metrics](/docs/build/metrics-overview) — Can be defined in the same YAML files as your semantic models, or split into separate YAML files into any other subdirectories (provided that these subdirectories are also within the same dbt project repo). + +### Connection parameters + +The dbt Semantic Layer authenticates with: +- `environmentId`, +- `SERVICE_TOKEN`, +- `host` + +This applies to the dbt Semantic Layer APIs, which all currently use different host names. + +We recommend you provide users with separate input fields with these components (which dbt Cloud provides). + +For [JDBC](/docs/dbt-cloud-apis/sl-jdbc), you can construct the JDBC URL from these inputs. Or, you could request the full URL string. + +If you use both Semantic Layer APIs, users will need to provide different host information for each one. In the future, we want to unify these host names. + +## Best practices on exposing metrics: + +Best practices for exposing metrics is summarized into five themes: + +- [Governance](#governance-and-traceability) — +- [Discoverability](#discoverability) — +- [Organization](#organization) — +- [Context and interpretation](#context-and-interpretation) — +- [Query flexibility](#query-flexibility) — + +### Governance and traceability + +When working with more governed data, it's essential to establish clear guardrails. Here are some recommendations: + +**Aggregations control**
    +Users shouldn't generally be allowed to modify aggregations unless they are performing post-processing calculations on data from the Semantic Layer (such as year over year analysis). + +**Traceability of metric and dimension changes**
    +When users change names of metrics and dimensions for reports, it's crucial to have a traceability mechanism in place to link back to the original source metric name. + +**Time series alignment**
    +Make sure users view metrics across the correct time series. When displaying metric graphs, using a non-default time aggregation dimension might lead to misleading interpretations. While users can still group by other time dimensions, they should be careful not to create trend lines with incorrect time axes. + +Implementing guardrails in the application might help achieve this. + +**Units consistency**
    +If units are supported, it's vital to avoid plotting data incorrectly with different units. Ensuring consistency in unit representation will prevent confusion and misinterpretation of the data. + +### Discoverability + +1. Consider treating [metrics](/docs/build/metrics-overview) as first-class objects rather than measures. Metrics offer a higher-level and more contextual way to interact with data, reducing the burden on end-users to manually aggregate data. + +2. Easy metric interactions: Provide users with an intuitive approach to: + + * Search for Metrics — Users should be able to easily search and find relevant metrics. Metrics can serve as the starting point to lead users into exploring dimensions. + * Search for Dimensions — Users should be able to query metrics with associated dimensions, allowing them to gain deeper insights into the data. + * Filter by Dimension Values — Expose and enable users to filter metrics based on dimension values, encouraging data analysis and exploration. + * Filter additional metadata — Allow users to filter metrics based on other available metadata, such as metric type and default time granularity. + +3. Suggested Metrics: Ideally, the system should intelligently suggest relevant metrics to users based on their team's activities. This approach encourages user exposure, facilitates learning, and supports collaboration among team members. + +By implementing these recommendations, the data interaction process becomes more user-friendly, empowering users to gain valuable insights without the need for extensive data manipulation. + +### Organization + +We recommend organizing metrics and dimensions in ways that a non-technical user can understand the data model, without needing much context: + +**Organizing Dimensions** + +To help non-technical users understand the data model better, we recommend organizing dimensions based on the entity they originated from. For example, consider dimensions like `user__country` and `product__category`. + +You can create groups by extracting `user` and `product` and then nest the respective dimensions under each group. This way, dimensions align with the entity or semantic model they belong to and makes them them more user-friendly and accessible. + +**Organizing Metrics** + +The goal is to organize metrics into a hierarchy in our configurations, instead of presenting them in a long list. + +This hierarchy helps you organize metrics based on a specific criteria, such as business unit or team. By providing this structured organization, users can find and navigate metrics more efficiently, enhancing their overall data analysis experience. + +### Context and interpretation + +For better analysis, it's best to have the context of the metrics close to where the analysis is happening. We recommend the following: + +- Expose business definitions of the metrics as well as logical definitions +- Expose additional metadata from the Semantic layer (measures, type parameters) +- Use the [Discovery API](/docs/dbt-cloud-apis/discovery-api) to enhance the metric and build confidence in its accuracy: + * Check if the metric is fresh and when it was last updated. + * Include lineage information to understand the metric's origin. +- Allow for creating other metadata that’s useful for the metric. We can provide some of this information in our configuration (Display name, Default Granularity for View, Default Time range), but there may be other metadata that your tool wants to provide to make the metric richer. + +### Query flexibility + +Allow users to query either one metric without dimensions or one or more metrics with dimensions + +- Allow toggling between metrics / dimensions seamlessly +- Be clear on exposing what dimensions are queryable with what metrics and hide things that don’t apply, and vice versa. +- Include Presets for filtering date ranges and calendar for filtering time dimensions + * For example, last 30 days, last week etc. +- Only expose time granularities (monthly, daily, yearly) that match the available metrics. + * For example, if a dbt model and its resulting semantic model have a monthly granularity, make sure querying data with a 'daily' granularity" isn't available to the user. + +### Example stages of an integration + +**Stage 1 - The basic** +* Supporting and using the new [JDBC](/docs/dbt-cloud-apis/sl-jdbc) is the first step. Refer to the [dbt Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) for more technical details. + +**Stage 2 - More discoverability and basic querying** +* Support listing metrics defined in project +* Listing available dimensions based on one or many metrics +* Querying defined metric values on their own or grouping by available dimensions +* Display metadata from [Discovery API](/docs/dbt-cloud-apis/discovery-api) and other context + +**Stage 3 - More querying flexibility and better user experience (UX)** +* More advanced filtering + * Time filters with good presets/calendar UX + * Filtering metrics on pre-populated set of dimensions values +* Make dimension values more user-friendly by organizing them effectively +* Intelligent filtering of metrics based on available dimensions and vice versa + +**Stage 4 - More custom user interface (UI) / Collaboration** +* A place where users can see all the relevant information about a given metric +* Organize metrics by hierarchy and more advanced search features (such as filter on the type of metric or other metadata) +* Use and expose more metadata +* Querying dimensions without metrics and other more advanced querying functionality +* Suggest metrics to users based on teams/identity, and so on. + +
    + + + +import LegacyInfo from '/snippets/_legacy-sl-callout.md'; + + + + This guide is for dbt Semantic Layer integration partners and explains integration guidelines, and connectivity.
    To become a formal partner, integrate with the API, or have questions/feedback — **[contact us](mailto:semantic-layer@dbtlabs.com)** for more info. @@ -107,17 +255,6 @@ To use the dbt Semantic Layer, you must meet the [prerequisites](/docs/use-dbt-s


- - ### Query models for a project You can query model definitions or details about a specific model for a project from a given job. @@ -412,7 +549,6 @@ from {{ ref('orders') }} ### Entities - dbt Labs will introduce a new node type, **[entity](https://github.com/dbt-labs/dbt-core/issues/6379)**, when dbt Core version 1.5 launches. It introduces a new and efficient way to define metrics by reusing logic (for example, `time_grains`). @@ -650,11 +786,12 @@ If you'd like to become a formal partner, have product feedback/questions, or ar + + ## Related docs -- [dbt Semantic Layer docs](https://docs.getdbt.com/docs/use-dbt-semantic-layer/dbt-sl) to learn about the product. -- [dbt Metrics docs](https://docs.getdbt.com/docs/building-a-dbt-project/metrics) for more information about its components. -- [dbt Semantic Layer intro blog](https://www.getdbt.com/blog/dbt-semantic-layer/) and [launch blog](https://www.getdbt.com/blog/frontiers-of-the-dbt-semantic-layer/) to learn more about the product vision and purpose. +- [Use the dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) to learn about the product. +- [Build your metrics](/docs/build/build-metrics-intros) for more info about MetricFlow and its components. - [dbt Semantic Layer integrations page](https://www.getdbt.com/product/semantic-layer-integrations) for information about the available partner integrations. diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 65f38fd625d..f4b7f7763a3 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -6,18 +6,26 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 1. Create new [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) or use an existing environment on dbt 1.6 or higher. * Note — Deployment environment is currently supported (_development experience coming soon_) + 2. Navigate to **Account Settings** and select the specific project you want to enable the Semantic Layer for. -3. In the **Project Details** page, navigate to **Configure Semantic Layer**. -4. Enter the credentials you want the Semantic Layer to use specific to your data platform. + +3. In the **Project Details** page, navigate to the **Semantic Layer** section, and select **Configure Semantic Layer**. + + + +4. In the **Set Up Semantic Layer Configuration** page, enter the credentials you want the Semantic Layer to use specific to your data platform. * Note: We recommend using a less privileged set of credentials because your Semantic Layer users will be querying it in downstream applications. At a minimum, the Semantic Layer needs to have read access to the schema(s) that contains the dbt models that you used to build your semantic models. -5. Select the deployment environment you want for the Semantic Layer + +5. Select the deployment environment you want for the Semantic Layer and click **Save**. + + + 6. You should see connection information that allows you to connect to downstream tools. * If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). -7. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. -8. Save & copy your environment ID, service token, and host for inputting into a downstream tool -9. Great job, you've configured the Semantic Layer 🎉! - +7. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. +8. Save and copy your environment ID, service token, and host for inputting into a downstream tool +9. Great job, you've configured the Semantic Layer 🎉! diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 5006e1dc2a6..7dde6f32572 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -1,7 +1,7 @@ -- Have a dbt Cloud Team or Enterprise [multi-tenant]/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America +- Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America - Have both your production and development environments running dbt version 1.6 or higher - Use Snowflake, BigQuery, Databricks, and Redshift data platform - A successful run in the environment where your Semantic Layer is configured @@ -9,6 +9,7 @@ - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions * Developer accounts will be able to query manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you'll need to have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
+- Have an understanding of [MetricFlow's](/docs/build/about-metricflow) key concepts, which powers the revamped dbt Semantic Layer.
diff --git a/website/static/img/docs/dbt-cloud/semantic-layer/sl-configure-sl.jpg b/website/static/img/docs/dbt-cloud/semantic-layer/sl-configure-sl.jpg new file mode 100644 index 0000000000000000000000000000000000000000..41fe17c7654149b3fc3f61a4f2428f0556ec96ce GIT binary patch literal 48952 zcmeFZWmsKH6E27Z2oNB_B{&3k4Q|0*H|`KTxNj^#Ah=8L06{nIupwyB1b2eFyWf>_ z&i5Ve+?ikZ&&)g*)_(S)*6Qx+>gw*Qx2g$KR+K_RAw+?JfkBgzmQaO(fr|w``Ogsn zN_>0$2N)Pw6)SOZWf^gCGG!+R3oBc57#RFS*O*GVPUV+9&~e!cKHjZ@81g_9#<-na zwK-8)Vlj=HK%=xtb?Ft3FzHA5UPZ;>VS87Xm(Lv4u z>Zv`CTNIUy^r%62krlc;$4xd2yO7N4;}C3oiHYx(5AC2y6f<_TCiC_JWNcy%lCe-w zfT0KOpToexV#2@!cd)=OOsEyiv%l_PVBP@VFfj0OAuve5Hzx2=&W8KXQ@Ge{`2XJL z|9MeVO_*OG@GB>w(e(&Hyvr>TpjH{rPI>-g2AkSy&V8?81=3rvZ>|qCtG4Lbc z!3W&hnY$R1dDz+7JM(!6QvCG>A8`MN%tAr-*DEeIf)pSHWioLGCv!4xW>#ia3Lz9S zGBN=tGYdXd3CVwo1AhrpymxW=z{kSk?(WX)&cW>9WXZzz_U&61R(2M4b|&BrCTCB3 z7h?}5duPhOEBQ}766VgPPF5dWtQ_pg{?u!1;^68cNI~(Zq5uB;&8NAC)xRy-JO9%y zpo1)bp0Kbnv$Fi(6?3t&_kES{EG?DMmjb(S0V>9e|;%j^;4CZLcX9%A7)O1V3G8! zmTc1KtuQo{V~F3~V$pNy*5K0M@^XH}cPaJl?d6xZo2i>$I2_tiUggBVApd)bU_QH$ z`_9rD_mt?5nT`1)LHkld-h_v;SUBZvqVcmKawHTZ&Rk z)Jm$xi#31oFx}vpwZn9Q0DfOyRsF)i&&5mAwSca;@33#wP-VH#i!1r1w zhtNl_45#yJ;m5r=*DODBU5XU2vyG@B_*{WbtEleoa9Omm_PN#2OwVUqBd{)6cWtb8*U7xi8P#wj{!brAMYDe{ zhaxk^Xl^j+(KAf>*ejjmPnEW_e5YcFP3*IBfHH6?I?%4uPsXLW63H#E4)m3^9Bh-o1^ujem1nk`OP#Zvz4uzbCZXk`r{=}O2ja&PP0R684iCi-u(GSQQ%j8R6d4%` zdEV1g_iH3JS!Plm4yVPFnGL(5n+U8f%$%H#K>NCWuoQf`UUXl~+v{NDK_T(?ns+Ot zALH8Pj8k1N86dFaN^U&GHPd#?rn=bnj_xrm-Evedx3xO0I4SfwUib2J81}h-2qmpz z+*haU@r}Ga3oe56ysJE0HGj*u8^5HK)mm*#JNIF zJE#K(wo#Ua`FQupTTSIShww@Y^Qg2fo<#}>8>=JMXQQ5Ouq3qIA0{6xG)ZTSStEEl zms{2*ZUoAe$E-7GT6u+%czsgjD!<=zw(@=_mHN>0S+!b{i-x6fo$Qn2p{_$x9JOMS zq~+uY(>oa(Ar**1dVN1@Mnq`r=UF|vEXGs@n#>PAI%5)M$}M}?7rEDm(j9>a=DU;7 zwUIJi1le`uUOYMPwA9F>lF0Nkp)$?dsv3LO0IUTBrr~%)@I6!S#@r8DjKB5vt4{t& zm0tjyNn+1-^(xw%NTTti@WKSeRCOxqlZh#JU3g>B)SEkJr@hKx^JOHtuX0l)PTmk* zAFN)NOK|yH&)w}?Qoou|?Hl5RHvV5D(5q1uGE(m=AuD%nB94kjIt&3`<+l5WTM-0y z+|M#?KG*Xq*Ce;spW`63;FxT~y9Sc3hN~Ym{dR&)9dg+c3jC~a(c*losPqtinX3+{ z;av0n1vrYG=PXPrfBkyMtamtLw0cV4X*8_&mOe&hv}POWTK{&2?_9Om3|WKB(W#Fd zA%6~SYBrmoZS2R8WE5BG_337PA;90TlJNcO&5=y1ex5soZmZP~el)97#8JI}FJQl( zi^zPW*w!E$u~OISPoyJZii0tXEvOdOxd}rQzWnmWY2NXji+{P+CFk|~U*4*(9brRszpI zbRd0p%^)b4W4jmfS$j|8>o9L4bU)bWavaR`RV3ifNg_w=4{i=0_ z46l!3h++N2YUdRZTIDK+WAk-(x_a{!DNv|UtbzAcKy$v`?&r1NK^T)aBy27*^D~>1 zypI)%OCG0o{rIkMLMbTqn6*NZkr`w`p)baaQraZ>ecjG@ugzvq1ce^I%h@H|2zn0- zG*-CshZ5b*`F(`d^?qob`D(hJc}p_7YlK>P-TC5s{gN+)0~r+m_A1PnPzrS4zJJjM z&zTu5tbOnmsX+9)haGv4H5<)XM!I*m>BpDGLz~wZt93&6oXqp?@CSa=Rt`ta^^*m& zEl25pmb(*dSmEa6rCO>Si7JW7Zw4AuqG%-SdQk!=&#l}&iHLnLru`lp)-s7X47?T= z4I#wNgTIPtMYU(!d_&Lnz@}eRKZ+tf@;^TCGe@Z_nn(sz$wqrKt%g9_lK5{IEZttO zC)+@*vdDMT`jcJD^&QV$C1bbf3MYzlrsmDXg+`!T?B+01^4?0G$L6W$i+ZW2!@I>G z(`-o+T-Q%pZ3bU%(u{t(K$g0W?Lx-(2q0EEAW{^B>7Gc3s{k=xhe=(h9lG@{eM#DW zH!o~3De>7?PT~3@^>TIcgvy~+<51#oBYNc|otmb>FbwlfzE-vVL{|_9sse>>K`zqBYZ4Oh*NRSeh>2I?Q^^CLpVucW=iBKN( z=htw^XXst)9EtSzWZx#Q*coFn+n8UF#CDGuvt;@inSs-v>}068;{l~@^G>BxrVWmH zfF~IrdR{@{d%Ewg_~ErKg46fuS5e+<=v|*q+mJ|cSV!PjfO;jDZl2p77;|T7g$y;<6IjxPYFcwvB7&Z%_Tg63)H&Aks-2&kzA2IP?J#?UX>DNg1NYUaXAr*zc!y(w_S~ zA$J=!H4sJ2KfhQzr0BhmFmp7+-a#nWH-CM+>#_oO^zkp#jEovCt5lDuP$YA#q5Ss} zN`l;#j0Oc=EcKv8#HFQDJQ1Ja>enDED|zBJ<5G^8cc0yLe;avz_v+X_9E?*~^4X=$ z+MV=W{;06gUN-m+dFmm&&YDi34WweVR9=P{fUqfL%5)sxe7Hl2l|@t}3pdY(Z&KVe zv`$RC`?>(1Jdr{3r~Z1yI1byc7*B?;z}K&>fVNJ+dk94Ke(d9+gS?uFJlN-ri-@j{T2&j4*qRo9rt7z)p{QP^n6@Z7ZhA!LnS)J}6`Qv6eHz)F z?0OfHY{vx)!WZJoZ$xHaG7 zoL=efr|7pgv>c~DC&El-P8Nu!_7Fg?ZKjILWv!~6heroa@qCOjt`+{Wd1DaaNWm?# z8_ZV@ZfB(&it$eQpLd0$%GxpR3MhbW_!S#t?Byb`xbAqyw^3{agd!Ek1=p%6Cuyb> z@jORt9+)#M={<-x9Eut?d)91beBA-nEoJw&3BCkLEgT%IVsHPH%1e;B=38x&ES;K~H{u*LR`UgN$CkSR$mN zAtv>P7cw)`^x}7s@kn2+)N67%q4|4smZO2e^5gKrr04;ggqtwbmrg6?G$5w31X^(1 zB+E?@myNJm{;#G+Xf&VGrC=NZ^$am-w9H=~N>?ezqc|?(wFAKvfve3Y?^(iLzsJ+) zJhSf(+i^6h`Qf3|!7Oo@VYSNFr-y~OlJZs^aWK17lMbRPpjL}AqfNSJ{To!KGpC9K zNlfwcU%c1D3yYls6iDqmqO6}|GwoqwVA0ZO$|f?}W30C2^zB0*?O%Xy!-`rY6?AvX z_v;Hs)JrJ(pPA#La3(0!H{b|eo|{D(msO*zF|b77(Yj!y46z51kkVgY3?$2|%UpMh zIGA^bPdG^iJ<88tcvUTdIHqo@N)qu3IE}Xjud;*IzK$kx(l?h7YgP_tlqdBf3g=Jm zUE(ooUVdh=&RGgZ7uK6oZEDbEU`To;5+-(g52l&@r4s*-#>0}b4II%Qvg0>lge=^-Gq>;&M%^KIN1f48)X=L; zE{MwNSK+^$;DEtb6{bukMY<*7>SZ8i@sAA`(Z2#ptG3bOJDl5tKaS0SoG($C*tS-Qoh#;llkP5Me^^=Yh>5>=LCc_3R@vbTWl-mR2Qd{7 zS|CQZL6|fXvz{u=Sz5&Siq_#Jew%9sl166_kIu&8tPIuSbwogpIeZ_(ayuAS~uI$nN{JwCQC(IYWL;Trj zZ_gWfwY)Mhy1y($B|bPDmrZ4u`4aFPMKPs{;%2a?9hZslY|^>oX2hm!CZ)Qb!p1 zKMMi^ni4(tF}`}&?;`M9vSokI4H<$FemwcCCvg)gq+ebn|aTI$x!;BBKsV&)xm6^@N1ICO~I5PAS2w)b@`gzX?nH4tImB5 zVV^mXc+{giLF;a()^1mG2hB#*IG~q3v^UFVw&g`DgY|}&WgoQ)?C#(+NMxwmH!f}(62qOkO_Ke*8NE0 zp6Pqyx>!nDpXu`@VA{K-xj*8t4UUrkV3qVr=?@i)uF?+XnD8;G{;4HN!1wUcB!|DX zQl)4~@No&2fbwL;E5zoFpl2^oQ!aB%bc7fXuC2hLy1vmX-(HE=pt}Vu zXW|V|+6f#@Pe~ewdyY*lN&m`yr)nLlvWqnN%K>_C5XIHJxX|1yir%K^$t+F7y7QthPS>DlK#C2}iRuP3U0DrJmKNlB?2kGqpqJ?1NG4Q3y zJA-BM(Q1jxzcxL^EA)43NyR7Ce_%f{nwOu1F4M4_1_bsvo|W%SchC4c4^8Z!)WC(w zcAv2o1XX^?HmPlDaxrQ4l&Saagemx4Byzwpl!ZVJuoB=K*e+xo*5z_}6q{Eg#@zVL z{Cm-bZ|;VZBe~Jr9>}k~*>i|CgSLiFrl0+qIZ|W8G;(#+5~!C?`mU5Z$pKsNfVV>z zWmu>rr`mwSnCk35K&y9HyHJkA0kx)l$iE1sv=K(YRasS+*b`V+1n$*y<**2tFoS=3 z^q0M`f(+0$J2?Ie^a89tfA&p6(qDq*Dc*Yw(0WdP6Fh~JpTVh9P>ST@JuT}2&{jQ< zBA)O<1_$8DugHF(J}oN%(2fN>B%d(&G5{vA?|IBt@YAxH0L_C$;P27=8*Kh0;xB9V zO#19;=UyrSGy#mv*eB4o1epjmI~m)+i@AS`ht`9BRX)e&ic4;$rU#>uBA^7ns+iS^sX%|!A{^vOv5 zCKsU|h5uOiR61dRBFPVa5_&3G0YGWI{ErfzR7l1K415^DFQg~R;2#Q;D2?$l^J!dy z>J2bZY?L?u9Xa6U2pFhs*zaop4kuYa7tq8T3klMvtdIaYC@A6~`-J0|6hM!FZ&hgxzgW;^WS`9{t0WOyz+gj3m(99c)|u$DEeODF&{DJ2VAFZuzl_}IT9cN~%4=RMpU$QRez;Di61R-L z6crDVD?+J7@QkJ}(e$IQ-fUyxciW2~G=p4;gK?R(>9O8GY2}2q$(!Bo)013YITRAv z$EKYRCpAT;4ZuggP)yU-VaI&=qdVC(LFYWZzs_zB-sgz@kF56IDEpHEV$H?k%>li7 zTPFD~PojKWq;TTfYrzi^SryL~77xLxS9fxbi)W(|j42)|nCQzSRO2?X_N}(qwk}PF#N%6UDlO%Vg zqV4o=6_O^yA+S%`F<)<)rXC-7k6y%~=68E4tj`^SrPH+ade|LTv_kXcaFXvYS+XBf zKc$HRN^k-bFnAu~3G?!^G@JpPrsE*}yOUFv$r3p2%I|behL3aWmrH)huowbwy2D8} zhr&gc2a{P0Lv}9$rxv{J@84Ztgan_Q4zNJ`%l#hGZ(3^3g99H+Upm~Vj7eh;?>;PC z3iG0@?bk0bqU~h9VQIZ7uw7{43WD24BcfI!Wzo%9)Ty^7ueH&fG8MKc>e^Qnmi2)0 z`CL6b9K8RsN_+h7cvYeg9$26Cl>EnL8rx8`{rAXV-i_)|jS1G?uZKWtq|bN9lXf&1 zWL87a))uT-WD;d@zT_%$$qv0`nw1XTL0h{?_x=Ha-k00w^(rKtGB@cNcsn<7+IrOCXQ;hrWHOb+wMI=NHXsxZj1&&uG!Ytu8_l z(SNNDFWARxCcFJK{V3Wt=`j6mQ@8Gp-1neKsd(b8-0C6EZ*m!n`z6cWwwO%cn*l3J z&iMENjj0wf$NTr&>XCCD{5)K|`uNKY=9nAH+L#i^{zg|o zQ2kPB*`}}8BGnWC?TMrw`t_EbwEMS33Cm9f5uJRjQu1?m$Mk%)(;fDCwfG{~+#hmp2$K%%vLbcXdn?34h#S2LScwuYuWh zXiUIuQZspfWZAQ$3Jc{!FBb1I-o=W|wR1h3&{`Ew_j0 zU2D^aGV0@E_R+tq(n*v}v!R8VT9{VbU;$CxHkL*zzidvoT3Zc&&5*&bPwgDR?s8h@ zZk<9J=~U@7LAX73X;5T%$l2<)6a>FMdNCzaOOLbee}9ShWe$ya%yKZ!FOsX;CfVkz z`j3@j>{3vzw_sl6E)Wk$8nc=DS%D$QEzt&oiYn4-sz1hx070mJg7aP8ZHRWW;=|1@ z%S@wlp`Mq9Wo@x0cldOoRt=lgy-k74r5030NV814q<;)2*?@5~y~vQZwE{(x&HVaT zDORx9i(Ndk6I8Wxoo!WWjWBf68ryDqtEFwpBJI3zJs*|N4W&j+1Wv{S&a35keOZP; zFvuxL&uiVaYAsLcYiD9|{|$t@zn14LM*DC`&7JlqDBPd!#yO1>^T?kf(g&A8M?z8P z*yCJlM1U%RPD8AHhCQe=a^d!Q!5FFE8Q2`Po^YZ>S_SJOl+;fhs`+ZE#r$*TDq0?nO$>ZrmxSxZ6_Q;1!l!aTcqD9!lb-*Wa`F1Euhr@Mad$)@yT)hN zseQrq>>zaY;G=6i!?3yMZ2hGRL2!;&#-T;)?~f=iWlB)fn^&2QG-`5c+W#T{IZ9Tz(4j`&7_#RP=SwKmQC$|I89|8R?4k0I{Far2nF` zc+cO#jI&pqbu`tozvH}?^HC)3R+f|F{mbDh=@uOlp5mzyzpI}E>-S8pNOSdAwq z+@n|XnkU}}ASDyiA)dPvGO9*$WSW3q4Q9 zs})dE6v#v79{CaD z){ns2Ip@UXz6hu95Ju-hOBCY(y;X$n_b&I`JgZDMc(`*eaYeZ|sPu|#n&PoRQA><8 z^rLJ&XpzEYzEM`BtM@(~o=R`~wUyl`7WUD+&NfxmtIYh=;>NDfy%V2{GdwLzy;Rwt z9loC~fd|59SUIQqnJ=(C5cS&VSn9@3I9o)_me@$aoFbrVYAeFa+Ob>xzVz)WmvmzP zBa^u_Hqv|kB_HoE+=d;>tU*i#Z2jQQwv29-V4O!3plb3IOp4n3wyrme(Jo zoZ3>wB%-VdKi=h`ya-1cnE2UCIvO{eTCWVPRKz^#_+nMHljk|?S7}1Pv-qvoKYFOA z$^G1wr)W2v+IelpI0(+?#;{IpkKgSEidSWJ9M46TP^rGYp?j!|;55q+Z+5e*w)PcE z=|gUy*!DyJ4~ zH0>JH+ji5e4#Y9uO1vT3bqavHHoyCpV^ZdYMC=kHc|GTletruP#DEvwrYc^Qa0NA) zAxF-Zb95t@j>MQ)$iM?8J(&YmHZ{A$l(1YDTtKNhS!{+Bq9AprWRwa5a(EbV&4|5E z$i~H;bNY_U*1ko?g1MdUc28(fq*K85h}knu>b?LZ5;9agzi+#XamWs3rlvg#qn99V zyHQqV-bptS-!m0<@aX3^k?{F7mD5aYYPImBud{K>ct(QT2V9#7w(A5AU#I&Nw8gs3uv6#P&rHLkSG-># zPE09)sMJ;on40*x9I2_6Sa9iQ;U|G|`4mB+8vzKepDsS-W9<&6!&e+5L1?OMBsxb6 ziTM*H4Fgja7#+~)!z5^Oc~6L4t3B)s#CnX`>nGoiME#dYc+pAaf;8tC?Ml{QVx!R+HKbq z3u97s_NLmAANJz)Uy9`cBtWpcj=pdFHNKopu4GgCp5}7Nx0$D?!Ff({h4}=C1Q}&f z#*FOY&$re(W-$<=O2BE0!-P{A@MTWG?T$qY-%|w-Az}!ZU=)Cki<7_izRp;_5B{-c zS280*e9QAD^gvrGRUUM8?|W+T!}8${Tbu~5K!e;ETxxj8!<|lc2Lx@lT}Nwnxow$i zZ8VbEC^P$hXKG7I6G5=6c12r}e;1-g3+>R>VtOs8zLoOvh(vd*GPLCuGse4U2xHk| z!4u@St@z?QnM%0NVsXD43*-saZr$Xke~Zc+Coiq4@aUwF`O9H_nN1zH@Bb{0s)7ew z+6;Lt`JhPGftyW(VB_GN)CJu}&0_77STH7{(mT(ZSh0W$HL}Vg#7UjKgoC+T++D!~ z{_2Prw-~svkAZFfQvO>LZ-loMWn5ziLbimN}}`}>Od zKg|8VSaR9zZJG}wP!P**+m$N%w4dMGl3xTfnk|QZS1Ow2I+U)85b98D#uRlSZr{_g zQdVPfG@|kNAPgbeqN6kU|BSH+oVEhlzU*3-pMB!nQ`|l+BAy@Qp|}aw8uUMk)(2z* z;H;GTlZU$K)YgH8YyGDfC-!~a`o-}d#cN+Ai_si9sO2e?1D0R2KKIm7YV#|s=;v*h)Sm8>uL*>& zsWlQD+KzRWa_#2o7B2Z%{sl@z?BB$2Q#(z1pRQo{0b5xtB?>XK&188zkRC{<6p2qA zMB2u}Q{5kPxz3=4+P|L&k0Bsp;AhpssM{t>n5jLoJLvpmlAS*r&6OzExi8Z5T~I)Q zAL~==iB1T|QT*jh8><9_se#2dH1qNH5L)Hii!R9Qany0s3b<|NK(3bRa>7ZR@S~r% zFSpNm?Om;1dIEzQ-$4_ilW*x#g~}giq}F94-iJ9kBDCTKg%Wjm7L^o<3hi*GaI@PF z#rWvE+jTtJz)FyO+x$_YQFxo}wyNV;KW%S;L)+L>PatA;H*?A zdL#T6f6RR=Bz4D@))UCrOKso^FeF+p5{<{*@muyD`|4XrG@%-XYLm>Q{%*glekl=& z#8ZzO+$wV~%C6Prr%8}r_GEeWEI{< zWI(H^WE0ZLt5~dAPU}j6ULfad#~3< z!G)d2O$SG~hUnWj4XKbt3*FEzWV2uWc=gAmQk>5!yA|VeYnxFaD-)K_@J5*IwJAS5 zpp8kf4mG+wtsA zJy8jW9ZqhQX`!j_kHNeC!xWgE53y1DO*YsS!)13L${ACI#hct)6(NEbU92=W-lVU$ zzVbT`ez^8nmhVus0By9e+mE7FefSmXq`I%y80! zXq;bvA;;yR&9hpax3uq@l3IWwZ`5{$>{BY`VaZj^LN3-H&HK|2d98uUQs|MN)d04OVy-!oNXHVv3uMd&eyAg zo=pqHl{gQULrLG*24B}6w$-GI7of`++nhX%A$^63S>T&) zk~jB}cgEI4yKKkIechzKx$BY=%3ZCvD(-MJSuTOjH`A+~X4^CjXZP`C%chiZ;B{R7PnikI~ai?)5rblAFFUzWc z3qj^?Zx2V(KI$+j0&%RO_CfWabKf_kEQO~Kv#|8~*$NUlDF48VfD_) z?HUUty|(Br9HbnO#3cBUMqI!&L}ei-t(xEh7&mf0)T`F`~z8DUI~U(1m$R3Q@X>p%Dq>lOrZL(^O$|U#q7i10ub%^ z7Z08R|3b-C;UYQ-eb$o5L6~7&-VSZ|Q8l(;MLn?ay=?}N3paY{%3~jW?}#SFSML{FWD$uq;lZkP_YACxEW0y;!$-E=01~FedzP zHKszg05t(ZyF9CR)O;OEZ&w~y%^6(oX&Kw&4Lq~~5S&8F{XdckaKZd!--9ZHBb&Ei z7hzc1k+93NK^$&axMl*G`>^%RVu7OiNW2UhFLCY;{M~T1DaW`szB?E~(8IwSgp}U^In}7RK zN*04FN5!sLZ06``b@E>0tW*PY%Fzb^Yi=00k%((YUgr~d z%#PGzH7V|=jqdIBD5_5H1sQe*ysmh(w=oI0Yd&|8_Z2=J7x9Hs&a1ousr5!ow@PA8 z?Va%^bk!y6eUd9qFkKyKy}yy()nqy+#I`K~3GrmWUoSt|V^ z9G&s=)iqQdVX_Xw<4gJOGdA*kZA7HNQ4n6D)b+IpHr~VIJCPilKhq>-^U;o{L_KT;Amupon%A5u`EeO{i=^uA1!qa?#3xb#Tx1UwY4kikKp_ILH*n%g%L}Ls<(*s!z{uSc*J4|H819%BD`tb5u z|CV(k2WX8IqbcV9a@c1NM2)JO5mTNx9cy9$&Dl7gZQ$Qt$1MDDqukM0eV>#K{^S3A zmo-g#vOzWjc-r6rq0!BgvZ#M(!HGSLPlVw1$0=IiYCn5Y77sYClZwg^sr^J@|BnCx zANGGwfE8K^eGYBcl7PJn*<-f(dggb%j(5FZzeI5zxwHMpVu3&(bRHgV55I}R-LJn% z3JA^?k0STK#k8|_=m+9^44-kC;#i<}P7ZIHr^dvDfs-)8hvzN}$Pd?>Stme6O)T&D z9uArh&49BYRlc_u(hqrFVx*tiUiwl{yT9rSuViz7Wn_Q<{HsRT-PxFu`PI?#$=&J5 zK(z3~)>rp_y23siNbAOz&9$I(`zD!#hSjJVi{nsIa7?@+pUh;bcKo)7GuD7S9(VBb zHwtM~mKmjZ#oP^ST=dg&}7Uv^SQ z^oZqQ{=)=j{id&imOv;mhGUpl+`#9!`=jG3`2EjpQ87Pz41kvgYz9qv=B6!*nF`~e zIl8f4KsJpR!9dNv1* z6G@ao=7H~dI>eLV{CY4`kYB4NxIupNB)*0=w%Khz4wa=vIs116F~8=``7TYqTr%!F z%v){X`~(J_MzQ)VQ}o-$L2rJC_jreGw+9At7eB=@5?7=6?IHQe8pwh`7T^i=@t&n5 zccjk4awshyS6aYK=yZ_7XwHWa) zHroRDd@kPvPWmVVLzhn02Q2A#O09b-rJ@r06B!0Ry`of)?FvFJU#B|0@GUx1z${!VZ<~N8(ZB7zV|9JXl;7!@>7%$(YLpae!JT7m*T z{&5#pzH}_bXr2^ChYPyd=5U5r)b17Z{$dW{ft=Luu9DMkR{d19P?1=>(J9}co>bXm zMDS8iuzUPvfk>HA|9;bM`PkiWnO-{;1#CzpysS$w3Jzz~oPG0 z*&ynAjS|hYOQ-dIf40#)tQTD zXp1haz#<(~@QEie>lfR-+OJW`lZ2Ct#yP^E$G9UCV(sPmo;RPO8888BM>JLq3bjB0 ztGHbO=s?-nfeO+>lWRP1^h|n=`;IItCR5NGrJ&77yW<>adv@#0dmxF)3FtlV{_aM) zgWF`Q@lVNn<21rc?42pQUlROV6D7$8Qu?MFWYXLYi>2$;``G&ke_}8wJ230-<~lHO z8I0Gzk7LbJUFGRrAs*fyG>;%o70J|i9*NB#A-(GeskAx!0Bs*qJSW#bLjz*w&<)i2 z&e`Pn?6=S9X--1;8uqFNIE6iayCf6u|Ip{D_>}!9w%7sw5l4Ms26y|lf-i^~<-FGC z+KCCGZyj{OV>ingNxJ;YFh}SZqo*!9V!;2csG-U2yRKuvY3lK;#8r~-q*Rp7z3m?8 zlf<8l3YxV{;0q!hCz#E`Ia^Ak*QhG=iq7@DT5wmn6{=x7Tixn?iE(4b1F2~H4mlJj za=la#-5;it=o1Ake!l@r5KPi|9+ErYsuB>{-GWymd1`!3?l1;Ic@(^(z-TCx&-y72 z?g8&z577C%DON>Nw`pV5TnS{sXg{f zP7;C4Z!y`sp1e$!Ip z&JZvA%ml8X$uiyELG@S#c2)4bM~=L7Z>jI+<>?o;ieGp?eeYl~$P?)q?_s3}QbhI`)#4}#ut``CGcaXNXG5{WFr?C>IxLL)i_C*6mq|;0O z%`eX53q5ww$f_d8?E5@o3Z{9(_eu>RSA|MhB;IGgq__lT8K_G2EW9`;Yi+d3ND~HV z=e$^mg5PznJcum*QcB^nXX7Zzxy%Ieu6^O>>+Bbb!I2a>V3o_4>E+rsMb}*Y2Jdf2 zMK&nEefdy-Ns&Sh-N?}xuqzl$Aod_rlB|qeg@g9t&E{0byjL~$RRv|_>=}hzM0pJP zmmW9X!j4ya`cDeI^rbyn+b}sq8YjNNJgfbLciGkCy2~kaYs@G}xF|5+H5lZ#cH7M^ z)(Sed>8&e$FAm=4C{?OBULo@3@Aq6!)an_0!&I-v*zb#%e<=P4chNA_@f}~%ugk7<`vxpS>|PQkVZP+o4S-TUTq7V-wsLSk-e4V z?*iGB?&P?xDUSKtk^ol0jc|=aM9vn&5gHptUggG6`mQ4gJPt2BDhZ=Dl8VWRGS9eG z6ZDKYQ-g3BsXv^U_veq?Upj1Rbc9)z^xZ$n$xAE0f;OkWspO3l!@rDLjuL3#XEDW@ zKz|Kp-O65lM>3?AfQ5nn^ZIv_cT7*DNuuOc2bnGZ^0#A?BOYAjXIgBNyb4G`UzxD5 zU#_7&ZiES26r7K$Uhanra4u!dZg6&iy4Q zG&6KUSb$8(T^F&}`><83a|J$}0#WSwEG#04?#Oeb^_MGU@N=SsB?V1+99{70DgNZx zqH6>}>|O06MaKX6UjXQ%npP4Sx#&l~jZ=vRa+6(6W#`AGDigxQ^o}j2Q%i_59-ME5^suLrh2iH zimrd;KM8RnXZpm%e;}h46W|py<4b0ydf^qYd!4POgL@A^DZpaOSue zpOxD>&{x_>mC`Ixc75qb{K(#%j~c~q%2^R!l`0frXmO!g?GN-bvo)mD)Ez7 zH+_!N(sIxHl}c^H)Ckqwdw=r z*tWny;a)rz14fpXqd;b&516talp8)6cL-C--UdRmoxY>NX}T?ZYu>w9e7EGE(J_gp zb_~YMKRhbofHt&D9qlAClsAa+aF|#Vs6BuoxMFWB6XgSeT`TJTP{Ub}R3sQ_Y_cbu$uiTkpzR%uZ$jnWj!kDp z#4}84VX)Pa&dD?OG6`H313es0mn-{9`0(4bB{n{?`am-zK9?T+JF<(A&Px5PPYX+1 zp9X6}4u;vs0-88bgXjnuzMHJRn2erzB=eyhFc~=O!cyYB7JC@P zs+>!Aw#CErMsoIeZi?hyY84oG4y1E@_6%1uN1lq0H9OtKt0!F=?6E0u))3`Z%1@)h z?xYRm>(b#WMXL!!e-8hy3E@1*XZ9l0Vb3Fy9z6dN7sA!C>!|D|z}rZQ{(Ys#M)#=Q zsFcijaUAUuuM7Q)mx<7x7v&|P=@r}LJL2gwsCrvvCdU42o8E{-(Tchf@5=+i2_Prp z+mag$Ptv!aRJnDKY^R%d_5)F{{rZI<;rF+=ruk>6X)al7kzET0t@a?(kQ-LDvDs)5 z0u0PjtS|iT<@3VAQ_cwsv}a>d+CQ#f=$UbSDhEZubog zRV!6NDgj)SIlgxf==9#~`@<}i5}v3#w`1Ks>4o1+^U#v5g^WIk`Pn5+@%B*TWBU7h#!g`!h^=s#8^>d$`Eq2GH>))APFd#C0U`jf zzmM%|7>LrgF8=xO$14+9%J{%pZ0XvQZ1FCv@LG%SD}j>1h{5QXN^77O5t5rYHtXU@ zu+$8(5|MbH3oEyXlh|pif)LT1awSuLvKd#ypP-ju+M{s1Te<3x10O5OfPhsWF2klf z9A|ec|&2PXP4}FTj!0tpLk_RJ{HC__#WHB^+Q%iT8Q`1y)4sFb+u4~ z;ZK@eC9yBc;W;ltWh@SpD*y%HvCddtMz$l}N0%?@Js6La0bl)Ax4UaM~82G z#ItkXPn4-{p_QvoSYwk4&CMnqqjSr!XU^6A%a zds-NH$bW1|!5>pn|B1h`w4SN@ZW0w77^QyHSV=LB`f+5>kuJ_J_|bXKJ~(&0 z(b+O1vlIJ&u=k$vaCPtdX!Ia@kmxCbs3C|>2oljdK|~O}_fDcji|8gw)QH|0EqV*0 z4Q7nq8QlyONpn#{!Ly@hW&kp5;~uQA+S0f_ZX*6 zX~xJTct6B~f?ajtMcQvO%DTm`3YBy!@9qh3>3rp3YN3l(V%V;B)aUuLmhK9*5PlJD zih1WpA*TDZ$4dSuT>3ZnUF9i6$ey^r4auhjk$7#LA;B!YcBI_x;qczo+3&0R3IU4T ze7p1X9!XJc6dsx7llhOc!-d<`*{7cb=bP(LmrCD-+yWA&07f_OXKwqBAurB(J}l7o zN-*f{%+3-8Ik`Rimi79MsEQJ5%d*yZom^eZeWFz|fLFK7!=Y;>%}~}ylI?|g#G3sS zcW4)TH}{q_tBbq8)QUA@J5T6>F`0sVDLXxtbi-YYcOx~sb^FF89?eCJ=nQOT%H3JU z5p|V`Ul^Y^ifX2RdbE5cWVO+1Sey6EMB+$DEmhWoY^GYJ6i7>IZhp?K#$@ygC%1MH8-}27i)rW$)Ax^5^TMJwSbVza?VlYXeBa z?7p+UffXV0cA2sde;jV?u!TTRZG}PUTlHIh<8Se!NrEKf8jcUol8u8-vEv0Nk@N{9 z9NU4Jt1OV=P{CU|WeEC({P@yS9f?yV3Jeol<$||(xvKVGqbO)^yf&x4Gr+3#gyRm9 zfJ(>2q3G_NMkP;MTqy(W?Ty-%`>tM-9mB@wQ?{z}{8sVa`_>CjsB-Sim(k+e(}yRP zmEnr2a7jE#AT}?Pm};9yR?-z5dOPH4*1_GZI{!2%k;|KS4`kUOwfmxx7`Zn4l~ruB zUB)0Y?JLZ$>rY3wI251aOv@y^^wy*g+GRA=xmdMZWiPK`YX zH~v|r8NacNG@b1QfJuI;Hy@B2C_It~o6q!;#XPoWQ#@hKdWnT$W%|l>y&d#4SCoe{ zD&LxekEf(^$8$~ye~}flbiG9lw@;){yi~IFE3N`Z;p0mNV>|W)iUp{^SbMNDldyKs z(UZh0b;HW%G?zLyl3X1#Nw)KZ^R<_{JX0RUuY-pIUyawHO;2u&Zz_~Hd7dXrkayz) z7g+hI*Dc}!5CpeJ`4wJa)&=?}r;HIX>Qub`4{4{n?h^i<0viwfJqKXwBA4&m+N9GL zHv2!78z}(w8o$X4BmPx(g0ulpb`;{obnRb1|6hG?hSI~N;v|wv^UL?Vu9B(?H=&)Vn#bcTfJc$Zz8=5LqhtdD_`@&EYz_U-fMM3yOw9NsKs%1mv6i|Lps9S+e zC4U;s<;y25-!K<=x|FkVlsfnP69F@aqlO>;gI){<2H&H(Tg~J2{Q9aez0o6Nu7r-` zE_xZj;6SmPO&TRi-^-70G)qjEoA$*y#w1rKs|DT*IE5;NqCP4e(Vw`@_y~S)_UVu| zWZ!O5vzvC@p|)y};q}-$4>)-(8}GO?oTJcp30!|PYW8hRnqi`14Kto6qFxp(sfD|Y z8^nC388gc6E}tB^gf#*5>%*(MP$)$0vnZ1acuR;i8dz1G8{&QP4Q-NXF$pF_Z(m6cw;pX%dbzeRAn89dyb_cmf=Uwye zf|91kF6*O1EFKTfce@xBMsgK#Qt^vTevT4E?LH)^A)tKxL8q3}0IUI+I(M9w-}0gR zyQ)C8j+P)i1wd4Q-mOq%W3nQT4zSnoPfd2+8r#%EuI`b=p4da$wb{IjSw>}vooI{4 zg>4m>%>Yb2R12%N+0c0aVCXN_AVnb2gFn)a^IH6(+^)LsC-XQ+uI-8%IFt&Dpr!xxU`GE z1-}pl3EELPSF#f3s?T`uE4GY?Ow7~d>T%UAlC${I`F8;Hs5{ie<1O9*g4s*#A#!oL z57g{a+5<=QW)ZnI8)Ul=7;3C1%U=N5C_|BXy90p8%ju!-XxW|?KO27TooL{i{C52o zxifs3h0Llpi(#wz!Z(uE2J;qhjvOSiY;Ipdkd`n>p*aDUbqy8>a2g=}adK{b>CG*?1%i0*BJsn2ftNrpqgmwKyK$Y1O=0Ch2|QiLhYpxlv`3hvJ*$2 zfPdoH>I?^@ueYDgZSf7+1*x8$93J|%Cz--LTWMD6?mUg}L*7@tv3!JJE z854gIB09V(g-TF{!zgW+xS#FqnAhRQMJq`dlwJV%Z?e4nIhmFz*a|p&ioBci!1e5K zyz4by(V9+8K{5ETnef-7yQS~=%m*Uw68Z<%o$mFSTw>uoq5FU_hU{yjoU-0_00CBN z(y@(!nBXhb->jfAb!9PrGvT{=9P*48B@KJ8eoxh|Q?JPOgx_UW8H}t_Is*~Q4|YW} zGV%$!{4OjB6$1`d*3EqV^x(x!C+icfp9oF5YjpQlvrTUED6T{bPKPGrQvU<#H7^(s z1|-WuL_z$|%S`(cI?{Yk)@qM{{E41V+3ZPH`v><5h#XuogqB^ux{x5MeZ@h__O2xo{;IjwO zT7kVpzVav_N*i`X0*5Fazel_{R>6@ZGu2!{I{I!Eu20Qymy*^(|+vyW@oOB&RKQbN8btwoqrS&n@+uy4VE7XL9+ zu^pKcLA~mVqK{v@#Mk;+Nm8g$asVvxt{Vj$rKwmF(MpjM#9yJWE4z4!sNWinXX+6Zyfbs`j&LN`-G4qk#1+xvD zH$&#P=$@(6CAaXJ-F}Q{wuU*PM5+zjpyiRYD7tmZGm1NNzLL$M!Y<+cd5L(f^E7** zC!Uu$YqV_s_^bf^=+IQ1lZhEoB6#6ky7>cx|G^Xl)EGj>Ff~N-!0t=w-Y*+{=!Mar!l2N9VG_&rPQwOb|AJi}f=;FU|869@VY; zA2L>1Z%m1P?+7NQ|CyRp_FH%R#K!IxD>mtr{pu#LfS0WNkT3W(iy4Ku5#{7Ou_|B4 zqznv7MIO{bs;3K1#C?No6^)M=B(643)nv{iPV<9FZe=Hs2f%{mUl~y-NAPBFtc`Ezb@i zY>%C4Q`#B?wTi@BJ2Na-yghH+-O}TbR&$(P9n-d4lRp0dVpE=k$A?kXfligop@J75 zl&3v+*hyM5m8Q--btLcwP2y#FC`~j+oEu&}q#Kgm;jv&=ov}NcgTVwEMH^gbAci)u zLnO2DLZS$_6rw{+sSf?xO=lET7RdfUwD7qKH;?^C{8OkerU`z#*Tsau;<#Jwf>O53 zBbeJmupr!GVM2ep6zmwHIC}BvpEVlo`*M^ks8iL=aKF_-FSkO`gmnL51UF@pf4}1W z7vWT6L=3=D2j$4UHU7e&A6i8zn*g~0QtxYW@=J&RACW$%*NsmthTET@7BWR{&AX2I%XtN{nysn3=R$+0zBIvxFsxW5(kOfPf>RJebkBG5j&##bbiOQ~e`py;zJ6R~ z<8GF>tQ5t_+>G)rnsM@bHY?jed`aVG{7K1Vl`k8VOBe$T! zXOZr0d$(^#H`?MVrG747nT_&--Fk!kx?STUsO4hhcIi-)+8)?dXdYVuV;IRS?HT6Q z5-WKXrwRQ;#9h92oyy9s2(>wm=(08JUHg@plMWx#xL2Y(Fol6LOY{T%+&~;cOP|`r z^=ARUF>(d&Ew{Yb2Faju>y1b@SZtb$V_1&Ka<-Lk=WsUHD79TKQ)B|Z%)NM1a1`^2 zHO#z~XyjNY(|`BIQt(?{>H8Q)9A%QtR&nx&QKnC|rY`sTNryHhJ;X0=`#m~J24$A{ zv~9hYUO@GN8lnW>oiN$H^R|S=GO;HjOJKlfSH$L3Hm%a}-cprQXRAqJec6Qy!;?@B zol?nC**}~&O$xmowjq3v>>B5$&dcZTV3FTu11WpMTwIOUC;iq9>522Has)4|K*8 z3g7y$u9I86{(TVVy!uB9?6#eDkA}}Qe?!20FsabR$8;;pkfkfbepHZ zC}*}z82L#gMn9Y@vP#_&QkcJy5YeG__R)vV>GzYss)C8%{szm-Y+{uLleJR>;f=v| zQ|u~|g%bf-8=P&}plT-9*<1Uxog6@f*vZMESfj5p2}FS^d;QK8<-F>Z@64p8Udoe_ zfc#K2jy!yj_dd0u;SWDius$H2s_%)zGj2WU0Z!>;f9khmJsCN!C;4q&?&GI&_KXZn zOkSnk-1N};)bRy^PPU(<6QA!zp_Rtaqpc>iEeo;NEH$-`@fqKqX<;}xih{&e>K*Kh z(aapN(`*3VdcNkn#;9S;}*MG$V?0Y^^6SHfRg9W3_a@-z7`=vBibYr-({i6sIM{qDVp) ze==#vCF9d4!tjU~E-ED!a#oC+;V-IH{Eg|KE<4V=Ep>jU(n4&(@i6ZI~)0)cW%rG%K3_yJJuSEeipA$U zP0BivGrnjWmkJc1=mW)!vxw_s|G+)bfVsiUp`{{|@g;Z(-yvhay$yeTfD2sXV8Z9G zdyz}!Q0X?+^#jW~jgW#>vl|PFzr|Tej|wJpn2kJ7tU%Mw_6!iipp%Hw-M&=WOyoQ=+ys{U zHtgek@Hvz-iSySp3y5?l+oaZ9u;WMH8$KkRy-Z~`-6h-hAyTv-Uw?b1x-F*zDa;nhJNSF0zb=dyscmCP~Q%>eN1H z1rv?vu7UBeUXJ7Gx|#G0@f*}e`4z?lyv+)~`{96QzWvc1cAbK^G<9NQiXypRQ=PW; z@a)n`JBMET2%nQN3Y_Y+c)t8t=FtjOyh)V}bMb%HmBMn=;z@B6GM1z?gdcLq1HhX) z_FGXi#r)5k$QY?Q7ifJqX*k;h_?2|5-tXgx=kAZJD#~Tjau?E4se@?SC*QvltUD@F zuh`fvC7tBbOT3 z8_6GFJFOF95hriJzUl@~Rk{zE2FvPjV~x~Vp0{9t-W1lJ85>abhVt`$$teFtv_WWd zHb*;G`Vu3MNa2V2262;XWA56-w+$U`JVBTlf9dfJ>cWxAxfpW};gF9@_@ELFg=R$+ z9lwZLQts1aJc39HMqitL;Y=T6&TsuBNdey(fqevUp1@iUnBd+gFIv!aVTN+)aogEa z@px(VX0cQDcCj|k^UM4a3uHg_t<(b-K|IfiwSMQg$_Mi_!?sj_Ht;knV(WxgOUZ?h zokW!B76hZ7`A52pxIMR?>nff@L{+-slUKRLyC3TfHts@D^=)3T+(f)n&yA-)8gUPq zLmyb52G+-yA~7Yl#3@#&4V+`zZf6E7bNwmQ+e?3(>g#W%Dn1T`2TrVoDc-yj!NVgJ zoUqoGQjhl0x*+t{ z?MhbiIEjyn&Vx7(3UORXC%e^ifza}r0oBfoNPYn>Z@gVe@hP8ABCkhHSYzD3Ncwod zvLYY+5QV_e^bqBg$+$aP3#@?xVFH^8tUi93)oW3M3?WtHrQ*PFlsm9kazoP3aI-SX zFl}(p^3(k_HL3-?WgU2Oj5&J^5eac-}Gt9z?@7FUzMAk23xjv15Y4m zX7UECes-y)PEUFXeDKyGZ6|a?Fy4tna3^<;lQ6;a?Po#+CT)j(6x%zI{`Vt9dTwF- zDM!i=lNbc3l#J}AMRk>vQd+^|Of3gCe{i!ic#z=K@|qRn8L4CGJKRQgqEb^0=M5`i zP!$z@Bt*z?f?+8KAtg$_)CSrvbsE(sEy>u!?x2P!&r|zmel`L{45L^qLB4B%9eD;+ z_b8~Qxw(xaTA{Dwyx<_iOY2EAwtU;yI3dO+wzN`e_aZ*M1Us8_$^fD8xJA+ngIcOpFzYT z@(x7Yll}SSHM%VG{)wt4v6PU!fbYq#)H;5Pa~BfA>?e_3?iyfiG18E+wyQ ze=sk{{EK0J2T-(FDJ3v={THS!cvP8@GrHUP8RqvaRI4W$iIG!bxBYEo{;qK zx;SHO#|Cl>!xOgUj+~g%7RFQczgPChE>Dn*(!Sq6Sc%ibIvKtkr>;b{&-Y@wPxLQ~ z9;or<3!p2J$*pUMi28doc_yOED~F}mX8wmT|DVrA4or)oKRdB*u`J4vbl{Z3)_HyO zWz+eIRozZ2Ax?9MH^3@h-R6L0w%J9}@Q)V#7rxtgxGXo4qg`TnqHb`6m@YHv61IKD zBf-jzfYpqb=Ddpk3J@JT>tL~m8{>VH+Hbx$E4(RwBb3Zz9OyDHcvW@@R1r%)!q0vY z*1j!2FBt2E++@p=i%tL-&03E&elQj3RejxE=<1to2{J`)PNo1PSRYNU`c2-t*+4?< zuIAId@NXW=$x&bNambt3L@h^I4Q6iU4EF+b&uoCSdcx-g0Gct=jb42n)J7Zt54zOw z+qUo7Ne=+sm;$*v@B41jxxqbv2Y6jrEQy)?NQG(S$!6Hw)j!{V-kCoruHX7PkSbEp zLApXj^YjZKZ?6Eb!`}mxK}P_GBa9R6#%KA)1Ylb6K*IMjOEz*b**q;qj=@7FMbNHz zi(c6I%i2iZ#x6j$1t^Bhduw^=1ch;>JmLU^%nQsyi{b3BlQPEAP+t_>Z4W>!FVSp- zsqf#?fgAYQ0g`$gG2L&3xxV~$%F~zQ?8vnd zInEdW%_rMz@1*Gh2#sr%{1CpVJ5O5KbOBPe%L(nqBLG5Y_q#Z&X#nu_D0B-RBL{$@ zQWvJu@x1ldWBnedRbprmujoz(!0W{^&X~LZs+W^zvcSCPmtvuRDlU0`dc45(Rxy(j zW#w7wL<^BCOm4p|2$6ml`&(6xK4-ct)(fDMs@1#Nh&3;#SZVaM_W9`*ccQtm{I7LJp2-6^ zd5bmgB>g+YUsf(lRQ479Z~VRJ|9tI#4D$c6hX9qMekaG&LK~-ji#ghPLiy2m#8gX! zsQ#iiXuxNjG0hONF*5O$85?g)8dmg(>8^=)c?{!j!MTH4GKI(0IvMl0Z zKdYi!fpik8-gz>NPT*3ja>PmIyTJ0WY}YyV*=JPSKA;({8CNWK7^xY~8oXgKvhM9+ zJFMW?^QnIc(7Z|jnEX8upaQs;KmBD9jb^sdHfYfwi}*{7$)ldiyA_wU?XTb?=QGnj zzh0^?+R$CtG0CYu42@xZClkXIO0fKmtb-#&2%bFPjQe}-4_}&4$T(j>Xy}hnGAT(Z zGOSnRI1elOn$F@Ne{S*BSBO}cAMvNd2Q||Eh&ZL-CUyP8Hn050ZkDV z$1{*j%NroGVyNj}i zy)$HP-A8Oww1%trW|qQHwRHO^EVjrjl19LIc$^Fsz;a09c@I^ks8{9OS2=h$kKT@j z!7Uq<&g+sw%jkCSo$H|SYyfR*Xgov$UD?a%QiFYX#y4@1^nj!~iXJ){XV>h6_7T`p zu=WqHYY0*(vXc0T>eK zD@XUfNWjtJie?>Bw9rH>WN!z1R}l&4^%==o(vdFG_V3R1$66IVd%_xL4)6k3OQTdSDt?_vgnF5$#iZBLvjeIFeT20L1&R zzC8HitenloUW3ntLqfY-9C_0d`vL{EcVqL|C=#xHd^qYFnUS~qQ(@4_cz+{*20G9p z_L*iG55<98gSU<9>rQ%+0bt+8R_s*4U~voco>}$#9yM*V%$d*O;nsafn?M1MQeuRj z{tVo;Oo<+*ztH)yTZU+o_{zBq0Z@5?M|CP_<8gkD2^T1KA8zexIF{Z)|?HvU3?@J38^FE$~ga=YIq9 zCe!7|DVqu@c4My(Qc1{horr^#qg1%cs-$cTh<0q&%9mQ07bK)Jjq-o4oFTn-WDY&I zr0zC1@R}T&30O{K^r8!jU$n%|e3GgiU2?(w&+NJM#?LrvH22wyqd5PWPyc-ENihX% zG#}e1(P91f)=d7Ak8y6sbJbJsFcs@dK8WHkm8uQDc(~eVy~j^t#I%p*QY1 z(hCjIJ-WKimsbIC-b(LlrPxl}GwjP=Ke&E64OOOTb9?QwXEpl0&$C+>{>)`<#tuG8 zI^Q&Y`O<u~7Yk>VNvF}Xv5?G; zU`V~WwpHWtBds^z%DrjeX3JMo5CfZ>l$DLG%wojv*7@^U9gvVy)EOe~e2W_oc%9lO z&_nwB+C_S%7c}09E{O6*1l(<$fc-tz-wymHyydlFK#SgeRzLr>qNtSTxa-~5$1O&! zS|krKc=x$+Ew7D2PN|}$ZZ?7l$#)NCUL(!-VsgO;Vf@#_NF_5o30W)H>P`7&emeS` zi8>|JV#1+ItVX10+(X|k`0<$qTq4D3B6pusIK4(obB9p(ncu=xr9KOT4a z;lUyq`nz7e7vuUeYt&3Kxid*LR}K@!ew*GXL71-6BB4bgCNh%_~dDH{ZC&d)7I6?P!asK*P2Y8{WsOiS_@dSpZiH4-YTQ z&VIQ4_SxS@pTUlsjDxE^0sbs#IW(24c=3eN=KHNH)7%JnN^t2mIq&2j%TV3Et+Rp< znf!t3%+2JC3%GhLrZ2LWz9DE@`#$7xh`eTTN#n^uc{1P1L}|^mVm0Sx^xtnj!Z78( z{BHWf*ZiLu9Cv=|`MYv*a#rb9tU$3yBuqH<1uCY+>h(7I1@Vh(sI{wfkkVJvo>V@- ze=A^=+4@lOe6P=1Il&>`exZ5XnzaI&RM zAcyUl^XF?nNzpCQv?vLU(tV-bV=r>@r4=P1oF-ZS5qA@Y=qLD`HfLv?GgjyqQa zE6Id|33f&VWijSu=qS7l)sVhT*JhOefzI^WcW*vqncem~SXg|e-{=OcD%@WU<+)p~ zukeEbli*7}gWCClf-p_;dQh(DU;8d%|2!p==+W$(zVg@`m~|Y$R9LEzgI%p70UUr^ zS70kwU42KA3vhg=Z(vdqW^*hZ zZcUDz`)*0XoMW|+qfXo~Am)r5HPq6gN+wor*Jqf1q&bpY$gXLVOLyfQ8DN5kaEdh& z>k37|>PGZIb+HKIZO9?x2P35uC=jX|M~fe4UTz9iRuy%rLOa+n%RX0ug_UI2HXGE0 zwt7<)5yCi zTdIQ!trF=sGyCxLM~G4;KCRrU9Afl-j}qNUIzyr{VV(uVt{ojKI$6O)feK@8`l_nm z3+(pBXC^@062@&a3^u596h45C)bW2%85B%^a^=_llFZm@5DHyAHOu`K?n-S#zdp?w zv+#av3(`?nSQUuSrNV5m3V07-XVL#{u-*y>!lwD>^BJ+xRs8}srXZZg6!qp*+kI+| z$|q8Txm>Bug3GZ?--;`hyA(^cXshg(-iRF$!`_}fa)pL zRauQ!_i+ounl9#8>JMj7`r*s8(2kXKTYjt2LTpOV^-Q|y9uW7byDQzJhgiflL+oUf z5K_=J0E7;LFej8D*Uczzw+K%Crm081{9|JUhA(ki@Pbt8Ohc-Rm^URD(ln4Sj2*Imp%vrnw(IUaFbH)tKY0mjRevQMX-wdQ43mc2JQ)dTL*-pH4RFn zOn62vF;;_J>CtX|0}}fhFrV=)NX~w>ZJOO*=ZdG0*A1P@v$ONE?^Z;1hDT4tCw{Zy zw}O<0m)x-iV$!Zp%{JB0;a5TSKfce9;Z15LrkN9Xf;q$vic}#_ZpNbELK6nariHDL zDfJP3>*_FeIh6ML*CYJ1X#2)gKt#Y;qX|;-Mt8n!JGBb5isVH`_b1qD@yhk>(-#YcoF4QUozAEfsAdHd zetq%c1@dsz4!*SZvIS}WP2gAj{^98M6w*N0ZY3?FSi7Xyg>dVWhCH3{DLu>>reu3I zAZ3>wd=DkIz7|-U>Z^iH(KBlvE5!i%owdVq2_~5j~e+_tKibiH7c%1dT2-E=9F@M8%`rI>s_G|#NXzAC0MXyUE| z=mdD}$fmQe;qfn_jtL8UJR{FCKXw6zESI3-jGDx{YY+<6pgZtiXS2T!k8T9?5@w6Z zXf?gu{JX)cz;V=Eh3dhKtcZW@#+UJpOG4arcvHv+>^LsV8crEkV<@=}#9H|k*$=N4 zqPMA+!8~7H3f7COEk}(-1F#8kFJ!ewaL+%H`lJ(L8ZW() zic_HSDzrE^bm`r*7#p1+yc$=XE}U1dUReXFJv`kj?Z0t)OL~ZH3VD3CboRO0?`GT? zQ-gYIJ1-QRpE)v<^y-;z1dI~=KSk+PEGfg+0jmZ9YXMuu8nR78wC$^N=&0Bi@W=kE z&GsgfN+Zr?JXTI~U$d^sH%+Jyj-}h!^MU@#CjS0u`l_z`LR@!afQ<3*wgAb{Lnnd> z>Z_;dj_~INmFsJH-RE=qF&cQa(KD&g<9uBYD~!UE0bO+k1N(nMaKH!u_sUGZ6329O zywFlp`|8H?uk6DPv)8)UHvbOrXWFU{wj;S0NuR4#aId{WlI9<`0m697`-B7ph5N`< z>rpQg^&zU>zj3d8)}?QNc;A#u$4h5F9v?UK@tpjf>|{Nmzx@bC^{=TUAM0P9a{1js zhaL@06{=gBoRakk2?@|bU@8TKq?aXdf^@gj42lkyLD=K4@B%#!^mW#DGh0#;CAm&s z?aAbKY+9Y_IX?tx&{b!D{P-1EkT;(+-$cL4G9Im#{b(FR5z~9a)GxWS6W?B6L4yPXr(1)B z&F_SnKJxXUl=}5b(wp+SnYHJ^YpI1!;}c* zo^{^H48J}d^qEIjUt<`$ zB0XlU5S~I>%VbBc;uywlm-C#{O{7O|LMwq{O^BTzxiJb(B6HSffTVW z*$D4(DsJ7c%(8zc1%xvou>7q&@{9RkvXzm~nc~ztpjgRLzuJ!0&4-sgf!oL!<_3pT zaT;2q5hLU0PAiH%x4W9Irs@q${F}E~N)E|G`2)Xp5uj#WmRh z)uM!-nR~_G82wU=wcj|!juoo5Z8f7I4I<*#m=7=em#?IEZ5_jx`wL}BHCo$nHw5tq zbDhBeR~fk;t~_ysA6tkj7E{x66{kclC`-V)RkxQ$?m2M$w;x|#1jL1O3mW=DA$H}4 zQ_^a7#=1KtTK#$erm@N;t(?49#BW#q-KJ7CyxW&utFZLzup0Yg4qlv&oeYJEoPt+H zr5S%L$BRul^`F*Iai-`xsH(o_Yi{V>%46qec_a{ic60@?Nj*}y8N-xV$F<0K>$mzU(duEHf+hdrXL*$an1(=u>cKDU&> zF?QIWy#p#7caKE)B@40hmLNau2*gmnzFy|>2?~|?@wdKgn!(*>28FF*@M*f;s8lq{ zPp=E%Rwf-K-U3Ecm!zVj{ZayBgVmKKW^8K4G31IhmzqKjoHn=`_k?Q(5rRD`Zs7RJXDLoif21g3F6F=M3*`Ryvcixd0gYZk)4TouU2^!D8hndW@ z6>865*=%D)mn)@uO=dF{M$um6Aj-Qis?p*hP;oqz(?*^zA183>+ZuND8xqxrQH@gq zP~R0pFA=_G<65rx0_5gIR!PN_?FxLe$J}rS1U6~j`C4#)-!i@F96d1-WBS)d@nrHI zp>HTZO5#XecVwyO^|eb6@YQ+Th~#R&s>N-NX2M>X!9fNVX^JP)UITvG3FXzN5Uh@YJj zik!#s*-SUg+%Gub8I&ktpi3rE-t_x$Aum$(2F5USahqDl<(6-fkX5yT+XBKD5@}a^ zIOE#&1q~P9xNu?juU0Qjd$v}vpJO&ZPR4B z(mg)c^^LBkaoor!*+ZaDT6*lMdOGLJ5{jR&ZJIE1aBI*U)u)M=jGoqnRduG{btPW2>pdb_5RZ$5kH zJKYo;1Vv!$;<<2q3WNkoVl(%`;XK*4J}f<|+Q7@zt?%6-!_VS8#>PQiVqt_#O=?sA zxO!W(de`I{mNxfzLz9xo+OwL!Iku!JjvB*#3Y%X~Oy&H6yTTve5&|DI3OU&-h(Bn5lIV>D@{X zX#~s9kXsbGej`BD!OjmfH+pMGqMnmkBGR3}alT){jozH@m`q=F$ z@g3~xyfM!~0`;?No^XzS_!lfE4v3S`*`J~y(L1uR7Q0Pu#d?e3=WY z+vQ-E8_Vh#Z6aPy<7bn_&~7VILhL<+W)?O&(YD`*l|0t>xiFJjeQDV&F3QEqdUG&A zgx(IO(-;0(JLI>$U0#W#SWOvnf8*|TjFwEQBT{FY3Blg@p}ccX%pf@9d{_W&2%O~6MI9GLG(b|!~)jDDyIA%@weeu!a%+jb#ps>VZ_ zmU{2PM3|pufq(Nq%y}$JZpN})ixiP~-G+rbR-LyiWn zV@p;NbPlT+F@1x+x`n)lJDN zFTfJKZ}OUDiVx?OcDJf-**R?`=Ow4rA{m7iv9hjq!+;sDMGKV(~T<3 z-IC+nYKB*TL7MIdKz_lH`kMIq#I8FIfNj)=M}w{sj>Q{uPjMuvx52 zU12nP@<4+eORV&D3okQpP!RX@@OoMIxI8(?itYJ+-I9EnrMyb7_`a;oI7xeV728GU(t=gcc~`?^IPfSq2yR42Jk zvgCjUQQ>4dg6kGGzzVt9`FPi9*Z-IWu+5kMt62gHgS!DH<|M!{{Hi)&J(@g(mCbu? zX)H`O!Wbjp;~XGb^FacnyNQ|^Uy#ZOK#a5i6ambi!*VUNfFH@jfI@KFM$f}?YD4#X zG5wQ|l(7#KMuFmK3*d(}k@OARLlQtk# zpVGbe!dzDWwBURJMBpxKoXoIrZ~f4^HMCOTihx2IJe&#uK5Q%E^iqTP?5<*Mh9%fI z_K{*CaO;;)``1-XLWy(ba=deJl=e6dRd782V~ZYYXJkn1OUY~joSvsch{Ey zC0NFJTNI#pIr)`YVZOM8iya8n5y1b8xcc)QMQ$@Rqqjr=ghcZ}Q944|h**V!8A z|48%t)D373Ptb#>Mn|+$gID**ausR404>Cy>J$~z34oZV=$e3x2#Wy|&gB%mODYd$ zDX**?rQ* z!PERSLs&^@>9!T5Fd408KW6&N?{tAtz_=A#`#dMna9z-C!N7I0!|ZpGvH3TLV12-% zGjfm__l3x6V4bR8xUz&G>Keaiu5;a~A30^WdZL(E>Q%Zqfvs(qm5yQUE}4MT{0 z_`~F;#G;t;9=%x+%`OdFbs=TYNVH{9;jW@PJ=Ro?@7+VFZ95i9nXbR-(YG1)eQXXe zfo+{|wENM0t-PWeg%uprbx4`5R(%js*kstrzyW?Mt9aQ>-LnhioR+|8)x)OMe)CBTkjzKsGdTc;W09e{+h9jYSd5TG|VuR(4Tl?^0D zz3i+o>vx33#m7$q%EH^w?`LDNKhwu#Lfmaeb}yAVtZrxZb)Hj?eYT!Y?kZ5GT=QPP zpr8+Fa{hKQyphpx_TC-n9=Q6%iD6^Ki1u~5IQ&vq!*D~`?L>kjp@Kc)@@PoXh5F_+ z_E(1U<3Ya!oGxA0DTl6jK%Gj?DvtWpd>tYN$QGMk&VF5clJ}GSf-{@d_*{O8ICkG` zg^x%Ytn*S`AB(JJ1oZ~mt56*b*PaFXt1OQrfVW$kw$PeR0!ouB5I~A!&=gR`Gt&i5 zCVB$}_sVA_cKFvJyjAS(u}&L7XyQJNyo6NyR(w-N-y`EmfVjPl9FJ;B)3LcpP4{uA z9G8eDZml**aH^b%E)Hj|$A;Hq@4a?Y6!T4K(;B!d2t+b1+6yG~>&Qzn!v`IJ`au=P z&30QuQ`~!fifC707{=-MzX>_@I-fp90T01Zzm%Z=rcR2fpw!UD{`ZrvS_JTpc4T?Y zv}XawDx2%R)Q&4+bE3>dcgJkG_h+{hVszYTP)wVuL02xyVy^X*DT&y@7j_h&;lPRp zma#V;=OAn62A~q-qX?r^=wm|9nW=Nj8DKcKIb3`*QJQyus&8n>k?QoxM$xS;1M-HO zKX3Yeci0yeCz|Gg)Vb209xB3mOaQ?J+n1zw-UvzEdF*w(ln6fnIQ@uqm=6jLw-Tte zHp(5(g)VH23IL4|!k|F{et9JfWVQFigRRp_`tsu3cKmmiy?z0M80{xRbQu z!q77bFJ^uEgX}n*#`|20s}hEdLnnfFae@KK_x#s(2PbO&!=QBBMh`TpkngEGD!qDo z^|V?qPp~5+Z>VU*uX-q`Rl{Dw>|nmT0ZMUT_+nWz?|B|$AbR-Cq@|sQ%?`|}P>{At z(azekptWFq2o&i@q55Go<86kEINjrebw!z=>LD;tl>t6pCC&HvBuCU_K3 zH2Cwnrq0fsB+LpZ{+&*74to9-^CPa2cA?YvLrd*vHyQ1JVVIsPYBbBNCVBf0A?KvJ z7!FEhsg6}BrW|Jz)~d24-GFsmwtAQ1=Q!R|PKAduog(8+uOlg`#>{ZUhzLyghV3Ve zL+akHng!YkYeNNAQ(rxk36{>~?urhAarP1mEs|>I8mbd~qItYeqfV*~y6wxq$`5q2 zW{32EOAa$t0($#-p6A{Hum;(a`x>}z-%>Y{YOr#Y=+7Qk-j)ViSPQJAMzDA9{TCIhq@A%n9u+l-;ZL< zmqr7`(}hzxcMXWg&O*SO6bH9;cG7dSbpOE2fwwRF!TXQE_bvc2e>c?cy7=#QEq+b5 zTt`IWF<;$tA-y&ANQ%`pvHA=t ztSvl#&cBwJCt~Ma~+b~V_jVH6#&@nEg^P_>>nQqfAq6G zpc!uj(HxNJ_B3?19`&x{bq6}o``#7lW-VD5J0IYkKsT2PlC{k3XcIG+& zz@x@3xiJ+@(C2ma?u34zxN2^TVr)Z7qJ$Emooq7mHi&47o86O1McElo+wy*Wms6DW zFKi%KR_VtEj^BX5G-@NCfXfa{LOdRu+p@$-$Te6iO~i!sn+T66zKzk%Jep&;J{lCAGg zeTcKBZ}rmlT1mS%HzJ{ZVsFT%E=)b2J-_$d1%1VrD?h2(uVOH4}*XYKEe z=fMm-F?D{dEHS*~@Xm3{jW-$^!3^$0q*F6@_PtqeusX9!t{pNdeBz}~9Qf{Oc|fyU zlD@Y-vhlnP5G*qFRQ$2>^XLCj-j%;Y*}rW(q{#9l$&#goB$Ov9vXuQP#=ehHma;Ed z2P2805-Jo~LiVM>48~4Lmh9^=Ow3~$V;{1=AK&j|^uzlHyvOnSZI0vinS1Wfa$nbZ zo#%OlwCIKFWE)Fj*|L`n7vAz8)$2&)Pt)ntVT-k_-Ta_mjiIDQ(3!bK$bS@`_Dbis zlo!mj)CioB{#e|HOK5YvJVLXVV0^m2<1O5rm^95ESkthT6K^b}!M1c<07z{wx7O|5 zLzeZGHn{)F15?5G;qi}~^Y<_8d>{!4vlyatvK8dR`>OqY2AFdumS~I8b}Z6Q{K|w~ z@vN~;-RoFoPDLE+(@B0zr&@AsKX2g-230`33gu5OkY50Jyi09f#%Bj}=GOK&t46Tq z{kzuCVuR+R^IIMyPf?ljsg8mH-Y~c%oZ7HQR0# zguA(yrhr7>8}gQM{e+r?@z!$SLY(9`Nn_l}L5jN?b}px*wpagayoE;u?u#qTvYOyE zEP88UePCIIFF-E6)ih{_q6HCRT#tJ%k*CJ^9O&yRvf3zq@8Ay5xXtEwi~<3jNsYji zs%5`Fu#c&+tvVY4ZWz{(W$6#sn$EGIEN==0+%r3+U|Fl>o1gWI0yp5@NrliKo#*np zZP%kEBMm4fj=B&-$4=7SA~9(9z#Gc0RC)i#rgdLl%AXAS@=1A5G9*V6*hgBYw#Bx1 z^aD{xs^|MkG9Ra{@Qg6e+;Q;5xorg`?rcu45C^sbJ@cLq=UQdabzw0=B zWibT7F(AuuRq+>FF014U$x|{Oe>`2$QHP-KI)|Dyiq>6tfuH6$1GZ54af;GRGS-9= zR(6+I3P-Jmi6cGPB4ky{l%0EdZSx;zxBjSqLzxeF24gPnB{kLxsmF7>T22{xUGQgJ zZ4E;ZbakR!Lg48(gauueGFABic;r{v{zdPlOs|`k!b@wAua5WRYh{mA8;Qw%k%JLD zJUfaC=`ZpbdtWSa#$Bgg;2P65Y^%OAvjK(gZe=S?#g z33LMHZ1f#ks8N3b2bR$wzKFY6GIc!j?hqFJb!_j$ywQyEfR|iw;iGJ0lQPX|1x-2| zEKyW|mfpkgNpiD={NqwyKpHtazAzD4V=F8kt9x;OFE#?Og-^ln+9Ay}jwZgO&y2w^4t)nxb&K#sy-{2!vE5b zlsM@fPI8(i+O<1%XoGbM^+6kH_2=CYMfr$cWDXn5I|17qWVD`pnw8>JkGh{Ei+Qx+ zu@6-IWcYmHaFiAXCT8XWM1dK`ZAMQ&wF*6^dp%Ws{cZ0XAhDsF9D>}kWs34gyFScX zs7ds~2mF<1_`$PF^rjLM61Ku(TX7@QW>huXbSz4X*ZPd*0wta^vj z*fc3Ynk=w2@BDCW$QmlI&L?wl13Co^VK04gE^zC2;!spW(+(*&L(*An*28EiDE%15PVeZCul znh&-)40Ye8)W5%rw+_Y0uTUZJ`!VMyKtpj|+Gh24&!Vj=kn|n&{wNg^wJn!h# zob~W-diC!40T@b4pBqafRBV>S%5w%)ypD6yFJMh>qGGK_ z4YUN)g^C@tY$Ol%7)|i3uu^!w%fn}D)XQ!PM*k(`0d&-BAi?{GMpTPB?lMeJOvnQ? zC0d)!D;oZMztO4bCHFDWD88HBAn3+C!`PlX9C(%KJmvm`q5Uv$GqnS0BnCw8=769h z%C|P#*SZE8VC9}P&Itr=d=Eh*u}mmvofSJA6?w2Lftv1Qvv2q|z&!Fn^C9nUO_7SY z{hmzy=vamWi%|6lAM7$8f6_N-*1L?;4G;Fz{B_CfMrcm zS2~h1H}uy(*Jmu>EwSe)qV+|7HI5;sM=DBEJSX-cIJHO~+t!d;(qO*nUviXQ{Q{tr zc63UA&%k_Ya6iNbUXP_fh=v1*1T-qMA3%rA1zP|>l6EwAtwxL8wT%b#Ct^Iz1=!?a zIJ9rn7fkU|*Bq1{@4q0w1)khof@2}-u0+KbFheEM32Oiu!vXz0^qYzM;=|)5oM-<+ zKx}{+pH_VALiq$M=mxdSbMfy{>_`=d>;T3 z|M`X6cz|wQ_nEhdACJ2E&uQQ|8siM61~ZeHh^-qcf+>=Ks@oIQMlC^^a@_z8z@V18 ztk|_-M{=TTO+=|?k6ES{Q#1%G+-#tkB2xTkK?AJu`JmoUL?F8VavQY3`gW%5P6pQ5 zXULW-9$N{}PyltBwN3)x{1VWAETLgsIML}r;O44(G-zm32GseLURVo!j=o3_;|CI= z6`+>GM|hpaG5XP?kJ2OiF98zN!4ZRD7%p>l-ADF-u)YIC=XNq9ZXu-i22+V}LG(Ri zdr8nu%@HX0`x5}oa|pnb^Tj3nnHvB@nX8yeF4=F?1bvV!s1>r|u)u z_7h)E^7rFi{u$$LMO!*1RJyIxYLCj2z~5 zts=zD>^6&IfbDQlo!mmz1pmVY&?zPfm_~R5%(s#~o29REs1Pd0rNPL;V*~7LQ%Ax6 zDSQbGA}WzCC-n@A_^WiIrohaR?mPkw4epV<-{@cs3bQKvtaF~s4pcn-6-GT7O_WlM z9uGi$Y|Hzf=ZPI{(2Ffxa44f_E4KDs*;7=$R46)lhppn?yDRn1dH!4!UB%sQ?{XRn zeJ-PJj=6j^qVtW$tkChG$qwKzFgm*^Ra>oaBpYmdBhU?_wmFg_7=}RKM zS0lTW^B1Sfy41J6@azNo%|91+0c@k;%x=jw6nyMpG@9VHF^-6v2WP|+rFmwX?fQff zk%^-RE0dO9is$UkPV{H$jy*bw0mr+Ii+&fJIu0!m%B`NDR%j+a3DtJS=5k{bjO;J>#l*!~|PYKz->%|T%G$2X`s_$(4gGGySH_DZ%fD*^PcsxGXlcNsK6^tySsBM zAeiY5{jS;?Ur8iwzyIT)Y{}l72BcnH^3hCDv%ysx+2@>;qUPrb2{wtb29S&*i`&cJ zU{gaO>FT)f?=W2H&Bqq0tG|`-kJ?x&)$6i#t3ez|Ho0LL$~K->FOwmL%A(YYqf)8^9g06K0-Z1Q$@r#<(e=wl z-dinv^f+qty05!^?`HDeIXzJ9%-L4v5MsfL!gqcL&mJtOV{f@mx0-Vmg~l?)pzb_K zYyBzxgm}0NW;nt***Ty_mU$;wV>m;^C<|^ zD)&1=#Z^k#UUx$}_&32Z;sk;Nj0f>=g>zEL*AJ!S$C;-i<^XnP0^B(YZigH(68ZJV zRRRrnvQbak)P!_d1G}m26N_@UkId0%$39G0Bo9{Y6hn&U7wTyw7#$egJswq`{l=B> zG!)~sA;onb06pbuCNEiEb*-RYrRfDFUg5haUG2N{fJ-nDoLG9|gsZ2nwjOMk;JITL zQ)cc~$6(>xIM>>W4N%)teVX9`JzIY@;3N_8)8@vtFrRLZz|Z9p_wyL_M$_n>iG6{rzPEnZO3-;>Be4nFx?ge4SS6^4Dtz+d@bF-(7L- zSx80)JOXpeCHy$oWR^55gtQ4S7>|M<(wdG=hCSIQSKsInz2~slnwB-%lIBht;N z8EJUmwkSotujBH;z)zHpFuWaYkdMyAUh3 z6cracu>4LwrVIKWp#U=StX8oPUI#yG|EjvF8!1b@4J~VGMuQyO61VQ@43+ZW=5qJK!YxrH zjNh}$uf94bzW!;(fU)L&qqKXw_dB|cC9ga{M;+_>(|{GE%zTD+@4?}ongBh z;rh4j5+s2oElXc_hG-0Pt=*OFFe}54GzDI*2Y$m&4^!L|pc@@8((+now^1UjrTP#) ztID-m!muu|e3E!3In!59QjCd-M-htBNWclAEWW?!5Z`3Ubr_N%i(N z$J$Qsk~gk>U{*=uNc`u6Q#h;5agPwt9y)l>Z5W20r}KywBALe-}> z-=rnV?GbrlLv3Y7;V+Gqd@G8sRkg{a7F%B!Rc0F=BVWJ&^SlgxZ#><3`tzTdfnB8e zRAKd=#X9l4T-sO!2Jxcbd;I=4kRB>{v{JO<@oh6l$RpX(~KCBfTXieMccc-b-7{G2KreZgd zs`iS9oa@{JXO`LZ=(g$kG)cP?Rh-4|-?`r(UT(Y-(VwAd?LQGal^=+^E}^0QVKo+K zNvlUYKUOyO2%@l7$FqJpuJ982*likUm9OSxC*mj_;X_3&c7t#ZkD?V}0rjfUo~9a^ zk+r#!L||lIS6DHtSGGIJ@d}L#N$v)L&=8;*I?c+AVTnwINdB93H5=Xu^2_6+{k3C% zdJ|ORaT5>)QokdPac}FL`QG9m%1$JZeG9}}&h#&_9BhSbZ92o5)A_6NF*&m14^x7^ z3kOlqB%$qHWXfC`a|fzG);s)U5W(*u)+&=>R=PLvjSpUS5DE@;`dGP43`t!Z@2%wwu#`)Kx~VITx(3 z;wokq%S82S-3gx4Vjbr3N#37Fy~*|*B7x2j#jUh6T+d)E`|M*OpOMK-pfHEB<-ldo zAE>OfX4~NWPz{Rg{BVhSC(gH&Jm@EvXPDQ|^NNf^N47!U-57$;cegWWi1%Jt#Md`U zz+Uck+qEZ8(Aj-sC7;6?+x>h4ID`5Sg&L{Ka%Zpa=8bDO=ZU7x{%Vr;+6eO=m!Ctm zT{};V7hpNpBw7~Rctt(3xo}9gI>M0Ky>fcA>Tl=|ZPm~k+SyV4sQXd#az%h}cpWi< zX+JeDI=`q+n&wxhoVX6y)}pCeOmJyy7S+%o1^N;zLPPUxcXyvaSI@^lxvl95$T?D) z$kQ!tYt}@U?iTSqhnC*vP05hYmF@lJ1xqUWzkj#%37x_fSXcY=9|2t}!!>$BQrM^W z+86MZ@g!#uUCTKcEeicyA6bu{IpI4tzWWtO(dFD~tH}iQ6wlj_n>uO-(;>Ic*e4`s z%wtxx*J_QC!=Ow}uB``Lh`swZI|}~mD4>F!qcS(=+W)M#T@!VwmM9AP)g^)n z`1)LWzNEKByI%ek_Hy7vyH9ym3#GHI1&rN;)+(<@i zU0z{hdT0J)Y{65uKWmrbu;k!DY1fd;bWHA0DaY$LdxvWr)j+ zO8N2x_`uMQXd}rT79R6 zFa|!spr1!4NMS(-X)jc(0nnVfD^6g`V)EPWVDXw&q^pwcH{Q4vF6-5+x0b?q zq@Pb5(IBU{;!$e@u$(Sqzs60ielb^R67{UA;uz;~{6FI)aS^=HgQO~6S+;H)I{$^<3J}KXFxlm|Gxaz6iLlMO|3vj7zyBZ0dB9=C*pd^jV_i( z+{P7C&~zI(G*z@GNViJo+V^B;;x)ZuHp4>K|5N?`Z$KjWm=3$ATO9?O6rd^|PYr`6 zK^9L8!dCnWa|=X|GD*I`o4(lo36vETeF+1lHQS!R5^2T}Si57a>gjrW8%et%w zHnxpjl*&8^PH5?k7_pyKJ)3)~q~5WGB8H>TcvlVy^`0)<4GN+nWqkq!a$`c4M5Y%G zsYfDrs+yRP3W92oEssX)T4!Hw>IBwdFR@EDZ&>^@fShWq?}9kyzp9-k=l)F42{%w> z@>bwelQC#*jMQ~IzAzDz&W1$fA33gN-*Y!-p9)#Mj@8SG6q& z@T)@{72x6AX9Lp%>XHDvubNw@U$CO@_G*;I{WoC0mmfRDfxZ{#QV&2lkm>KJ-^X7_x$jvo{}GIb97~UF#xAAL3bpI)1@!k9zS0KgBa=PV9Kp2KwS9 zd&;Xmb^|HrDb|-}r&ym8W~RLe8`I>{SBFbI^#QHG_V$e`bzjped*=oJOA};XOMZFi z{qR+}FH8Yur>d*cHkMmfNT&~RnDfHytPuqHw0Pu{^qFKy*V;wwqNg7Co=IQ>J?Gxey2x7qs@i)UUjYy^ZE2kYz z%Q4UUL0R0hLEt)nwKWLpZx~svlG4^A(9WyZ4}sjH`Qq%7Fjd$0&E64CB}Nsuqw@fM zAt@L$dSa+4{u_0z?cYa4Sc6L0i@w}v3lT5TkEMjJz7MoUhuR*bi*?wGI(>pBeLGd| z`#Wlkci}{A>TSjgdk+aI>a^e^a9Td2|YGPP8Blq;F}p_#SJqi??TvAsQwYgoqbu$d}VD^OF)LzP)ntrkisx0#y ze#$Ndb(Ls_`aXELWS+2pcRa{tfpu0l-5%Rm?wN=tD?Mf! P@TaM&tx|Z$>goRgv#U;l literal 0 HcmV?d00001 diff --git a/website/static/img/docs/dbt-cloud/semantic-layer/sl-initial-page.jpg b/website/static/img/docs/dbt-cloud/semantic-layer/sl-initial-page.jpg new file mode 100644 index 0000000000000000000000000000000000000000..03245fc217ce63bf9d77916d69d3994fdca660f6 GIT binary patch literal 29742 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 Date: Fri, 21 Jul 2023 14:26:41 +0200 Subject: [PATCH 235/703] Update compile.md Updates `compile.md` with a link to the Introspective queries documentation. --- website/docs/reference/commands/compile.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index 97d989a140b..b5ef4cb2987 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -68,7 +68,7 @@ select * from renamed The command accesses the data platform to cache-related metadata, and to run introspective queries. Use the flags: - `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. -- `--no-introspect` to disable introspective queries. dbt will raise an error if a model's definition requires running one. +- `--no-introspect` to disable [introspective queries](https://docs.getdbt.com/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. ### FAQs From 4faf734cb1ade852e2977ceb0a8c1292022bdd63 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Fri, 21 Jul 2023 13:28:12 +0100 Subject: [PATCH 236/703] Update website/docs/reference/commands/compile.md --- website/docs/reference/commands/compile.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index b5ef4cb2987..a9821c0ff12 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -68,7 +68,7 @@ select * from renamed The command accesses the data platform to cache-related metadata, and to run introspective queries. Use the flags: - `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. -- `--no-introspect` to disable [introspective queries](https://docs.getdbt.com/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. +- `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. ### FAQs From 0e04ae4ce3c80c6e3fe36aad88265890cb3c44d4 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Fri, 21 Jul 2023 13:31:45 +0100 Subject: [PATCH 237/703] fix link --- .../docs/guides/dbt-ecosystem/sl-partner-integration-guide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index b5f848d9832..ccf1c0d8d09 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -791,7 +791,7 @@ If you'd like to become a formal partner, have product feedback/questions, or ar ## Related docs - [Use the dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) to learn about the product. -- [Build your metrics](/docs/build/build-metrics-intros) for more info about MetricFlow and its components. +- [Build your metrics](/docs/build/build-metrics-intro) for more info about MetricFlow and its components. - [dbt Semantic Layer integrations page](https://www.getdbt.com/product/semantic-layer-integrations) for information about the available partner integrations. From 7cbe8277a81ab10aee9799b315c306818de3d193 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Fri, 21 Jul 2023 13:39:07 +0100 Subject: [PATCH 238/703] Update website/docs/reference/resource-configs/database.md --- website/docs/reference/resource-configs/database.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/database.md b/website/docs/reference/resource-configs/database.md index 4e7ce3be039..9b7cd1b39d3 100644 --- a/website/docs/reference/resource-configs/database.md +++ b/website/docs/reference/resource-configs/database.md @@ -43,4 +43,4 @@ seeds: ## Warehouse specific information * BigQuery: `project` and `database` are interchangeable -* Redshift: Cross-database queries are not possible in Redshift. As such, dbt will return a Database Error if you use 'Database A' for a seed file and try to `{{ ref() }}` that seed file(or its database object) in a model using 'Database B'. This error would only be found at runtime. +* Redshift: Cross-database queries are not possible in Redshift. As such, dbt will return a Database Error if you use 'Database A' for a seed file and try to `{{ ref() }}` that seed file (or its database object) in a model using 'Database B'. This error would only be found at runtime. From 0398e75343a8bd5d0e8780f3556df8cec70dbb49 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Fri, 21 Jul 2023 15:13:54 +0100 Subject: [PATCH 239/703] fix spacing --- .../docs/guides/dbt-ecosystem/sl-partner-integration-guide.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index ccf1c0d8d09..7e6dc81bac0 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -793,5 +793,3 @@ If you'd like to become a formal partner, have product feedback/questions, or ar - [Use the dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) to learn about the product. - [Build your metrics](/docs/build/build-metrics-intro) for more info about MetricFlow and its components. - [dbt Semantic Layer integrations page](https://www.getdbt.com/product/semantic-layer-integrations) for information about the available partner integrations. - - From 2fd2e752f9db85414afd1258791f0b1f2d8f4a45 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Fri, 21 Jul 2023 16:16:32 +0100 Subject: [PATCH 240/703] Update website/docs/docs/dbt-versions/product-lifecycles.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/dbt-versions/product-lifecycles.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/product-lifecycles.md b/website/docs/docs/dbt-versions/product-lifecycles.md index 65aad0ad333..71f33110eb2 100644 --- a/website/docs/docs/dbt-versions/product-lifecycles.md +++ b/website/docs/docs/dbt-versions/product-lifecycles.md @@ -14,7 +14,7 @@ Any dbt feature will fall into one of the following lifecycle states: ### dbt Cloud -- **Beta:** Beta features may be made available for the purpose of customer testing and evaluation. These may not be feature-complete or fully stable. There may still be some planned additions and modifications to product behaviors while in Beta. Breaking changes may occur – although we will do our best to communicate them in advance, we may not always be able to do so. Beta features may not be fully documented, technical support may be limited, and service level objectives (SLOs) may not be provided. Download the [Beta Features Terms and Conditions](/assets/beta-tc.pdf) for more info. +- **Beta:** Beta features may be made available for the purpose of customer testing and evaluation. These might not be feature-complete or fully stable. There might still be some planned additions and modifications to product behaviors while in beta. Breaking changes could occur — although we will do our best to communicate them in advance, we might not always be able to do so. Beta features might not be fully documented, technical support might be limited, and service level objectives (SLOs) might not be provided. Download the [Beta Features Terms and Conditions](/assets/beta-tc.pdf) for more details. - **Preview (Private or Public):** Preview features are stable and can be considered for production deployments. There may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality to Preview features that is not backward compatible. Preview features include documentation, technical support, and include service level objectives (SLOs). Features in Preview are generally provided at no extra cost, although they may become paid features in their Generally Available state. From 5c68543ed8a8e7a1e337d924e305903f1195eedb Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 21 Jul 2023 10:23:08 -0700 Subject: [PATCH 241/703] Update website/docs/guides/migration/versions/02-upgrading-to-v1.5.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/guides/migration/versions/02-upgrading-to-v1.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index 3f8a910461c..bb793edf4c7 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -59,7 +59,7 @@ models: Some options that could previously be specified before a sub-command can now only be specified afterward. For example, `dbt --profiles-dir . run` isn't valid anymore, and instead, you need to use `dbt run --profiles-dir .` -The built-in [collect_freshness](https://github.com/dbt-labs/dbt-core/blob/1.5.latest/core/dbt/include/global_project/macros/adapters/freshness.sql) macro now returns the entire `response` object, instead of just the `table` result. If you're using a custom override for `collect_freshness`, make sure you're also returning the `response` object, otherwise, some of your dbt commands will never finish. For example: +The built-in [collect_freshness](https://github.com/dbt-labs/dbt-core/blob/1.5.latest/core/dbt/include/global_project/macros/adapters/freshness.sql) macro now returns the entire `response` object, instead of just the `table` result. If you're using a custom override for `collect_freshness`, make sure you're also returning the `response` object; otherwise, some of your dbt commands will never finish. For example: ```sql {{ return(load_result('collect_freshness')) }} From 71e4be2e4eddf5763f52590e902099475201e6b0 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Fri, 21 Jul 2023 12:11:45 -0700 Subject: [PATCH 242/703] add specs + timespine --- website/docs/docs/build/dimensions.md | 11 ++++++++++- website/docs/docs/build/entities.md | 9 +++++++++ .../docs/docs/build/metricflow-time-spine.md | 17 +++++++++++++++++ website/docs/docs/build/metrics-overview.md | 14 +++++++------- website/docs/docs/build/semantic-models.md | 15 +++++++++++++++ 5 files changed, 58 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/build/dimensions.md b/website/docs/docs/build/dimensions.md index abe769e54a1..6338646f31f 100644 --- a/website/docs/docs/build/dimensions.md +++ b/website/docs/docs/build/dimensions.md @@ -14,7 +14,16 @@ In a data platform, dimensions is part of a larger structure called a semantic m Groups are defined within semantic models, alongside entities and measures, and correspond to non-aggregatable columns in your dbt model that provides categorical or time-based context. In SQL, dimensions is typically included in the GROUP BY clause.--> -Refer to the following semantic model example: +The complete spec for dimensions is below: +```yaml +dimensions: + - name: The name [Required] + type: Categorical or Time [Required] + type_params: specific type params such as if the time is primary or used as a partition [Required] + description: same as always [Optional] + expr: the column name or expression. If not provided the defult is the dimension name [Optional] +``` +Refer to the following example to see how dimensions are used in a semantic model: ```yaml semantic_models: diff --git a/website/docs/docs/build/entities.md b/website/docs/docs/build/entities.md index 1e7f2ff878d..b3af052ca50 100644 --- a/website/docs/docs/build/entities.md +++ b/website/docs/docs/build/entities.md @@ -28,6 +28,15 @@ MetricFlow's join logic depends on the entity `type` you use, and it also determ * **Foreign —** A foreign key can include zero, one, or multiple instances of the same record. Null values may also be present. * **Natural —** Natural keys are column or combination of columns in a table that uniquely identify a record based on real-world data. For instance, in a sales_person_department dimension table, the sales_person_id can serve as a natural key. +The complete spec for entities is below: +```yaml +entities: + - name: the name # think transaction [Required] + type: primary # or natural or foreign or unique [Required] + description: a description of the field or role the entity takes in this table [Optional] + expr: the field that denotes that entity (transaction_id). If not specified will default to name [Optional] +``` + Here's an example of how to define entities in a semantic model: ``` yaml diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 607df692bc9..73520ae513f 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -28,5 +28,22 @@ final as ( select * from final ``` +```sql +--- BigQuery supports DATE() instead of TO_DATE(). Use this model if you're using BigQuery +with days as ( + {{dbt_utils.date_spine('day' + , "DATE(2000,01,01)" + , "DATE(2030,01,01)" + ) + }} +), + +final as ( + select cast(date_day as date) as date_day + from days +) +select * +from final +``` You only need to include the `date_day` column in the table. MetricFlow can handle broader levels of detail, but it doesn't currently support finer grains. diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index 6375054ed5c..ec0861b93e3 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -20,14 +20,14 @@ Here's a complete example of the metrics spec configuration: ``` metrics: - - name: metric name - description: same as always - type: the type of the metric - type_params: + - name: metric name [Required] + description: same as always [Optional] + type: the type of the metric [Required] + type_params: [Required] - specific properties for the metric type - configs: here for `enabled` - label: The display name for your metric. This value will be shown in downstream tools. - filter: | + configs: here for `enabled`[Optional] + label: The display name for your metric. This value will be shown in downstream tools. [Required] + filter: | [Optional] {{ dimension('name') }} > 0 and {{ dimension(' another name') }} is not null ``` diff --git a/website/docs/docs/build/semantic-models.md b/website/docs/docs/build/semantic-models.md index a304944a440..16c78a17c2e 100644 --- a/website/docs/docs/build/semantic-models.md +++ b/website/docs/docs/build/semantic-models.md @@ -23,6 +23,21 @@ You can configure semantic models in your dbt project directory in a `YAML` file ## Semantic models components +The complete spec for semantic models is below: +```yaml +semantic_models: + - name: the_name_of_the_semantic_model [Required] + description: same as always [Optional] + model: ref('some_model') [Required] + default: [Required] + agg_time_dimension: dimension_name [Required if the model contains dimensions] + entities: [Required] + - see more information in entities + measures:[Optional] + - see more information in measures section + dimensions:[Required] + - see more information in dimensions section +``` The following example displays a complete configuration and detailed descriptions of each field: From c46f9d0baaebe912942ea371611c1e21c9227ba8 Mon Sep 17 00:00:00 2001 From: Gleb Mezhanskiy Date: Fri, 21 Jul 2023 15:39:26 -0400 Subject: [PATCH 243/703] Add Datafold to 3rd-party column-level lineage providers --- website/docs/terms/data-lineage.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/terms/data-lineage.md b/website/docs/terms/data-lineage.md index 41779e77702..22dc03d4d61 100644 --- a/website/docs/terms/data-lineage.md +++ b/website/docs/terms/data-lineage.md @@ -79,7 +79,7 @@ DAGs shouldn’t be dependent on manual updates. Instead, your DAG should be aut ### Third-party tooling -Data teams may also choose to use third-party tools  with  lineage capabilities such as [Atlan](https://ask.atlan.com/hc/en-us/articles/4433673207313-How-to-set-up-dbt-Cloud), Alation, [Collibra](https://marketplace.collibra.com/listings/dbt-lineage-to-collibra-integration/), Metaphor, [Monte Carlo](https://docs.getmontecarlo.com/docs/dbt-cloud), [Select Star](https://docs.selectstar.com/integrations/dbt/dbt-cloud), or [Stemma](https://docs.stemma.ai/docs/stemma/getting-started/what-we-need-from-you/dbt-integration/). These tools often integrate directly with your data pipelines and dbt workflows and offer zoomed-in data lineage capabilities such as column-level or business logic-level lineage. +Data teams may also choose to use third-party tools  with  lineage capabilities such as [Atlan](https://ask.atlan.com/hc/en-us/articles/4433673207313-How-to-set-up-dbt-Cloud), Alation, [Collibra](https://marketplace.collibra.com/listings/dbt-lineage-to-collibra-integration/), [Datafold](https://www.datafold.com/column-level-lineage), Metaphor, [Monte Carlo](https://docs.getmontecarlo.com/docs/dbt-cloud), [Select Star](https://docs.selectstar.com/integrations/dbt/dbt-cloud), or [Stemma](https://docs.stemma.ai/docs/stemma/getting-started/what-we-need-from-you/dbt-integration/). These tools often integrate directly with your data pipelines and dbt workflows and offer zoomed-in data lineage capabilities such as column-level or business logic-level lineage. ## Data lineage challenges From c4cf6b4d41c5d1670f0238c4c39af8ec5c6aed93 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Fri, 21 Jul 2023 14:23:48 -0700 Subject: [PATCH 244/703] add config --- website/docs/docs/build/metricflow-time-spine.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 73520ae513f..71ab0e77c16 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -12,6 +12,7 @@ To create this table, you need to create a model in your dbt project called `met ```sql -- metricflow_time_spine.sql +{{config(materialized='table')}} with days as ( {{dbt_utils.date_spine('day' , "to_date('01/01/2000','mm/dd/yyyy')" @@ -30,6 +31,7 @@ from final ``` ```sql --- BigQuery supports DATE() instead of TO_DATE(). Use this model if you're using BigQuery +{{config(materialized='table')}} with days as ( {{dbt_utils.date_spine('day' , "DATE(2000,01,01)" From 822fa1d173e5be8de4c982f04e630db889162ca0 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Fri, 21 Jul 2023 16:10:37 -0700 Subject: [PATCH 245/703] Update quickstart-sl.md made just a few tweaks to the query section --- website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 5e85f87e792..ef598b3da96 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -157,10 +157,11 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America. -1. Refer to the {frontMatter.meta.api_name} to learn how to integrate with the JDBC. -2. Once you've connected to the API, you should then set up and query metrics in your downstream tool of choice. +You can query your metrics in a JDBC-enabled tool or use existing first-class integrations with the dbt Semantic Layer. -Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. +1. Refer to the {frontMatter.meta.api_name} to learn how to use the JDBC API and what tools you can query it with. + +2. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. ## FAQs From 4c6116f839537bc4c4804f0561560ea63d3c9848 Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Sun, 23 Jul 2023 15:35:33 -0700 Subject: [PATCH 246/703] Update contract with better description (#3797) ## What are you changing in this pull request and why? Thanks to @joellabes for a better one! ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --- website/docs/reference/resource-configs/contract.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/contract.md b/website/docs/reference/resource-configs/contract.md index 91d87fd2716..66072fc8b89 100644 --- a/website/docs/reference/resource-configs/contract.md +++ b/website/docs/reference/resource-configs/contract.md @@ -1,6 +1,6 @@ --- resource_types: [models] -description: "Read this guide to understand the contract configuration in dbt." +description: "When the contract configuration is enforced, dbt will ensure that your model's returned dataset exactly matches the attributes you have defined in yaml, such as name and data_type, as well as any additional constraints supported by the data platform." datatype: "{}" default_value: {contract: false} id: "contract" From 286cb69bedc584d24d32d8b8a9e6a84a8d308eba Mon Sep 17 00:00:00 2001 From: Mike Derksen <85023255+mike-6383@users.noreply.github.com> Date: Mon, 24 Jul 2023 09:50:43 +0100 Subject: [PATCH 247/703] Update incremental-models.md Incremental models do not necessarily fail is the unique_key is not unique. Changes docs to better reflect this. --- website/docs/docs/build/incremental-models.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/incremental-models.md b/website/docs/docs/build/incremental-models.md index 29c7c8c585f..dd20ca36a53 100644 --- a/website/docs/docs/build/incremental-models.md +++ b/website/docs/docs/build/incremental-models.md @@ -108,7 +108,7 @@ When you define a `unique_key`, you'll see this behavior for each row of "new" d * If the same `unique_key` is present in the "new" and "old" model data, dbt will update/replace the old row with the new row of data. The exact mechanics of how that update/replace takes place will vary depending on your database, [incremental strategy](#about-incremental_strategy), and [strategy specific configs](#strategy-specific-configs). * If the `unique_key` is _not_ present in the "old" data, dbt will insert the entire row into the table. -Please note that if there's a `unique_key` with more than one row in either the existing target table or the new incremental rows, the incremental model run will fail. Your database and [incremental strategy](#about-incremental_strategy) will determine the specific error that you see, so if you're having issues running an incremental model, it's a good idea to double check that the unique key is truly unique in both your existing database table and your new incremental rows. You can [learn more about surrogate keys here](/terms/surrogate-key). +Please note that if there's a unique_key with more than one row in either the existing target table or the new incremental rows, the incremental model may fail depending on your database and [incremental strategy](#about-incremental_strategy). If you're having issues running an incremental model, it's a good idea to double check that the unique key is truly unique in both your existing database table and your new incremental rows. You can [learn more about surrogate keys here](/terms/surrogate-key). :::info While common incremental strategies, such as`delete+insert` + `merge`, might use `unique_key`, others don't. For example, the `insert_overwrite` strategy does not use `unique_key`, because it operates on partitions of data rather than individual rows. For more information, see [About incremental_strategy](#about-incremental_strategy). From 83331701b48398db67e2766fcd35e4e9fa90167b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 24 Jul 2023 10:49:18 +0100 Subject: [PATCH 248/703] fix yaml and turn jordan's edits to table --- website/docs/docs/build/dimensions.md | 32 +++--- website/docs/docs/build/entities.md | 10 +- website/docs/docs/build/metrics-overview.md | 102 +++++++++--------- website/docs/docs/build/semantic-models.md | 34 +++--- website/docs/docs/build/sl-getting-started.md | 41 +++---- 5 files changed, 116 insertions(+), 103 deletions(-) diff --git a/website/docs/docs/build/dimensions.md b/website/docs/docs/build/dimensions.md index 6338646f31f..c0614a82df1 100644 --- a/website/docs/docs/build/dimensions.md +++ b/website/docs/docs/build/dimensions.md @@ -14,15 +14,27 @@ In a data platform, dimensions is part of a larger structure called a semantic m Groups are defined within semantic models, alongside entities and measures, and correspond to non-aggregatable columns in your dbt model that provides categorical or time-based context. In SQL, dimensions is typically included in the GROUP BY clause.--> -The complete spec for dimensions is below: +All dimensions require a `name`, `type` and in most cases, an `expr` parameter. + +| Name | Parameter | Field type | +| --- | --- | --- | +| `name` | Refers to the name of the group that will be visible to the user in downstream tools. It can also serve as an alias if the column name or SQL query reference is different and provided in the `expr` parameter.

Dimension names should be unique within a semantic model, but they can be non-unique across different models as MetricFlow uses [joins](/docs/build/join-logic) to identify the right dimension. | Required | +| `type` | Specifies the type of group created in the semantic model. There are three types:

— Categorical: Group rows in a table by categories like geography, product type, color, and so on.
— Time: Point to a date field in the data platform, and must be of type TIMESTAMP or equivalent in the data platform engine.
— Slowly-changing dimensions: Analyze metrics over time and slice them by groups that change over time, like sales trends by a customer's country. | Required | +| `type_params` | Specific type params such as if the time is primary or used as a partition | Required | +| `description` | Description of the dimension | Optional | +| `expr` | Defines the underlying column or SQL query for a dimension. If no `expr` is specified, MetricFlow will use the column with the same name as the group. You can use column name itself to input a SQL expression. | Optional | + +Refer to the following for the complete specification for dimensions: + ```yaml dimensions: - - name: The name [Required] - type: Categorical or Time [Required] - type_params: specific type params such as if the time is primary or used as a partition [Required] - description: same as always [Optional] - expr: the column name or expression. If not provided the defult is the dimension name [Optional] + - name: name of the group that will be visible to the user in downstream tools + type: Categorical or Time + type_params: specific type params such as if the time is primary or used as a partition + description: same as always + expr: the column name or expression. If not provided the default is the dimension name ``` + Refer to the following example to see how dimensions are used in a semantic model: ```yaml @@ -49,14 +61,6 @@ semantic_models: expr: case when quantity > 10 then true else false end ``` -All dimensions require a `name`, `type` and in most cases, an `expr` parameter. - -| Name | Parameter | Field type | -| --- | --- | --- | -| `name` | Refers to the name of the group that will be visible to the user in downstream tools. It can also serve as an alias if the column name or SQL query reference is different and provided in the `expr` parameter.

— dimensions names should be unique within a semantic model, but they can be non-unique across different models as MetricFlow uses [joins](/docs/build/join-logic) to identify the right dimension. | Required | -| `type` | Specifies the type of group created in the semantic model. There are three types:

— Categorical: Group rows in a table by categories like geography, product type, color, and so on.
— Time: Point to a date field in the data platform, and must be of type TIMESTAMP or equivalent in the data platform engine.
— Slowly-changing dimensions: Analyze metrics over time and slice them by groups that change over time, like sales trends by a customer's country. | Required | -| `expr` | Defines the underlying column or SQL query for a dimension. If no `expr` is specified, MetricFlow will use the column with the same name as the group. You can use column name itself to input a SQL expression. | Optional | - ## Dimensions types Dimensions has three types. This section further explains the definitions and provides examples. diff --git a/website/docs/docs/build/entities.md b/website/docs/docs/build/entities.md index b3af052ca50..464fa2c3b8c 100644 --- a/website/docs/docs/build/entities.md +++ b/website/docs/docs/build/entities.md @@ -31,10 +31,12 @@ MetricFlow's join logic depends on the entity `type` you use, and it also determ The complete spec for entities is below: ```yaml entities: - - name: the name # think transaction [Required] - type: primary # or natural or foreign or unique [Required] - description: a description of the field or role the entity takes in this table [Optional] - expr: the field that denotes that entity (transaction_id). If not specified will default to name [Optional] + - name: transaction ## Required + type: primary or natural or foreign or unique ## Required + description: a description of the field or role the entity takes in this table ## Optional + expr: the field that denotes that entity (transaction_id). ## Optional + If not specified will default to name + ``` Here's an example of how to define entities in a semantic model: diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index ec0861b93e3..a7f0d1d3d21 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -10,27 +10,31 @@ Once you've created your semantic models, it's time to start adding metrics! Met The keys for metrics definitions are: -* `name`: Provide the reference name for the metric. This name must be unique amongst all metrics. -* `type`: Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). -* `type_params`: Additional parameters used to configure metrics. `type_params` are different for each metric type. -* `constraint`: For any type of metric, you may optionally include a constraint string, which applies a dimensional filter when computing the metric. You may think of this as your WHERE clause. -* `meta`: Additional metadata you want to add to your metric. +| Component | Description | Type | +| --------- | ----------- | ---- | +| `name` | Provide the reference name for the metric. This name must be unique amongst all metrics. | Required | +| `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Optional | +| `type_params` | Additional parameters used to configure metrics. `type_params` are different for each metric type. | Required | +| `constraint` | For any type of metric, you may optionally include a constraint string, which applies a dimensional filter when computing the metric. You may think of this as your WHERE clause. | Required | +| `meta` | Additional metadata you want to add to your metric. | + Here's a complete example of the metrics spec configuration: -``` +```yaml metrics: - - name: metric name [Required] - description: same as always [Optional] - type: the type of the metric [Required] - type_params: [Required] - - specific properties for the metric type - configs: here for `enabled`[Optional] - label: The display name for your metric. This value will be shown in downstream tools. [Required] - filter: | [Optional] - {{ dimension('name') }} > 0 and {{ dimension(' another name') }} is not null - + - name: metric name ## Required + description: same as always ## Optional + type: the type of the metric ## Required + type_params: ## Required + - specific properties for the metric type + configs: here for `enabled` ## Optional + label: The display name for your metric. This value will be shown in downstream tools. ## Required + filter: | ## Optional + {{ dimension('name') }} > 0 and {{ dimension(' another name') }} is not + null ``` + This page explains the different supported metric types you can add to your dbt project. - ### Cumulative metrics [Cumulative metrics](/docs/build/cumulative) aggregate a measure over a given window. If no window is specified, the window would accumulate the measure over all time. **Note**m, you will need to create the [time spine model](/docs/build/metricflow-time-spine) before you add cumulative metrics. @@ -48,15 +51,16 @@ This page explains the different supported metric types you can add to your dbt ```yaml # Cumulative metrics aggregate a measure over a given window. The window is considered infinite if no window parameter is passed (accumulate the measure over all time) metrics: -- name: wau_rolling_7 - owners: - - support@getdbt.com - type: cumulative - type_params: - measures: - - distinct_users + - name: wau_rolling_7 + owners: + - support@getdbt.com + type: cumulative + type_params: + measures: + - distinct_users #Omitting window will accumulate the measure over all time - window: 7 days + window: 7 days + ``` ### Derived metrics @@ -66,13 +70,13 @@ metrics: metrics: - name: net_sales_per_user type: derived - type_params: + type_params: null metrics: - name: gross_sales # these are all metrics (can be a derived metric, meaning building a derived metric with derived metrics) - name: cogs - name: users - filter: is_active # Optional additional constraint - alias: active_users # Optional alias to use in the expr + filter: is_active # Optional additional constraint + alias: active_users # Optional alias to use in the expr ``` ```yaml -metrics: -# Define the reference name of the metric. -# This name must be unique amongst metrics and can include lowercase letters, numbers, and underscores. -# This name is used to call the metric from the dbt Semantic Layer API. - - name: cancellations - type: simple +metrics: + - name: cancellations + type: simple type_params: - # Specify the measure you are creating a proxy for. - measure: cancellations_usd - filter: | - {{dimension('value')}} > 100 and {{dimension('acquisition', entity_path=['user'])}} + measure: cancellations_usd # Specify the measure you are creating a proxy for. + filter: | + {{dimension('value')}} > 100 and {{dimension('acquisition', entity_path=['user'])}} ``` ### Further configuration diff --git a/website/docs/docs/build/semantic-models.md b/website/docs/docs/build/semantic-models.md index 16c78a17c2e..9b74b5b4813 100644 --- a/website/docs/docs/build/semantic-models.md +++ b/website/docs/docs/build/semantic-models.md @@ -12,30 +12,34 @@ Semantic models serve as the foundation for defining data in MetricFlow, which p Each semantic model corresponds to a dbt model in your DAG. Therefore you will have one YAML config for each semantic model in your dbt project. You can create multiple semantic models out of a single dbt model, as long as you give each semantic model a unique name. -You can configure semantic models in your dbt project directory in a `YAML` file. Depending on your project structure, you can nest semantic models under a `metrics:` folder or organize them under project sources. Semantic models have 6 components and this page explains the definitions with some examples: +You can configure semantic models in your dbt project directory in a `YAML` file. Depending on your project structure, you can nest semantic models under a `metrics:` folder or organize them under project sources. -1. [Name](#name) — Unique name for the semantic model. -1. [Description](#description) — Includes important details in the description. -1. [Model](#model) — Specifies the dbt model for the semantic model using the `ref` function. -1. [Entities](#entities) — Uses the columns from entities as join keys and indicate their type as primary, foreign, or unique keys with the `type` parameter. -1. [Dimensions](#dimensions) — Different ways to group or slice data for a metric, they can be `time-based` or `categorical`. -1. [Measures](#measures) — Aggregations applied to columns in your data model. They can be the final metric or used as building blocks for more complex metrics. +Semantic models have 6 components and this page explains the definitions with some examples: +| Component | Description | Type | +| --------- | ----------- | ---- | +| [Name](#name) | Unique name for the semantic model | Required | +| [Description](#description) | Includes important details in the description | Optional | +| [Model](#model) | Specifies the dbt model for the semantic model using the `ref` function | Required | +| [Entities](#entities) | Uses the columns from entities as join keys and indicate their type as primary, foreign, or unique keys with the `type` parameter | Required | +| [Dimensions](#dimensions) | Different ways to group or slice data for a metric, they can be `time-based` or `categorical` | Required | +| [Measures](#measures) | Aggregations applied to columns in your data model. They can be the final metric or used as building blocks for more complex metrics | Optional | ## Semantic models components + The complete spec for semantic models is below: ```yaml semantic_models: - - name: the_name_of_the_semantic_model [Required] - description: same as always [Optional] - model: ref('some_model') [Required] - default: [Required] - agg_time_dimension: dimension_name [Required if the model contains dimensions] - entities: [Required] + - name: the_name_of_the_semantic_model ## Required + description: same as always ## Optional + model: ref('some_model') ## Required + default: ## Required + agg_time_dimension: dimension_name ## Required if the model contains dimensions + entities: ## Required - see more information in entities - measures:[Optional] + measures: ## Optional - see more information in measures section - dimensions:[Required] + dimensions: ## Required - see more information in dimensions section ``` diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 5b8a40904f5..29134b3cf59 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -28,11 +28,15 @@ New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/ ## Install MetricFlow -Before you begin, make sure you install the `metricflow` and [dbt adapter](/docs/supported-data-platforms) via PyPI in the CLI. To install them, open the command line interface (CLI) and use the pip install command `pip install "dbt-metricflow[your_adapter_name]"`. +Before you begin, install the [MetricFlow CLI](/docs/build/metricflow-cli) as an extension of a dbt adapter from PyPI. The MetricFlow CLI is compatible with Python versions 3.8, 3.9, 3.10 and 3.11 -Note that specifying `[your_adapter_name]` is required. This is because you must install MetricFlow as an extension of a dbt adapter. For example, for a Snowflake adapter, run `pip install "dbt-metricflow[snowflake]"`. +Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platforms): + +- Create or activate your virtual environment. `python -m venv venv` +- `pip install "dbt-metricflow[your_adapter_name]"` + * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. -Currently, the supported adapters are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). +Currently, the supported adapters are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). ## Create a semantic model @@ -52,26 +56,26 @@ semantic_models: 2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `transaction_id`, and so on. ```yaml - entities: - - name: transaction - type: primary - expr: id_transaction - - name: customer - type: foreign - expr: id_customer +entities: + - name: transaction + type: primary + expr: id_transaction + - name: customer + type: foreign + expr: id_customer ``` 3. Define your dimensions and measures. dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. ```yaml measures: - - name: transaction_amount_usd - description: The total USD value of the transaction. - agg: sum - dimensions: - - name: is_large - type: categorical - expr: case when transaction_amount_usd >= 30 then true else false end + - name: transaction_amount_usd + description: The total USD value of the transaction. + agg: sum +dimensions: + - name: is_large + type: categorical + expr: case when transaction_amount_usd >= 30 then true else false end ``` :::tip @@ -94,11 +98,10 @@ Now that you've created your first semantic model, it's time to define your firs The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. ```yaml ---- metrics: - name: transaction_amount_usd type: simple - type_params: + type_params: null measure: transaction_amount_usd ``` From 61ff5490c3951764de18e61804b5aed3f6de53d4 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 24 Jul 2023 10:56:18 +0100 Subject: [PATCH 249/703] Update dimensions.md fix lines and typos --- website/docs/docs/build/dimensions.md | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/build/dimensions.md b/website/docs/docs/build/dimensions.md index c0614a82df1..d154141791f 100644 --- a/website/docs/docs/build/dimensions.md +++ b/website/docs/docs/build/dimensions.md @@ -47,7 +47,6 @@ semantic_models: # --- entities --- entities: ... - # --- measures --- measures: ... @@ -63,7 +62,7 @@ semantic_models: ## Dimensions types -Dimensions has three types. This section further explains the definitions and provides examples. +Dimensions have three types. This section further explains the definitions and provides examples. 1. [Categorical](#categorical) 1. [Time](#time) @@ -92,9 +91,9 @@ To use BigQuery as your data platform, time dimensions columns need to be in the -To specify the default time dimensions for a measure or metric in MetricFlow, set the `is_primary` parameter to True. If you have multiple time dimensions in your semantic model, the non-primary ones should have `is_primary` set to False. To assign a non-primary time dimensions to a measure, use the `agg_time_dimension` parameter and refer to the time dimensions defined in the section. +To specify the default time dimensions for a measure or metric in MetricFlow, set the `is_primary` parameter to True. If your semantic model has multiple time dimensions, the non-primary ones should have `is_primary` set to False. To assign non-primary time dimensions to a measure, use the `agg_time_dimension` parameter and refer to the time dimensions defined in the section. -In the provided example, the semantic model has two time groups, `created_at` and `deleted_at`, with `created_at` being the primary time dimensions through `is_primary: True`. The `users_created` measure defaults to the primary time dimensions, while the `users_deleted` measure uses `deleted_at` as its time group. +In the provided example, the semantic model has two-time groups, `created_at` and `deleted_at`, with `created_at` being the primary time dimension through `is_primary: True`. The `users_created` measure defaults to the primary time dimensions, while the `users_deleted` measure uses `deleted_at` as its time group. ```yaml dimensions: @@ -123,7 +122,7 @@ measures: agg: sum ``` -When querying one or more metrics in MetricFlow using the CLI, the default time dimensions for a single metric is the primary time dimension, which can be referred to as metric_time or the dimensions's name. Multiple time groups can be used in separate metrics, such as users_created which uses created_at, and users_deleted which uses deleted_at. +When querying one or more metrics in MetricFlow using the CLI, the default time dimension for a single metric is the primary time dimension, which can be referred to as metric_time or the dimensions' name. Multiple time groups can be used in separate metrics, such as users_created which uses created_at, and users_deleted which uses deleted_at. ``` mf query --metrics users_created,users_deleted --dimensions metric_time --order metric_time @@ -217,7 +216,7 @@ measures: Currently, there are limitations in supporting SCD's. ::: -MetricFlow, supports joins against dimensions values in a semantic model built on top of an SCD Type II table (slowly changing dimension) Type II table. This is useful when you need a particular metric sliced by a group that changes over time, such as the historical trends of sales by a customer's country. +MetricFlow supports joins against dimensions values in a semantic model built on top of an SCD Type II table (slowly changing dimension) Type II table. This is useful when you need a particular metric sliced by a group that changes over time, such as the historical trends of sales by a customer's country. As their name suggests SCD Type II are groups that change values at a coarser time granularity. This results in a range of valid rows with different dimensions values for a given metric or measure. MetricFlow associates the metric with the first (minimum) available dimensions value within a coarser time window, such as month. By default, MetricFlow uses the group that is valid at the beginning of the time granularity. @@ -265,7 +264,7 @@ Take note of the extra arguments under `validity_params`: `is_start` and `is_end ```yaml semantic_models: - name: sales_person_tiers - description: SCD Type II table of tiers for sales people + description: SCD Type II table of tiers for salespeople model: {{ref(sales_person_tiers)}} defaults: agg_time_dimension: tier_start @@ -350,7 +349,7 @@ In the sales tier example, For instance, if a salesperson was Tier 1 from 2022- -This example shows how to create slowly changing dimensions (SCD) using a semantic model. The SCD table contains information about sales persons' tier and the time length of that tier. Suppose you have the underlying SCD table: +This example shows how to create slowly changing dimensions (SCD) using a semantic model. The SCD table contains information about salespersons' tier and the time length of that tier. Suppose you have the underlying SCD table: | sales_person_id | tier | start_date | end_date | |-----------------|------|------------|----------| From 6bef3470f8c38d543794311ba3b44590ee72bf9b Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 24 Jul 2023 11:01:13 +0100 Subject: [PATCH 250/703] Update measures.md --- website/docs/docs/build/measures.md | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/website/docs/docs/build/measures.md b/website/docs/docs/build/measures.md index 3483e4d823d..13758fa094a 100644 --- a/website/docs/docs/build/measures.md +++ b/website/docs/docs/build/measures.md @@ -15,26 +15,25 @@ Measures are aggregations performed on columns in your model. They can be used a | [`agg`](#aggregation) | dbt supports the following aggregations: `sum`, `max`, `min`, `count_distinct`, and `sum_boolean`. | Required | | [`expr`](#expr) | You can either reference an existing column in the table or use a SQL expression to create or derive a new one. | Optional | | [`non_additive_dimension`](#non-additive-dimensions) | Non-additive dimensions can be specified for measures that cannot be aggregated over certain dimensions, such as bank account balances, to avoid producing incorrect results. | Optional | -| [`agg_params`] | specific aggregation properties such as a percentile. | [Optional]| -| [`agg_time_dimension`] | The time field. Defaults to the default agg time dimension for the semantic model. | [Optional] | -| [`non_additive_dimension`] | Use these configs when you need non-additive dimensions. | [Optional]| -| [`label`] | How the metric appears in project docs and downstream integrations. | [Required]| +| `agg_params` | specific aggregation properties such as a percentile. | Optional | +| `agg_time_dimension` | The time field. Defaults to the default agg time dimension for the semantic model. | Optional | +| `label` | How the metric appears in project docs and downstream integrations. | Required | ## Measure spec An example of the complete YAML measures spec is below. The actual configuration of your measures will depend on the aggregation you're using. -```bash +```yaml measures: - - name: The name of the measure # think transaction_total. If `expr` isn't present then this is the expected name of the column [Required] - description: same as always [Optional] - agg: the aggregation type. #think average, sum, max, min, etc.[Required] - expr: the field # think transaction_total or some other name you might want to alias [Optional] - agg_params: specific aggregation properties such as a percentile [Optional] - agg_time_dimension: The time field. Defaults to the default agg time dimension for the semantic model. [Optional] - non_additive_dimension: Use these configs when you need non-additive dimensions. [Optional] - label: How the metric appears in project docs and downstream integrations. [Required] + - name: The name of the measure + description: 'same as always' ## Optional + agg: the aggregation type. + expr: the field + agg_params: 'specific aggregation properties such as a percentile' ## Optional + agg_time_dimension: The time field. Defaults to the default agg time dimension for the semantic model. ## Optional + non_additive_dimension: 'Use these configs when you need non-additive dimensions.' ## Optional + label: How the metric appears in project docs and downstream integrations. ## Required ``` ### Name @@ -226,7 +225,7 @@ semantic_models: window_choice: max window_groupings: - user_id ---- + metrics: - name: mrr_end_of_month type: simple From 1f939a8d5145dec7523f092257761dc8d5bc9776 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 24 Jul 2023 11:31:02 +0100 Subject: [PATCH 251/703] update gsg --- website/docs/docs/build/sl-getting-started.md | 50 ++++++++----------- .../use-dbt-semantic-layer/quickstart-sl.md | 21 +++++--- website/snippets/_new-sl-setup.md | 4 +- 3 files changed, 36 insertions(+), 39 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 71145beed8f..de5c77fb5f8 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -14,12 +14,10 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. - [Create a semantic model](#create-a-semantic-model) with MetricFlow - [Define metrics](#define-metrics) with MetricFlow -- [Test metrics](#test-metrics) with the MetricFlow +- [Test and query metrics](#test-and-query-metrics) with MetricFlow - [Run a production job](#run-a-production-job) in dbt Cloud - [Set up dbt Semantic Layer](#set-up-dbt-semantic-layer) in dbt Cloud - [Connect and query API](#connect-and-query-api) with dbt Cloud -- [Test and query with the CLI](#test-and-query-with-the-cli) - * For Developer plans or dbt Core users only ## Prerequisites @@ -41,12 +39,7 @@ New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/ ## Create a semantic model -Before you begin, we recommend you learn about more about [MetricFlow](/docs/build/about-metricflow) and its key concepts. There are two main objects: - -- [Semantic models](/docs/build/semantic-models) — Nodes in your semantic graph, connected via entities as edges. MetricFlow takes semantic models defined in YAML configuration files as inputs and creates a semantic graph that you can use to query metrics. -- [Metrics](/docs/build/metrics-overview) — Can be defined in the same YAML files as your semantic models, or split into separate YAML files into any other subdirectories (provided that these subdirectories are also within the same dbt project repo). - -This step will guide you through setting up your semantic models, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures), in your editor of choice. +This step will guide you through setting up your semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). 1. Name your semantic model, fill in appropriate metadata, and map it to a model in your dbt project. @@ -117,20 +110,32 @@ metrics: To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. -## Test metrics +## Test and query metrics :::note -For public beta, you can't yet test metrics using the dbt Cloud IDE (support coming soon). To test metrics, you must install the [MetricFlow CLI](/docs/build/metricflow-cli). - * dbt Core or Developer plan users can skip to [Test and query with the CLI](#test-and-query-with-the-cli) for detailed steps. +For public beta, testing and querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). However, install the [MetricFlow CLI](/docs/build/metricflow-cli) to test and query metrics locally. + * dbt Core or Developer plan users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. ::: -1. To test your metrics, make sure you have the MetricFlow CLI installed and up to date. +Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for more detailed MetricFlow commands. + +**Test using the CLI:** + +1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. 3. Run `mf validate-configs` to validate the changes before committing them +**Query using the CLI:** + +1. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. +2. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. +3. Commit and merge the code changes that contain the metric definitions. + ## Run a production job -Once you’ve defined metrics in your dbt project, you can perform a job run in your deployment environment to materialize your metrics. The deployment environment is only supported for the dbt Semantic Layer at this moment. +Before you begin, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. + +Once you’ve defined metrics in your dbt project, you can perform a job run in your dbt Cloud deployment environment to materialize your metrics. The deployment environment is only supported for the dbt Semantic Layer at this moment. 1. Go to **Deploy** in the navigation header 2. Select **Jobs** to re-run the job with the most recent code in the deployment environment. @@ -146,7 +151,7 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; ## Connect and query API -Before you begin, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. +You must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. You can query your metrics in a JDBC-enabled tool or use existing first-class integrations with the dbt Semantic Layer. To connect and query your metrics using the dbt Semantic Layer and its API: @@ -155,21 +160,6 @@ To connect and query your metrics using the dbt Semantic Layer and its API: Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. -## Test and query with the CLI - -Before you begin, dbt Core or Developer plan users must first install the [MetricFlow CLI](/docs/build/metricflow-cli). - -**Test using the CLI:** - -1. Make sure you have the MetricFlow CLI installed and up to date. -2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. -3. Run `mf validate-configs` to validate the changes before committing them - -**Query using the CLI:** - -1. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. -2. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. -3. Commit and merge the code changes that contain the metric definitions. ## Related docs diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index ef598b3da96..d780cbb44fe 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -37,14 +37,21 @@ import SetUp from '/snippets/_v2-sl-prerequisites.md'; New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template) to help you get started! ::: -## Create a semantic model +## Install MetricFlow + +Before you begin, install the [MetricFlow CLI](/docs/build/metricflow-cli) as an extension of a dbt adapter from PyPI. The MetricFlow CLI is compatible with Python versions 3.8, 3.9, 3.10 and 3.11 -Before you begin, we recommend you learn about more about [MetricFlow](/docs/build/about-metricflow) and its key concepts. There are two main objects: +Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platforms): -- [Semantic models](/docs/build/semantic-models) — Nodes in your semantic graph, connected via entities as edges. MetricFlow takes semantic models defined in YAML configuration files as inputs and creates a semantic graph that you can use to query metrics. -- [Metrics](/docs/build/metrics-overview) — Can be defined in the same YAML files as your semantic models, or split into separate YAML files into any other subdirectories (provided that these subdirectories are also within the same dbt project repo). +- Create or activate your virtual environment. `python -m venv venv` +- `pip install "dbt-metricflow[your_adapter_name]"` + * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. + +Currently, the supported adapters are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). + +## Create a semantic model -This step will guide you through setting up your semantic models, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). +This step will guide you through setting up your semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). 1. Name your semantic model, fill in appropriate metadata, and map it to a model in your dbt project. @@ -117,10 +124,10 @@ metrics: ## Test metrics -The following steps explain how to test and manually query your metrics. +The following steps explain how to test and manually query your metrics. Currently, you can only manually test your metrics using the CLI (dbt Cloud IDE support coming soon) 1. Make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. -2. Run `mf validate-configs` to validate the changes before committing them. +2. In the CLI, run `mf validate-configs` to validate the changes before committing them. 3. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. 4. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. 5. Commit and merge the code changes that contain the metric definitions. diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index f4b7f7763a3..71488507fa1 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -4,7 +4,7 @@ You can set up the dbt Semantic Layer in dbt Cloud at the environment and projec If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. ::: -1. Create new [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) or use an existing environment on dbt 1.6 or higher. +1. in dbt Cloud, create a new [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) or use an existing environment on dbt 1.6 or higher. * Note — Deployment environment is currently supported (_development experience coming soon_) 2. Navigate to **Account Settings** and select the specific project you want to enable the Semantic Layer for. @@ -18,7 +18,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 5. Select the deployment environment you want for the Semantic Layer and click **Save**. - + 6. You should see connection information that allows you to connect to downstream tools. * If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). From dbeeb7cfd7371d4e2123e5758e094d874d121003 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 24 Jul 2023 12:44:07 +0100 Subject: [PATCH 252/703] Update website/docs/terms/data-lineage.md --- website/docs/terms/data-lineage.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/terms/data-lineage.md b/website/docs/terms/data-lineage.md index 22dc03d4d61..bb3751df3da 100644 --- a/website/docs/terms/data-lineage.md +++ b/website/docs/terms/data-lineage.md @@ -79,7 +79,7 @@ DAGs shouldn’t be dependent on manual updates. Instead, your DAG should be aut ### Third-party tooling -Data teams may also choose to use third-party tools  with  lineage capabilities such as [Atlan](https://ask.atlan.com/hc/en-us/articles/4433673207313-How-to-set-up-dbt-Cloud), Alation, [Collibra](https://marketplace.collibra.com/listings/dbt-lineage-to-collibra-integration/), [Datafold](https://www.datafold.com/column-level-lineage), Metaphor, [Monte Carlo](https://docs.getmontecarlo.com/docs/dbt-cloud), [Select Star](https://docs.selectstar.com/integrations/dbt/dbt-cloud), or [Stemma](https://docs.stemma.ai/docs/stemma/getting-started/what-we-need-from-you/dbt-integration/). These tools often integrate directly with your data pipelines and dbt workflows and offer zoomed-in data lineage capabilities such as column-level or business logic-level lineage. +Data teams may also choose to use third-party tools with lineage capabilities such as [Atlan](https://ask.atlan.com/hc/en-us/articles/4433673207313-How-to-set-up-dbt-Cloud), Alation, [Collibra](https://marketplace.collibra.com/listings/dbt-lineage-to-collibra-integration/), [Datafold](https://www.datafold.com/column-level-lineage), Metaphor, [Monte Carlo](https://docs.getmontecarlo.com/docs/dbt-cloud), [Select Star](https://docs.selectstar.com/integrations/dbt/dbt-cloud), or [Stemma](https://docs.stemma.ai/docs/stemma/getting-started/what-we-need-from-you/dbt-integration/). These tools often integrate directly with your data pipelines and dbt workflows and offer zoomed-in data lineage capabilities such as column-level or business logic-level lineage. ## Data lineage challenges From 5be04ac6b4485dc161ac0986b5e227c955c85416 Mon Sep 17 00:00:00 2001 From: David Uforo <79027366+uforodavid@users.noreply.github.com> Date: Mon, 24 Jul 2023 13:53:03 +0100 Subject: [PATCH 253/703] Update 2-lint-on-push.md Line 41 has a wrong spelling 'coved' instead of 'covered' and this commit includes the correction. --- .../orchestration/custom-cicd-pipelines/2-lint-on-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/orchestration/custom-cicd-pipelines/2-lint-on-push.md b/website/docs/guides/orchestration/custom-cicd-pipelines/2-lint-on-push.md index dea3b5b5de3..465994e4442 100644 --- a/website/docs/guides/orchestration/custom-cicd-pipelines/2-lint-on-push.md +++ b/website/docs/guides/orchestration/custom-cicd-pipelines/2-lint-on-push.md @@ -38,7 +38,7 @@ Below I touch on the important pieces for running a dbt Cloud job, but if you wa - `on:` - this is used to filter when the pipeline is run. In this example we’re running it on every push except for pushes to branches named `main`. For more filters, checkout [GitHub’s docs](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows). - `runs-on: ubuntu-latest` - this defines the operating system we’re using to run the job -- `uses:` - remember the virtual servers we coved in the background section? They’re just empty operating systems, so there are two pieces of setup that are needed in order to access the code in your repo, and setup Python correctly on the virtual server. These two actions are called from other repos in GitHub to provide those services. For more information on them, checkout their repos: [actions/checkout](https://github.com/actions/checkout#checkout-v3) and [actions/setup-python](https://github.com/actions/setup-python#setup-python-v3). +- `uses:` - remember the virtual servers we covered in the background section? They’re just empty operating systems, so there are two pieces of setup that are needed in order to access the code in your repo, and setup Python correctly on the virtual server. These two actions are called from other repos in GitHub to provide those services. For more information on them, checkout their repos: [actions/checkout](https://github.com/actions/checkout#checkout-v3) and [actions/setup-python](https://github.com/actions/setup-python#setup-python-v3). - `run:` - this is how we’re telling the GitHub runner to execute the Python script we defined above. ```yaml From a17d2ee307b61115612be11d0479379acc8303dc Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 24 Jul 2023 15:34:55 +0100 Subject: [PATCH 254/703] updating commands --- .../dbt-cloud-ide/develop-in-the-cloud.md | 4 +-- website/docs/reference/dbt-commands.md | 25 ++++++++++++++++++- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md index a128cbb9bd1..3c33114ac26 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md @@ -6,9 +6,7 @@ sidebar_label: Develop in the IDE tags: [IDE] --- -The dbt Cloud integrated development environment (IDE) is a single interface for building, testing, running, and version-controlling dbt projects from your browser. With the Cloud IDE, you can compile dbt code into SQL and run it against your database directly. The IDE leverages the open-source [dbt-rpc](/reference/commands/rpc) plugin to recompile only the changes made in your project. - - +The dbt Cloud integrated development environment (IDE) is a single interface for building, testing, running, and version-controlling dbt projects from your browser. With the Cloud IDE, you can compile dbt code into SQL and run it against your database directly. The IDE leverages the dbt-server, making the IDE faster and more reliable. ## Prerequisites To develop in the Cloud IDE, make sure you have the following: diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index 5b37f13a3fb..b0adf00e212 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -12,6 +12,29 @@ For information about selecting models on the command line, consult the docs on ### Available commands +Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [CLI](/docs/core/about-the-cli). Use the `dbt` prefix. For example, to run the `test` command, type `dbt test`. + +- [build](/reference/commands/build): build and test all selected resources (models, seeds, snapshots, tests) +- [clean](/reference/commands/clean): deletes artifacts present in the dbt project +- [clone](/reference/commands/clone): clone selected models from specified state (requires dbt 1.6 or higher) +- [compile](/reference/commands/compile): compiles (but does not run) the models in a project +- [debug](/reference/commands/debug): debugs dbt connections and projects +- [deps](/reference/commands/deps): downloads dependencies for a project +- [docs](/reference/commands/cmd-docs) : generates documentation for a project +- [list](/reference/commands/list): lists resources defined in a dbt project +- [parse](/reference/commands/parse): parses a project and writes detailed timing info +- [retry](/reference/commands/retry): retry the last run `dbt` command from the point of failure (requires dbt 1.6 or higher) +- [run](/reference/commands/run): runs the models in a project +- [run-operation](/reference/commands/run-operation): invoke a macro, including running arbitrary maintenance SQL against the database +- [seed](/reference/commands/seed): loads CSV files into the database +- [show](/reference/commands/show): preview table rows post-transformation +- [snapshot](/reference/commands/snapshot): executes "snapshot" jobs defined in a project +- [source](/reference/commands/source): provides tools for working with source data (including validating that sources are "fresh") +- [test](/reference/commands/test): executes tests defined in a project +- [init](/reference/commands/init): initializes a new dbt project (CLI only) +- [rpc](/reference/commands/rpc): runs an RPC server that clients can submit queries to (CLI only) + + - - - - -This is an example of querying all models that utilize the schema`analytics` from a given job. - -``` -{ - models(jobId: 181329, schema: "analytics") { - name - status - compileCompletedAt - database - dbtVersion - runGeneratedAt - } -} -``` - - - - -``` -{ - "data": { - "models": [ - { - "name": "customers", - "status": "success", - "compileCompletedAt": "2022-12-15T06:37:24.186Z", - "database": "analytics", - "dbtVersion": "1.3.1", - "runGeneratedAt": "2022-12-15T06:37:25.187Z" - }, - { - "name": "stg_customers", - "status": "success", - "compileCompletedAt": "2022-12-15T06:37:22.509Z", - "database": "analytics", - "dbtVersion": "1.3.1", - "runGeneratedAt": "2022-12-15T06:37:25.187Z" - }, - { - "name": "stg_orders", - "status": "success", - "compileCompletedAt": "2022-12-15T06:37:22.509Z", - "database": "analytics", - "dbtVersion": "1.3.1", - "runGeneratedAt": "2022-12-15T06:37:25.187Z" - } - ] - } -} -``` - - - - -This is an example of querying details about a specific model, `model.jaffle_shop.customers`, from a given job. - -``` -{ - model(jobId: 181329, uniqueId: "model.jaffle_shop.customers") { - parentsModels { - runId - uniqueId - executionTime - } - } -} -{ - "data": { - "model": { - "parentsModels": [ - { - "runId": 105297555, - "uniqueId": "model.jaffle_shop.stg_customers", - "executionTime": 1.676571846008301 - }, - { - "runId": 105297555, - "uniqueId": "model.jaffle_shop.stg_orders", - "executionTime": 1.631831407546997 - } - ] - } - } -} -``` - - - - - - -### Query metrics for a project - -Query metrics definitions or details for a project from a given job and refer to the following resources: - -- [Metrics query](/docs/dbt-cloud-apis/discovery-schema-metrics) — Information on how to query the full list of metrics defined in a user’s project with the dbt Cloud Discovery API. -- [dbt Metrics docs](https://docs.getdbt.com/docs/build/metrics#available-properties) — Information on the available metric properties. -- [GraphQL sandbox](https://studio.apollographql.com/sandbox/explorer?endpoint=https%3A%2F%2Fmetadata.cloud.getdbt.com%2Fgraphql) — Access to test the dbt Cloud Discovery API testing environment. - - - - - - -This is an example listing metrics from a given job: - -``` -{ - metrics(jobId: 123) { - name - label - description - model - dependsOn - calculation_method - expression - timestamp - timeGrains - dimensions - window - filters - tags - meta - } -} -``` - - - - -The `metric` query supports all metric properties listed in **Listing metrics**. -The following abbreviated example is querying details about the metric `new_customers` from job `123`: - -This is an example of querying details about a specific metric `new_customers` from a given job `123`. - -``` -{ - metric(jobId: 123) { - label - calculation_method - timestamp - timeGrains - dimensions - } -} -``` - - - - - -``` -{ - "data": { - "metrics": [ - { - "uniqueId": "metric.claim_to_fame.total_claim_charges", - "name": "total_claim_charges", - "tags": [], - "label": "Total Claim Charges", - "calculation_method": "sum", - "expression": "total_charge_amount", - "timestamp": "created_at", - "timeGrains":[ - "day", - "week", - "month" - ], - "meta": {}, - "resourceType": "metric", - "model": { - "name": "fct_billed_patient_claims" - } - }, - { - "uniqueId": "metric.claim_to_fame.total_billed_diagnoses", - "name": "total_billed_diagnoses", - "tags": [], - "label": "Total Billed Diagnoses", - "calculation_method": "count_distinct", - "expression": "diagnosis_id", - "timestamp": "created_at", - "timeGrains":[ - "week", - "month", - "year" - ], - "meta": {}, - "resourceType": "metric", - "model": { - "name": "fct_billed_patient_claims" - }, - } - ] - } -} -``` - - - - - -``` -metrics: - - name: total_claim_charges - label: Total Claim Charges - model: ref('fct_billed_patient_claims') - calculation_method: sum - expression: total_charge_amount - timestamp: created_at - time_grains: [day, week, month, all_time] - - - - name: total_billed_diagnoses - label: Total Billed Diagnoses - model: ref('fct_billed_patient_claims') - calculation_method: count_distinct - expression: diagnosis_id - timestamp: created_at - time_grains: [day, week, month] -``` - - - - - - - - -## Query the dbt Semantic Layer - -This section explains how to connect to or query the dbt Semantic Layer Proxy Server to return model data, metric data, and so on. - -When you configure the dbt Semantic Layer, dbt Cloud provides a Proxy Server endpoint that users can connect to as though it's a Snowflake-hosted endpoint. Once the queries are submitted, dbt Cloud will: - -1. Compile dbt-sql queries into valid Snowflake SQL, -2. Execute the compiled SQL against the Snowflake data platform, -3. Return the results to the client. - -Replace the hostname in your existing data platform connection with the relevant dbt Cloud Proxy Server URL (for example, `abc123.proxy.cloud.getdbt.com`). All queries you submit through the endpoint will be compiled en route to the data platform.* - -*_Note: This approach will change with the new Semantic Layer connection in mid-2023, which will be able to query all data platforms supported in dbt Cloud through dedicated JDBC/ODBC drivers, and eventually an API._ - - - - - - - -Users can compile and execute metric queries using macros defined in the [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics). This package: - -- Generates the SQL required to accurately calculate the metric definition, -- Supplies helper macros for derived calculations (like month over month, year to date, and so on) time series operations - - -``` -select * -from {{ metrics.calculate( - metric_list=[metric('customers'), metric(‘revenue’)], - grain='week', - dimensions=['plan', 'country'], - secondary_calculations=[ - metrics.period_to_date(aggregate="sum", period="year"), - metrics.rolling(aggregate="average", interval=4, alias="avg_past_4wks") - ], - start_date='2020-01-01', - end_date="date_trunc('day', getdate())" -) }} -``` - - - - - -Model queries allow users to query models and use macros from their dbt project. - -``` -select cents_to_dollars('amount_cents') as amount_dollars -from {{ ref('orders') }} -``` - - - -### Entities - -dbt Labs will introduce a new node type, **[entity](https://github.com/dbt-labs/dbt-core/issues/6379)**, when dbt Core version 1.5 launches. It introduces a new and efficient way to define metrics by reusing logic (for example, `time_grains`). - -Entities are semantic objects made up of curated dimensions from models with more metadata defined. Over time, users can standardize metric and entity definitions with packages to speed up development. - -For integrations, entities will provide information like: - -- a way to organize metrics based on the entity they reference, and -- a new consumable and dynamically generated dataset (versus finding a table in the data platform). - -This information will be available alongside the Discovery API, and entities can be directly queried through the dbt Semantic Layer. - - - -:::caution 🚧 - -Entities are a work in progress — expect continuous changes and improvements. To stay up-to-date, refer to the [entity discussions](https://github.com/dbt-labs/dbt-core/issues/6379) page. - -::: - - - - - - - -Define entities in your dbt project. - -``` -entities: ## The top-level path of the new node - - name: [Required] ## The name of the entity - model: [Required] ## The name of the model that the entity is dependent on - description: [Optional] ## The description of the entity - - dimensions: [Optional] ## The list of dimensions & properties associated with the entity. - - include: [Optional] * - - exclude: [Optional] - - name: [Required] ## The name of the dimension - column_name: [Optional] ## The name of the column in the model if not 1:1. Serves as mapping - data_type: [Optional] ## The data type of the dimension - description: [Optional] ## Description of the dimension - default_timestamp: [Optional] ## Setting datetime dimension as default for metrics - time_grains: [Optional] ## Acceptable time grains for the datetime dimension - primary_key: [Optional] ## Whether this dimension is part of the primary key -``` - - - - -Query entities via the Discovery API. - -``` -"entity.project_name.entity_name": { - "unique_id": "entity.project_name.entity_name", - "package_name": "project_name", - "original_file_path": "models/metric_definitions/ratio_metric.yml", - "name": "entity_name", - "model": "ref('model_name')", - "description": "some description", - "dimensions": { - "dimension_name": { - "name": "dimension_name", - "column_name": "column_name", - "default_timestamp": "true", - "time_grains": "[day, week, month, year]" - "primary_key": true, - "data_type": null, - "description": "TBD", - "meta": {}, - } - }, - "resource_type": "entity", - "meta": {}, - "tags": [], - "config": { - "enabled": true, - }, - "depends_on": { - "macros": [], - "nodes": [ - "model.project_name.model_name", - ] - }, - "docs": { - "show": true, - "node_color": null - }, - "refs": [ - [ - "model_name", - ] - ], - "created_at": 1669653016.522599 - }, - ``` - - - - -How to define new [metrics](/docs/build/metrics) in your dbt project. The metric definition and metadata response will change accordingly once entities are introduced, notably with metrics referencing entities instead of models and inheriting entity dimensions. - - ``` - metrics: - ## Always required - - name: [Required] ## The name of the metric - label: [Required] ## The human-readable name of the metric - calculation_method: [Required] ## The calculation/aggregation used for the metric - expression: [Required] ## The SQL expression being aggregated/calculated - entity: [Required] ## The entity being used as the source of the metric - - ## Always optional - description: [Optional] ## Any description about the metric - timestamp: [Optional] ## The name of the timestamp field to use - time_grains: [Optional] ## The list of time grains that are permitted - filters: [Optional] ## The filters of the metric - window: [Optional] ## The ability to make a metric cumulative over a time period - config: [Optional] ## Additional information for configuring the output - - ## Either or dimensions: - include: [Optional] ## The list of dimensions to be included. Either * or list - exclude: [Optional] ## The list of dimensions to be excluded from the inherited list - ``` - - - - - -``` -"metric.project_name.metric_name": { - "fqn": [ - "project_name", - "folder_name", - "metric_name" - ], - "unique_id": "metric.project_name.metric_name", - "package_name": "project_name", - "root_path": "file_path", - "path": "file_path", - "original_file_path": "file_path", - "name": "metric_name", - "description": "description", - "entity": "entity_name", - "label": "Human readable version", - "calculation_method": "the calc method", - "timestamp": "the timestamp field", - "time_grains": [ - "day", - "week" - ], - "expression": "a field name or sql expression", - "dimensions": [ - { - "entity_name": [ - "had_discount", - "order_country" - ] - } - ], - "window": null, - "resource_type": "metric", - "filters": [], - "meta": {}, - "tags": [], - "config": { - "enabled": true - }, - "unrendered_config": {}, - "sources": [], - "depends_on": { - "macros": [], - "nodes": [ - "entity.projet_name.entity_name", - ] - }, - "entities": [ - [ - "entity_name" - ] - ], - "metrics": ["used for derived metrics"], - "created_at": 1669653027.290001 - }, - ``` - - - - -Query an entity using dbt-SQL. Eventually, users will be able to query entities and dynamically generate datasets using a macro (like with metrics), without having to find specific tables or columns. - -``` -select * -from {{ entities.calculate( - entity_list=[...], [Required, one to start] - dimensions: [...], [Optional, default is all] - metrics: [...], [Optional, default is all at finest grain] - filters: ... - )}} - ``` - - - -### dbt Semantic Layer Connector - -In order to support more data platforms and enhance the user experience, users will be able to connect to a [dbt Cloud-supported data platform](/docs/cloud/connect-data-platform/about-connections) with the dbt Semantic Layer. - -Integration partners need to install the [Arrow FlightSQL](https://arrow.apache.org/docs/format/FlightSql.html) JDBC/ODBC driver, which will authenticate with dbt Cloud and the data platform that it queries. - - - - - -### dbt Semantic Layer API - -dbt Cloud will provide a web API that supports: - -- Compiling dbt-SQL queries to return their compiled SQL. -- Executing dbt-SQL queries and returning the queried results from the data platform. - -The API will be a viable integration point with the dbt Semantic Layer. It will be authorized by a [dbt Cloud service token](/docs/dbt-cloud-apis/service-tokens) and eventually support the invocation of dbt commands (e.g., `dbt run`, `dbt test`, etc.) in the future. - - -## Contact us - -### For dbt Semantic Layer support - -For partner and customer support, please email the [Support team](mailto:support@getdbt.com). Please ensure the message includes: - -- "Semantic Layer" -- The name of the partner software -- The dbt Cloud account ID of the customer, if you are a partner making the inquiry - -### For product and partnerships - -If you'd like to become a formal partner, have product feedback/questions, or are interested in integrating, email the [Product and Partnership team](mailto:semantic-layer@dbtlabs.com). - - - - - ## Related docs - [Use the dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) to learn about the product. From 0a9864fab23701e4ef543820371521610dcc60be Mon Sep 17 00:00:00 2001 From: Dave Haworth Date: Mon, 24 Jul 2023 14:55:40 -0500 Subject: [PATCH 256/703] Add Redshift Serverless, remove public preview, add field to Snowflake config --- .../docs/cloud/secure/about-privatelink.md | 3 --- .../docs/cloud/secure/redshift-privatelink.md | 18 +++++++++++++++--- .../cloud/secure/snowflake-privatelink.md | 2 ++ .../img/docs/dbt-cloud/redshiftserverless.png | Bin 0 -> 139544 bytes 4 files changed, 17 insertions(+), 6 deletions(-) create mode 100644 website/static/img/docs/dbt-cloud/redshiftserverless.png diff --git a/website/docs/docs/cloud/secure/about-privatelink.md b/website/docs/docs/cloud/secure/about-privatelink.md index 7bd18f306b6..77ee8a6af7a 100644 --- a/website/docs/docs/cloud/secure/about-privatelink.md +++ b/website/docs/docs/cloud/secure/about-privatelink.md @@ -4,9 +4,6 @@ id: about-privatelink description: "Configuring PrivateLink for AWS" sidebar_label: "About PrivateLink" --- -:::info -This feature is currently in Private Preview, and these instructions are specific to dbt Cloud multi-tenant Enterprise tier environments hosted on AWS. -::: PrivateLink enables a private connection from any dbt Cloud Multi-Tenant environment to your data platform hosted on AWS using [AWS PrivateLink](https://aws.amazon.com/privatelink/) technology. PrivateLink allows dbt Cloud customers to meet security and compliance controls as it allows connectivity between dbt Cloud and your data platform without traversing the public internet. This feature is supported in most regions across NA, Europe, and Asia, but [contact us](https://www.getdbt.com/contact/) if you have questions about availability. diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index b8c357825f8..35cea7af06e 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -11,6 +11,10 @@ AWS provides two different ways to create a PrivateLink VPC endpoint for a Redsh dbt Cloud supports both types of endpoints, but there are a number of [considerations](https://docs.aws.amazon.com/redshift/latest/mgmt/managing-cluster-cross-vpc.html#managing-cluster-cross-vpc-considerations) to take into account when deciding which endpoint type to use. Redshift-managed provides a far simpler setup with no additional cost, which might make it the preferred option for many, but may not be an option in all environments. Based on these criteria, you will need to determine which is the right type for your system. Follow the instructions from the section below that corresponds to your chosen endpoint type. +:::info Redshift Serverless +While Redshift Serverless does support Redshift-managed type VPC endpoints, this functionality is not currently available across AWS accounts. Due to this limitation, an Interface-type VPC endpoint service must be used for Redshift Serverless cluster PrivateLink connectivity from dbt Cloud. +::: + ## Configuring Redshift-managed PrivateLink 1. On the running Redshift cluster, select the **Properties** tab. @@ -51,11 +55,19 @@ Creating an Interface VPC PrivateLink connection requires creating multiple AWS - Target Type: **IP** - Notes: - - Use IP addresses from the Redshift cluster’s **Network Interfaces**, _not_ IPs listed in the **Node IP addresses** section as those can change. + **Notes:** + + _Standard Redshift_ + - Use IP addresses from the Redshift cluster’s **Network Interfaces** whenever possible. While IPs listed in the **Node IP addresses** section will work, they are also more likely to change. - - There is likely only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will be created for that AZ as well. The NI IP from the original AZ should still work, but the new NI IP can also be added to the Target Group if desired. If adding additional IPs, note that the NLB will need to add the corresponding AZ as well. Once created, the NI(s) shouldn't change (NOTE: this is our observation from testing, but is not officially documented by AWS). + - There will likely be only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will be created for that AZ as well. The NI IP from the original AZ will still work, but the new NI IP can also be added to the Target Group if desired. If adding additional IPs, note that the NLB will need to add the corresponding AZ as well. Once created, the NI(s) shouldn't change (NOTE: this is our observation from testing, but is not officially documented by AWS). + + _Redshift Serverless_ + - To find the IP addresses for Redshift Serverless instance locate and copy the endpoint (only the URL listed before the port) in the Workgroup configuration section of the AWS console for the instance. + + + - From a command line run the command `nslookup ` using the endpoint found in the previous step and use the associated IP(s) for the Target Group - Target Group protocol: **TCP** diff --git a/website/docs/docs/cloud/secure/snowflake-privatelink.md b/website/docs/docs/cloud/secure/snowflake-privatelink.md index 16138e7e86d..bd82d38ff12 100644 --- a/website/docs/docs/cloud/secure/snowflake-privatelink.md +++ b/website/docs/docs/cloud/secure/snowflake-privatelink.md @@ -25,8 +25,10 @@ The following steps will walk you through the setup of a Snowflake AWS PrivateLi Subject: New Multi-Tenant PrivateLink Request - Type: Snowflake - SYSTEM$GET_PRIVATELINK_CONFIG output: +- *Use privatelink-account-url or regionless-privatelink-account-url?: - dbt Cloud multi-tenant environment (US, EMEA, AU): ``` +_*By default dbt Cloud will be configured to use `privatelink-account-url` from the provided `SYSTEM$GET_PRIVATELINK_CONFIG` as the PrivateLink endpoint. At the request of the customer, `regionless-privatelink-account-url` can be used instead._ dbt Labs will work on your behalf to complete the PrivateLink setup. Please allow 1-2 business days for this process to complete. Support will contact you when the endpoint is available. diff --git a/website/static/img/docs/dbt-cloud/redshiftserverless.png b/website/static/img/docs/dbt-cloud/redshiftserverless.png new file mode 100644 index 0000000000000000000000000000000000000000..57b1dbb3cf7dc982fa97fca03a6bf7ccce8837a3 GIT binary patch literal 139544 zcmeFZbyQqUwl|C=I5ZI42@>3;p@ASlf(9qJI|LeO+$}+ZI|K;s?hq`v6Wl$xH_qFc zxpVK_dFH(s6-zfHKZqBJHN2^t(69Hy*{qzW9|OD8xu_ zu$-H3@Tsr|BP$6BWmyRcDrF}Jb1PdjIJh@4E??W^5XAt!t5#cYU!(aD&=et2zn5XL zWibx2lyQ`zn~-8lN=8WnHwobgJtHvV3kk`ZQTOxGETFgse8VMWmGq>J3~{;6q5q&u zv=ZGne7p#s+R9|ojQqB`CK~5J6Lkc@7k{0*Iw79{NooIt{w^v=ZScYt z2z=Y;IzsA^chckcg*!iWf6P3uy6+?Ei;|@sI9AW}4mx;uqQWJ|r{hohK%`W;AMUq! zURq|AxeefD7|k`zv}DZ{6yTU(X%sm4P%AhjSPC9?lfZ5`IK=;>R@cf z2C@6}rwJSgA_z;`nK>I#LF{bp!GaKBn!nW$gr)yvv(r%ht%|daFpZXiGL?jblNl8s z8wVQ)jR+bQ6&1+I)Lc+SQtCgN!=8j`ES;S{39_@hxw)~qakDu%S+H{gfk1W+E_N<1 zR#**Iu)Dpp5rowq{QB>m{G%U9Gq8!1)hA~w2YaeN{TdlNxHt>b(EJ(bKmY#zo@NlM z{~F02{2$YTO_2Rh2|Fhn2m62a4QmSelPjof1u?VLmb9{ikq0)02rmae=x_D^Qu1FT z{!>e>|7yv}$IJ20P5-IrUz@6f&7340>|kR$i~QHp{72(|F8q&%Aof2~|0h!Xoz8#D zg%Mf=4aEMRizb5R|2gs$4(=_StfZJ41pYANMY`HA!anTf`URvDB@ga9%s z>rbk9B&c8EP#eVz?=!t)MHHCA$rxiv%d`@ZWc>c;>xUk~`m)`RJKDDh|IdqB!cSbW z|I?24|Ep)X$gy&rWFpTu5)Wf-o#Hga7BZ{Ko{A=-*QJ*_qn@@5}x# zW&i*78JyB1J>8#l@LP@6|9w*^BF&Vq(n2XgpP07UP=hcLTA#ary6mvX{^M)^k8MU( ziudg+UdXXu-cX|46-nKQ%}`<)eCqA-vge`Q&WO&MMVd~7z3c@+S>6Ieo#}m4#>)Q2 z5)}k z(sxTmUs8qcSw~H@EDXJ6m8I-yIZl+#3eoD(ps$@8k;<2c^(csvM2MxvD z`OpkS2OWOsNqp_{tn3cOLEh7icXcOa_CUo`z+JL0OTe91`xT*(hWu^5x6SLFrPEhn z3K6d@oh!Hmx4Yfsc=BpJ{q}3L;HKRN@85M>@wRTbdd1NTugNXQF_k+;6V!6KVe500 zwi5@}{yHmak-4v2gv)pb5C0R|^(qY}gNHE6dX4&N5?S+uvc1UVozCV%8}<_pB!gPu z*tcS(t)9UTF|Dr?T|UfVATa5WmR zzaH0ZbJY`cIa*g3_74l>A`1))Y_^oZBX0N|kluc#_48o&-WZzM$^$M=6HW2b=Bj%& zMx+#+{zb)g53A{_-^QQ!`)(SuJIigo?nlPtQP&glj_Wy=o9hRG+{==fcTBr7rXffZ zg<0)hHEo2)a)^4Rus4jwC`(hgn;oWkF?sHD9hnr}dno$z_v)`7Ux388QgOLV6l6^s zbzwrj&%DHK>#f7*uYPkRa`RITMb)^`fj9QrF(bDf-Wo24>*QbcjDZK)e{sw0&~kp) zNx+yah7|MfU5%v8khSR$P_`PK^xt|qhyuh(#k`+G$14LLcuxE8y)Tj6FK^CBp~9Xk zG*h!xn*}S4?5=+m002BlG%pqSeV|-6*JP^MhW-dnTYDdBK0S{u-A)!7Av$1EYo$*p zn`{pz#;6sk3?^4?nnI7;aCxoOtWLFst!9tqQaIL?@Y>PWo2k5NEw6*)-+WlQ1VfMY zQaBuAOLZE=?$0>%MN#qSdF;}7ZI}jP=@UGmCvx`{?bojQeHq1+>M?g$`>8o{No=wm zPlyVImEhe`xntd??<#p{lj|j}xUl6_-K~1UzDPQ1kDa~Sa$0298T!SnX|{h!T`)Rrow4NN_Clj$T*QM( z?cq}0BH37$Xod6Ry5~R|6wz~aEK_)@>Y1ruA+U;&^Mn7`9Ws*$-Y%0Sy``&+-p?30I7<(>v z&@zsqn_I&Rz#L}E4cmNVI&OiiqEKi(1VQ{52Eg>uR!qX)XYcow=Ge1#&noXLlo27-kByHS}NN;@78gG}(znLs^dO48% zrWxbo5p`NRNXppKcPe$8b62O}5nJ0^gRqa%@{wq=74p6)j=u=Vr`Hx-pVh{YP|XmJ zn#P{|^d&!7lekD^(;KeUifdubLUKKS`z}Ft(TH%k=fA%VuSP zpCMlGh9E_?!#!_D`9*ZvJBP;$`ip7OLhs+xJKULQ5`bWqz{ZBVIo6co*}W9J_epEK9QbkBX5GQ1iRL7UMkUreSSCD zo1nNo^*-@Cr#GwHAwSjPjPdnX9FwhuD^f1C-t>ya`st1aPK3!NoeVB*-1k{|1uyia zn^b$a`uK_(G=|^cAZ4l~uHVBkr}1Xr1|g%iy1E`fQK7n5OW}DY^R>7@W5~Skng6Ah zmx_mXy6lsducE!E2eoQ@r8mF4iMQwJWu9}o-NiAnwrJ?t+MUr8>XgA?> zryG_~+GxDqZI_}#=>ClYq1jIP5dACdr)kHC8>11EuAMK{`nz0tvi1kHKfCk9>w_k1 zWzag^97{&geHqLTn{&GM(827N(~i<#w(jN$gF;B_uhTypVAFm1%u0UQqC)Epx)45( zmM%E|ZCd@g^5#hbaG=GO5wB+CS{TAn3tCK70Mf2^&4)76T?!m4%_*8ip4^_q+~GA^nmJf4v4LjE z1`x&MX-~vY7E3az`hE{F^tw4rz%cOCpgR8b%#pICfWP?Eri8beE)}qOl2K+cdm`rk zyote}xHwdU+<$p_Qv zn}K}$#Y6=Ch1!gMvdN(=bYY*^bH} zr&*e4Cj=#Os4{Jd9KJ;a2NgB zLyciLi$R+P$xMmefjd>)lm&u_j=6(azF10dMojI*U@AJB4#;| zz+JFu^|0)U(e#p&$qTZGFj;HGy|p;H>S@#A^C;D6bCK^7%PH{^Tq--YQ|+3O9%%QuH13bDS)vqJVIzV=!jmqu_9(6eG6!A?qbQxw&rOOjgcRnX@#^{pQ?W}Bke zGF{0r+p1Ttvc&wKQMEPb!3g*axPwiLO0-soZ&dUN%PC8~B37A*m-hc$L<;E3RjZI+ z9pg2h?qMa2L35yl((U% zs0ZqUOcjSssrRP)5rJMC0+1>8#BCB*-QMGpGZQ3GA3INgNE2MJ-rR$S=!k0vCD4j* zrV0&dw6ni#M$M=nWHvs@_!P$LA6qG6LEwNN`?RHXqb_1H2|*4en#w_^>%(3XY%NiY z!Dx!fqCKyO2*Rr1Y*{(d#K#&`n7($VDhbmHt7+ZSY8tNz83-+8mlNl#bRXS&L`{?37<;TA>8@Ebq6*AN+~S45XQl~!qG zX({)$sS4J7_GE$+LpcONlWq5P=UD1}3)TleMgJPgQj4-$`4-AVmK|B*RHEc28feWa zRPq_8Q3J(n_G5=oU{yBk1ay8Swmo_Dec-06+EvjCswPg$WVd11MR}ml`p$^6~&$Nj5LH+~PSz0{CtJajOJ1NN`wC2g9iv zbJ0a~@rLG-W&J&m(jbiM1%Z{8ePmVkK!*LCmjje7BTbGORF!L8}~L- zc_grCY>_`(F-rt$bvMJz8RU&PmtIN429Crsww?(Q^<#T6)RkH?s( z6hm-;UWeaxI~-MwC8O=dsh%DVlwa3xxZxe%6irp{uezudnDgFSvFWN&s~A*T+_ktw zdGu51TK9zE9J-W7-ruzx^`GI*lrO2Ap@!(1T@bP+xTMvmdZ$y;oJ^;Hw+h%+2h(rA znC@midN>60W6K+n_1D#bXZ77*;OkQCG7Il zLD6o@`qjR%B-KEq#+Ow4H+)5wnt*2(xG6WoBFCX)wZRaW{*f#v; zHIEkGU+ztq{v6gu@E@F5b3_W%;&JY$s_{PGVgzRlM|G3l73&lvnvSIYg6!zFJN0rb zG`pl>Pau!5%%BsnRc8^-3RQVLewRzrpm`T%N6rneFC?97;Ci^ zC#(W``@_IvuI2 z86#upBcSxw=gNJk`HF!Jzvb46AR3hJad!#SPo(bT7ssHs)zZ5nO z6dPn*IgW)*qDk=8F+fxIYEY|CUo`80#^ns-OkNWpxb`as=!oIp_nA2`2?vz&)$>IF zAqcDax66I0pB)H&8t+HNZMG6b>c`Yi+|RN58+<|Oy!)6)N^el`w5Ct;#Bm53W*JF! zrCAEQvGx%jKX>yZiDL~nb?7lg0T(3kgDaDtlRQ%15(O0CocB>Z%n|Dmg?2Kdt>`2^ zmQhf0>^dDl3`MGvA6;5BxE`V%%_m&v_E0CQ6u=E2aHS!(63>=iz?-J~R=aWlKlRq3 zisNQ(I;z?BM4F0@cFq&RW9C|_yjALA7#xvjO$Qc9Md=B1UW3vLW5BVr7jjl1Kha@= zN3BmurU1b4Nh2Dtlm@V&+VCpqA_dhL0tgo5MNR9=_;(K`RmM`}f|bL>DpLj9ok*Mj z2q<@Gg-6pJ@POAwF1%w?3!4pkXh4%IArzg}qRKN|E}^@ZW0`)Ze#jUgTSGTBp5Q(} zW9%URy3 zU)j#WnuEdT&--HEeWgpb6^)Uo6E(|{gI2eFENOXf)bc#%VmpSi9FL6$Y;uX zI3Llr-OW>&?muoq5wJMqdVVkbX1=JD&VrYSC=B{ky33}^<-(-N!jLeO#Fx1W3A6mv zkvZ9>>HB((N9`m7;a0R#RNj>2^xv?nG60NS_2Jr4y)qq2RF5s1^)o|h+DZG$Z9Xld zTJ|Yh+?BeZlmwHLnF{IA2kHCvlounrY{^Td>`K+p1M<*^a6NU$vJTU6OYG0-fLv-~_<6Uz+={ z0|~kOoo9ZeG;*!}n04Yugv2aYTfHw)`TNpNx~4__1v82!N0lujz4$&x%CAEG=1ZH$p;lE7t`p#Ck03+8>VC%{OSNj|8AWM=wga9B^Vm)0}zX4w{JWHHJ)U5v+i#2<~U%4%d5ra%re7 zX2~o%)s(#;*wNfa;3jZ)DBcas4Ep$5B&Nc5fRvvshR06Md&ktSdvx?p;SYfhE~3RIRtX zq9wi%11%b?!Rq4502?@SfYX{49DSae*21UBYa}7@59@bb<)RRCeRJv6^!u8@GNqvU zuE)tm)gB3Bk2x#MZcW_^-cfbqalYGp+mBW`#yFr{FXo0juedSG2`}sc!mmC5oYiD3T@OBv@ErKPu!Cc1ZL3y}Dur-r@IMVPwvU>YN4hl=JpNXp9*^n=Du@9%|sT zKt{3nrT~>WBx9M-mZmq!djjp)rBFNy$)2AGFOQ<8f%J)%xp1G;oEW%2zP*3GTD=igG-(4MAO@w3YW6kX8zYe>ulf2y z6h{Q~`%_!7H)T8|luP`9nxV{rKa90+KIx-V_o)s0A@@H$BGY~rVYCVd6&?_kW84E` zLog}*72+h!$A7>}RRSxhxnTAMKcY>Jh(#{uq%UGzuB=H{WnGft zt?Y*%w;wQk5FoKLXk{UvtUW9aHpZ<~r7FnSpSXF|h)bs(7TeHVY-Y+!R)WYJkRRv$ zIS|C)(X$44r>FD_7$&HBYM<}J&PM%b{mr7YI%dX|R|q}U%L3l*`mrs1^alE{-Eegb z#2`k)vy_W^-e!q3Ie0QrUR4s2uUwqW?gpz`D`r8?mD?f=6J^X?(^uBuzkX~pUgNyH z-9ik|1-<5Fmz5#?iGrQ7uz#dxx5buHzCH*z#?(jV(7d>?iNHk9=eQO9Bur4Oi4Bsc zdas>HZDr`UkCVFBcGnD* z9Acn>4DPfi#V8hLjk1Ii&5D7O{Wj>k+`HHl#13EnRID4RzuMS0kOI{EwOb)Y-s1fQ z0ZBEi`qk6N+v{G#%a5!i8ztst&G6RscK2Af#ohe*Y^@eg=^QgpJ$VTn1jw7cR~Rf6 zi+~W88jwlpSMIme15|36`)j8ZgMc1)l@#`)v0NL z*^_X>LcWWfo~{f_M#qV9t2cnHOz%Fb+G0!}FMnh|H0$Ige3(E+^EF4NfQA5X1cq7I zX7pI+qet*9z~Uo$9}(z}l*BI-opb~3w2;rn=mzBUQyI!=$jyw1+2M4~onJEC@%JFN2nEZxJ z(MOc)Dbd_0zv>KAiz57HnlL|ru+fQh=sBpZVbpPV!(+r4SX$jJ~;uY&; zv zb&YyHVDd9J*5&AfD}RC$;fLMdb$e~o^@K~lC%PGUW@0YS1u`-6Q5gbs1;V4m(ImUd z6}!LEUbtI+)!ES;kwdN+b!fii=&pvzBr3`T>^gK{!UZ2>LdMH%AeI<1fqt8Av&->X zeS@5!_i0gdh$5H=f+Xy|arFpOL{iQsgEgbg0G2BIt?6a&gR52Q)f`hmc8OF-OV@gy zFkx^sCkE_!9QWTDK8*PXk-=9;TLiAB*Qf`bj_o{f&vr1ui-_1SA$cylgDt-F{ob71 zETB9xn+XZ+)3%x`44)4s;YUHA zIFXew5(mD-#tGsK%u~!5^a&A_!b+NAi1zT*Uf*-tIrVUQTJx8<=4-cuc^&nzD3_RD z`%qdtZGT${3Xc;9HI*gk&NeuPTsc|b^x@imB}85XxB{#(jj{Ga%p^pJv@VQ`h7lMD zfM?d(_m#a&=SV+ktou`Sm~i!4@26?)4V?O2DK3Ax-4fRjEf+(WfL`1FvZfB(QH3e9 z1V2lM9`NXQ-x(-aMt!n$Av@nkG6!jp24UK0@Z?1-L&V~SMdLq{5TJ)}7|3XyWM_(_ zFuJ}a95PbpX%ZA4er(=|IIG_iTqQ`v>8t!9>^Y{c3QY`&sv#IdY~G6$dEgEs6ynvL zb=CXca9$x$FBZlf)ERj5!qGG$q*$U~a4XgyInwt6d^qGNd|l!mxDuU%j8Z#)3^pM>OqExJ1A$qrD8A= zd2FQ3&!fNSa_d%Z^T^NiTF3={MZM{w389)&?aN%$E>jk(e^bGSkXGKxR;H~VYw#f; znMC!0lsVgLZI6$98SSrCd7=lG+B6m3@G*mu)Msz;Hg+hPobcsIHA$Y`e=OlyO_LU@ z<==359RaO)uf7f>P3vFK-I@W$NeXXJ@*90QewL?BAz#bdFW!`ry{l0h?`@kkIg?G& z^C<&*o-X?%<4YQC{cyrywB)T8f8}~}Us;5GLZ|!8zixDOw90Tk`(v@Nv*(fC?Ze~Q zy=m&sP8CaF!R$0k8@8h;jr6o@!IGke-T`-20g>zb;D#ZlfXAxNAqiraHM3w(->V6o zkk#-55s8@>&{ZLu(x@z$v3qxt<3}a(e$i5yh3M_OHV3lq_}=qj(ZE#}8-Dv3R8?~U ztX^9}6?W(3D?{bZ2lo-5#9`tQ35hq-6sfYR&xtrD^zVH~s_+0`h&Th>l@Xthb=V>2 zJ>huLIq&M+0a%p0`XPmy6f6>VwL9SPN>S6{AVx0xbLZdlZeMXcaTe_MC^t?2`rMRk%<0TLK>KKeYmR2Bs`&;+B;Hw1dTRy>@WtQ&$(KK5l{a|R2ZhP_YXD|=G%^eECPsJC6rm(4Cv;2)_lz+N(La5?t#68xEH&|;q9rCawo zgge~&XLsYFK9V<{V<|~uvWfdakjq$l3P}LEQn1dKdIAR8Z_>xaES0louQW?dZfeiB zwboyinXH4_q`x{pwlwwSz3pH%hv%*EP}4mfeuf`|*DCOh(jFP!O@KGc3)#s9mS>`A z=}O@`6P=IOvc)Xeewms&t`~n^Ei35wP@{V5%q7=7aHZunNXtyA!k^}q`(;9FI>cy2 zRCDaRPStmZNERoFtmZx%Ui}2MxvFzS>azz^1t$komNzFluWN7wA4m&I$mn;r6de@Q zox61E$!*PzM8@QOL_!^%K)J%5IT(KP&uPUJ@xjJ807-A*I z)aP79rmq9(1O!xsh0qFlUWC5|1r#7+xSMkj29-If+cPzt5yZpxd;x35JUz-r%PY|k z)XrSf5Hiuq_e>&@ zzYa{im2mg~7moEh*ak9fj`i+q6pyRY<-WOZBZPBVsA5?@bRt6)Dx$fG#Rl{!Momr~ zD7$D|5&McYsU$lQQk76vS4}c+{i+N5u+DYF)Vk4U5i8K$Y_l76_2OcgGCT3m#R)LH z3=l^o6{SZr;^wB)GytgUCHx2j-Za3wgQqc3LZc}7ufCojcT^Z3Bu81M&`o~-6&fs3uF^TpsFPC&DU`?1_Be<3 zV=B7$2?=-%wn}~aEyg-1Es(REEq3Le>HF^seM~5kT#LSnsWf`cuKbI+&qUOxOt(4O za@x(dO^h|?#{xTFv}-;-BSTk&i?r`mRr`MFJbJj8&5f^`K0O3a-VM2y7bjOgdb$;@ z#q~gjOvi5h8JRWfBjmIAdTl91eZ=1g9S>3%upXyb5KCs6Q&^Qj0J5jzNnxou2m=xY843^tN5C3li$Guf^HE>f9r#TK0P zoO(R+yq3M=DWa`rLkZ>$>>K3Odn0A+)IqSU>nQdV{-rrAl|@mlMLM*^LrguSie|#A zv=E0@ETUhe+53Bw`6)XbK~@GPbwc?bXsQ@)>ll=A?^G9k5fEx3z_jau&4V=a%TtN2 zEkqq$2RT`NNWZ^upfqWIT1y$=H4XlGUV?c}%4qCB-CSyuPGiqQ36@B%*dwVP29AAp z*!Ia-6x?YHi|pNTSZu&@7T_%zhO*-CQ+Wxl zlynYspFPa|d`#Zm9f<`xIy-Fa)!oCO^DI>}O&KNLVNrlt-AB8(-a+9#Z6~uXmF?)A zw@@~Lljqre$G~x8P9EnJX3v|w7?8(z=!YDnJN`*;-lyZX`@6J*7#uZYPmkM1!Du0~ zQ(SSPm1It1h|TrQ8D5jiZd3~T`IgpZ@1ytCzDsyTra*tvrtKOjvpI&R_wMGu-$*_c zL9LwvJELh14tn{{R`>OFABv3KZB)q)7SM(H0n$qe@5Yr`Mqg%U%l}r%Cqlr|FZ;M4 ziSkOY59ns^un)MtXsw zjMnd<4X9!rSbNMzi{8I;nIopqpdm+$arEyea`@me5m1wFfYPR2Q=gCb;)?HSrG;X8(78*?kKLZLGGDi$PDH4Ja+p9jPbmpVc1`^y zHffjuisMca#4wUDQ{uEAOt*pTJhL&BK(vmMcj-xW=#m}})uZov+*fzQ|3_)5! z=V`grhlw_OofQ`3y!r+%7mH5{4f{sA$6*4Np?B?%c0U}0x-U)ywN_tr+=&@D7%Iba= z5QwS*&PWsg8*}v$0EI6)y@8v2QM*FFjlRKQm2bU?Dy%hpJ$xAE%Nnrrj^(Ti=?kM= zWsVyNDschcw0C{C(r=~_#D*`kcTfk(H%w_4Zz?)>F&(qahuNKbkVAJDd*f6xj* znJ^!9a(P}+cO_5{Q}*~RxW~PRG7(RAv)lyv1oe{UHN{>#GhdG)2KC7)jhxkJgK?>+ z$&otQhQ)Z$_1x`<-hK)U?F1uSlh`5|_kCu}^8P6IKH<&&E)Wv=*n_u&{qj=8iSSi0 znOk_3$p5X!Mk+X*g4t)EufxRLjRJ!?ZYe*)RSWW9j?yPIVC&D5b9JwK6ZAdrtz#L+ ztwy!T@44Fla2(F7$j`t`nU=#0wHm26QS+M@CloH&lcz zCdl#4M$jm8*Z~1RiAjHR+}&HkdK$hhdWjqx{7*x0KWDNwU2O4JJU#ki)`4|8>;t_i z$`)%e>n_%Q{9nk~3XA^O%s__1R=bPHzd$K7sEQce{GY4$*F<*spY_Zy>8<*+on z4SNUGot~E5Wz%V^)SkaD2ys`7KBwDu4SS!8Q7|g6b-S7ClA-*MR7DDbG58Y6YhL&e4fJ10(Sb1C4F$zN5E*;Gz!&E33dJ7E5OSlF2)T?E_H_LN0vAnt zhOYVs)RXetC7MV_57ZsZZg&NL2{_ebRL%d2eX$!iwm%y;tj(3?bG+2_n%jJ|8mfIV zB}jjm-1ft0GkqsfyV^O0F`SUS{CD4aCGg}kKJzwA8Wuc$jVq+VGLXnx0t1!nTF;cS zt#{v7bZ?SIpQPao z`@!NF>$S(^a>VzIpNz?&KBq?~?gnO__nYe|f7lR}3@VFmt(KtMQ>RWAfWq}~4kk$} zBoe{&0im5nZl4E9Vu3yWKAL+zB!bp_g)BxBsmQNfWsrf~za6hjS@i04pHhUBq<#Z8EuYH| zA8yenYb+d6L^d5LLo4)K=nwd9;}tX7V`j=e-Uu8UbV5a)xewD1Fv$g%bUuuv^3uX^ ztNARI;4T53dfUx1gF{2C{t<5XLA5`K(eDaL8pRqV>(!Z?jgxr_a@2jubOisxxL}V# zW(bRJ$1!d9*zYq^f6*ER+!zt}3h_ddNKm&E%5mO><8Eh=B>4t*HZmyIqta!~+(~Zy zjNCMcGZZ?0-*fh8%7-IOwbPm_MZHVj#z95^+p1}Je&ZW&Hs00_Bta3wiGbB)>gnC1q;Mqtv=)2v%uj}l>lS8@&I zt2!gC-d#5RxQ?;(vc@3ywS>Uik9?3*K#{?-szEPRN#;dCO;Y5Aqm2QjVWp1Y&gELC zgaeIY021nVZaOOB_C&KYs?wsL zGv4hO1)jG+kL4;1d=l^qM)%x>d(){X#m1d)jtw5ar7(C>!&rm~65y%SuBGCzhE2UX z2;<4_8|nvh{I1R16ZXd!nQY~yPQ7RTb7a=VcW!#WB(;VMa9hYHc-@{aEY@4D z$cq%;h0llbe;6Vdq5Y5(biElx3S+4W?2EOD5yafd#$nPIyX^67dM%43?&)U$6t&~I zEId1XNfa}4_fA7BK((&6;cl(jfdQy?>yh=m23KR7C`$)hs_f3nVZhy zym0tEk=rm|u3i#yc>?{?Mrr@oZ~N<8OZrbIPu}y*-bvnQ2mE$1gZP6B(8q7;`yZO>8R8jSEd0Ef-mg+Ac@@*#>*jcNKxcM_UH3j1(ZBDnlK%6koq`X z#O321Hj$nU+Avc+j?|J}^Q*2SCa=tU8c8h(R)gM6l z?Zy{+^Fos(T2(Y$ zknsu)%^f_TOR?D zB)>5dZ*siIFV(7>3H^##k%k&q@H;S1lU6oXQl;!YooptkD1wZ8qPBO#rQ|w;7UsV= z?`|-#Qd~gX$i^jLx)ggq2aLSrgkkoab|Q9)BVWln?GCaXE!J|-0HU5N+~J}Ci*M; zc>Nwl8Y|AKNrZi3-yYt6x2C&oeE$xNF?$95u*ti73IvnOCA?uO)8UB;OSOUQ4+DQ* z6u8HQRGZ9FfRBCJo*4o|BI84`DP?o-T)vy0(d1`k-C>L)$5zO-E&S?DSmSqCS4rV^ z$OgfV6d0u6bU~o~2<8f-SIA(5;o~`03>tkqEOiYyGT+H*_SbeibN=FYST^d3FHRVe z`!$Gf+J9nVnk9nq__hy`S>;s1>e=jq3a2LhT{^{bM^cEv4aSLs;zLyHZ5Hc2Iq{p& zzv;%u00Ect__n(OmxD%f@!^%Z=*S+D`e82V^=$j)1&t~e-Nw20NX)G-+TYzhSpt!x z&7^rAQq1s~;~V(eyahkYp=9qwy_*WTDX%N#&_)kJDDzHHJRd zOE3IqN6+vIkSKtOokNJ(rG^$f?@_N$ma480*VjrMS_Z2&8Md1|!a*Jna}ao!!zG2O z(773$QOh~@TCrsQ2>2@i+TmD-d9nz#fI`Z30~&~s*5lGLe^g)ZtJ`e5{p!NS`s^pR z)DZ4IK^Mz|4Xr)qg|Yw=7LyQXR~+Pf*eM=s{0_}{itQ5QdA)Sn#|t@fS5Pe33wb=? zw@+<8UD=;&YH7L#YQj`9ZgGR#zD@sK52gEHH+MT_6Jw>))0kE z$Y*JVCAV3+Jv?LFiv<<}%B9a=aYY#we;4$AFrM-1ccL6y3#)qZcPdJ3@p5tzCrMv2 z_qjId>%)2G2A)1F3<|M}3vQl_>Kfs5Fz)7@Gy2+l-qi!GPg zxj}$3xLteNa>8_Oyi){Z;#K01fb6Px#>-ZmYoS`9?`=B%ZFQ?=Y+rU{KT9TmSS0JT za`g8xgU`i7!E#^JB6J)!@oZmap-a)rQDLvDIpN@o}$zH4)LrTROiR>cJ@&s)9_LAvw^kZTD zXK@7z3A(^)*;W1JtLM7zfjEX^(exA%J(42Lf)IJ=NEYgN_JGPTtR#tQ2?1=vFUvA%U#L@8kElyq{NF}`A=4E%L z38xgzv`^v=7-&ZfjTo=?%u+CXpUDzFFl*wl*TktK>}aUXWf5=S;i~G889G_3jy#rI zA1%mRBHQgzr|=ALu>R#>9V8VN+$eg7O<|9e5ldo}KQ(Jd*Sf-9$nQ1I9!u}SR71e) zwvL;^VU=2{PF=7dozQx9G8$z-6Xnq4y!2aC;6SAxRk8W-kEUIQ^XU>vHksqYx1avL zRG!c$ZDGsA#$Oalf>cNgdz_o{EeXsTvT1x}!`IbjLr31f9&4k#NrB!h{>Z`bK#Q&* z)Wf4yXGG(vp9(&rzu+8bb^#VX8Bm2?9@{wwt_Nrgmrv`+BdMrJRV1Ng*$9FF2`oVDg6D0&%Mjq>5Wf)kx)m7oq)Mw~ zu3u%`%cGBnlC9Bb=;JvRL6V6XfQ>{b&3t2|kH>Yeww^orwp*RIR8yL8)o#6=?BInd zsqsiY>*D45#}n+Sk2Fee?@%yZjQ0^cD`86aJ<;)0!I(U8Pof_Q$k6cgr*#E|hDJx9 zlKZ>L&NG-5KbgaNE@XSc8-#>`O@YGN;<`BV_LEW*SI}u-0*i)LjukCY7{_QLixsYR zhvOGA0WV3KcM+Cdt)2Hf*_nvYJQoM4Fu+QXcg=$ItmANIgG{+@6H~OX#GbIn<(%N* zbpdQm7c<&|U%ql$L2%BDg>l;()ShtCKA%|WXv+Bp#Af*I=S2rWPdxrLGu2v49QUWg zl(XtH=34E@)L%#9qpj}f5nnH0vQ|omVGJ?C9aCARP~y8NviSv`ECb)=&P<`cMflK+ z(s^4)3-ZqhZNw6B+eY#}DPz8$AB$Pf^TD5sMd7Gs)XLR9Jl)x(vS?YFgw}L$&2hKT{KK02PxjbV)Y3b*3}D!}I%b-;RYjPx znr68^9!sL=uPZbyP$(~sXD^&R=;H9T6h=iD1xj?tspgn&7)E(>Fk%05vvVvAh?wl! zzlwmfSHiB-SbS_jEbizHb@9BtyQho{MP<@4yYVu>$eAw}zK;+HzgGx9)@`_U^B12nSU{=({9VCT?t9CU2IwmQkMvHGJD@>i(ElTH1o-eJLrSN z4PP=H?ybfwQ%7m`>Vo%U8*0PLDuB`A%5)-&PLbDGA-|4?m?GKkCu?;ZUXB8YrZ5<0 z{r*k<;~HiNIHC1V2Rik4l-NDX=uS}b9xue?O1FgzbcbT&Y?W1I;=c8LM8=4RX-Z9p zg5J%}^pqnoagmpLSz8QJe?WrxN}sMW1asdLPjK8p%H@klp3>BhVsBk_6?b}Ko)?`D z*Lu4SFDky(eoIw_Df^~tKc3DvpPL5`wZW!al(|P_F%EC!62FnV!Q$IwVG-@LdR>-W z7GvsxTf6%ybRT<85l+bGf<_3<)}L&+iexF=?=}+t1jEi`G_s|K{s#mn$Bjy_IPv*r+p;OO$f6&-|_M9!hDHQ1UDOGQjD${N@wpOe*eh*NIkrb9V z%@Ng}4`E2?b|s9ES0Q$uB)({ra-|Z5P`)56p0t@#a#ou#AEkZya^tl2NQ6C^8*9z&;(D!~s`^o{4+a(~EUE5( z5a{b#r5AyjvL z6DJ?=%-&ga=qn5=1F}Y!{VHtw7ICCwggA~!HG)(^_ZwD3IIYZS87R-<3|&^B_m}Od z*5W4AaOw*M=9S>?Wz+REz_}ME4asleceTDP$HF>>U3=$?|1ITxa-G>_l0AiZ7)U3O zB~Bdkc&c>C85!3Sqwek)#VldTnl|Yjtev z8k@F#-HVQQ8f_jL?hRG@%+GP0)h~=!=et9c*i5(DTl7jzF|Fx(_t)`Eo=kMA zCuohJkpxL4(!dUT4TPNKI1WtPUHpV6-9Q^dl5bKTC3-SngzU);SX(jQ#eh+z_^$)o z#}?Z8{-V`xINg5LbHxQikdT-R3^9Vx@QweuU6w{aJHea0{W3 zp%hRzImluvu!xzEhH_gl{SzF5t{lcZ6dQ#1RHHqLffZZy{kZ>wv<3*%L!pTlKMoil(nKg z4w~v?T=TWF>d&oZx7awIfW>+Nhg_0GTjWPV&N$aHj$j7C@{g0QIzs@rJ8K< zm75d^`!`27#lNNq5dja2hz|-`1-nC3i7a>Y?tyeBV%W@v6_|oBI6N+a%0=3e&r0#* zt?oC2LZ z#5jpTzknu-UDKw#_K zug~M21-@edI=zfQxVwg!tX6Kx&rKo*V=_u8>7CP|>lT-c|A!zE(SeJU!0OmCH2WQH z3w76n0Dq~DN$4HMP31bFwEc$WH2@b#0!8Bp9m-U9UnrgdAO0H9C}s{xytO9ytmX1m z9pd$Y?1Oy`$Px8?$QIAhOck}IZ2wIWl0FKB3$rzzHKlvFGl^Kpha*k)=(^Ij2>V_7 zB9l=v(mus*K1m@CxbSV>V=1c?ETT( z0J5$eD-Cm&9evSgB$^zslkkPnuvWux58}5WP5pOtCV|fLMH-;^k+o~QQo&AIo8;$- zyDVGJA6tckn&4YWh)&VRO^Z4mT?5sLeO7ICeb z%2jKQLkwO7Q+CxfGChX=TB;AP`LfU#D1v1F_K~Y!MMcSf%h`H}XrAS^B&}l##_4pO z_@b&$DO-${bPLi+4pF(L%dxsFb*6mNIQ%tg=t2hxZr2c|=qLP1DN1a{ZHN%Mq!&!FYvZxmPyLKDNNL?K)+ETv(eP-ksSc_HAlQbu-)uC!-Osa0l?~Gsfmhu z^XKZ}#QIMqpDbl@XQ~nI?qDaz>AT%3wjDRMcwxByk#g^5y*k;Q{NxDjD7%Pn9~;o0 zdflnPt{#gX2=fGuSg+^OAR9}srHJE7fdM!A11jf4I=(!qM;3~I_(Ans3bk5!^2P2n zR-g~Mozu|*rF2~Rxk|t5l6_6t8x(t5z@tpt9gY(N-Rmv;>rE$ao3EEg{2c_d!(1j1 zju%JcnW<>>sxpJI<%Z}>{1eypg6&e_tDakHGv>dx=OvQJemESi_PSixSRK`y+hBwW z!iD3&;Q!A0in$Ba)R~m_PUHB!`2c}n;^U*eo}MUWNUKvRPLxD?P6bVt@CS}!ng)Ju z=VL>;&p$ZleHx-zr7?csQ`bFR`Xnkry_a_0xinp9Fs*JS1c#y|QSLUMa7pG3C*lRG zd|JImrYXr3Byj*cNUNBVtyle6E(iEkgMlsZBx7l<_L! zQrm7&xio?|)1fS4wA`5IzdK<5VS4n8QlMT|v;O_`OCS%*vXgjsl3+UdmnYht6UMvjw76qKk{ByQ&QQ{v*>O>JW4=kZ#^s^A?QR(=%Y*E zMl3< zICox6R0jLbx#{UNzi4NPhY{IkK^-!q(2b6g{1-;ze@YFnX z)zR5aajEI^=$Z@SM)#gZH$Uzo@4G4#T9{;V?6Uy4ziRC!2T=oX82L)u!{X`+;4oka zWbjNDpY&X_HX^y7(EH=(R>Nz5W(Ma8i-$}=tp%fqf)y^JixkV99PP1$AeR@cmK%To zXR9X~5}vUXvpcxeTMWEfrtURO7wc>Mk!9l1S8i^NW3;vx!iFYE;?x~{yy4)b#-dYtPcWfckQquLhAi&FgV-dXP{K^w+5_;D zY4xCy7S}tAKa5 zx5jG7kn*9;ReW!}lqO8$4aed{KgQ4+LDGQTOjJY$V;KD;l~qo=Js{4YWc1&7;nF=^ z6UO-C#FdFmbe->2(*BH@A%MWxP{p8D94G4(!eSQJYBLKZLioJO)3{Xw*4SSeqdpP4 z(e)f@oXnG@ZL~9v=1oFs6VA61n-(PW3LTnp^cA>KI(fGHbt_4wQ(j#N zVx{hPS3Q95#^)(jQag1J;pv6EFCG&E8Lb|GTU#tv2^V=PE65c`7{}{`@@vZrZ z_*X)<;IFTk3MYi#5yJS zZ2-?>GtX&3*D<-9h~%Rm)77#}&5G)9>ZM*^fX)pG!+ zd^P9Njc(M;LO9|h9DtAb8(fqCK*r>%v*vl6x*jNJZn2TWN zRDnb$VsE*v2BmF_T>rv_h%k=h(Xv7iCaqyn2Pt$KFU!9+;2(D-@J*kus4%L;(7xbX z1!2P{|B>^#5KiAyJpf>ilmrDNfBKBIqkF|9IL|Qu^nf@#^vk6U=xTOC?xXQ)X{fT= zG$!3DQJa8<9YFTA2zG1gSl%CFv2o$f|2eG>KRpCyy7cbbOd;Y~{x&d`yTZ;d0c1}h zw=oi}cI!}nDd?yavP$8J!by-tb%rzJ#sFH5p`NDA`70o0^BsvZ*y}wr^lPY#Z@5br zyJNCXisV6qMXZOpDi3lL6UzH2y}zFH-~8O8kuKS6EZ1cW+u1{jXLe^J-TFFHJXbEm z>T;m&&q$K8!Z|_-K@0{a$r7)83LAY-A1Uq2e~VK7<2yc-NF_oD{@)`^POk-SYxtg^ zlWj~*#&jY83N=wdcsLMXkQYXa2}r4;md@)EATX_w6!M;)!ePzpK2KqgZixIqAs>I@ zOxswnUrHbm84t8i8%U9gr=b8WE#nO(qx)?}x|xs1+6@;5y=BW%^xPa~J{c|;O`qz8 zM)*B)HqYSZnP%TB*3VLg>ENDVq5+mL-CB*Ca=TW%p>qh36)-*Hi~GU(!!wbq^4@oF<=B#9`~kwM=jjvCF_kx3d!)bG=8Qas$^^IFz{ zW9ENjI{yI$K&A;)z;n)yuOmZ*<7~Ayx*o=n$wtlN4W_e)m;dZ4sS8U-XC21+mI55g z{YTu+q0aBZpzHX-ZKZrgYQ-e|XPXvC>O^VUEe@h>_jSR;It@KAoD(dWP7iD&+rfS5 z12_EFQSH0KH^f^x((#K9(BU}{cYHR-i!SX%mpDTCnS|;?PHXeRO@gQQH9(Z{m~N1) za_BW{bhrx&_kvKg+3ROi0vcCg-f}zK7I^MLlL5C9JS1m8>KL{>yLS_k9~$L_0(F+kZxidGj64Jf9gAY@&Zn^xoArOdV!u6mOWaNLbvUtIB1=4+qS1b59LXGWyEhoqm%*S- z12AhP2lywZ!*nPVQa1<7_!Z@mIP&PFCyg|!<{N?tpyghwa6@z}{Vv#OKCqG^2B*bO z?f{dc&}~y+8<9mDd-Q2*AN9TD^0td3JwF7YW%yH3z)RhHo*< z%Q84BL6Q)u(4$5gDf5*hI{=CU`D=Z_{^(v-GJ(ivp!3a73eTn*K%hbLTeVV%%ji3H zq5j0_E%aEZ^91slo8V6>e*3G`#%#U8aN#4Vzi2RqO85E*6Y(J&<}iJ^V;Y0nrX62E z?aSvj9wwv3H6~?FHdAH!ugp24ufcgJCs8^*SB*w2eCTO~h*yerf)xodo} zX0jU=QG&Yr0yMx(z;OQT4yaDLyDiZy^nLdLDv6=j8a%EqzVmN%3MUOn|?Do2Wct`CPbb!Dl{znq&ZX+C519_CkO+_*R*t*|GSbY53 zU*z7uQD^ekJQ>Gx!UreYIof>Vg5_oC@Qa7*$C{l_VC^P3(x!@n`PR>(iM%|D`=5Wb2&t8?MNCsE%|qcl zbiT4s*A+e61YaoNE|(QUkHZ^9lDH}oK0UC~5vICgWXOM;@KcK<|8S=oznvM}an1Wc z*6NS*ZSSvN+keC~7(R$jx-H1H@dai;ptM9HK)h=ix$F8jc|#YD&*^8&t`zz|$R7UV z^!tYKTTVI@yTS1{&->^0?!p5!fS-?}?7RLWlKl5SGr#}VuG{5u$odh;jW$)-U%!I?9H|7+Ff!oRy+g-IDf0)x=>IidBu$u4{jjuZL7QZM zl|lUL`!M#uZSotXM`8cFFZ}@^%3JsSPPo+kev4pNw*&WxRs= zAn+RQ(^rW9{1QnM5)1gNO@fYc{_=Nz|4*W2ScVAHV>wR5g#UWRzdzY$oTNiQ?hB`q z1?69TO=G7kP7iJ@@GFSBBe3??W`&#!lAWAd_^cA3GE4Dg5_D{M*BkmLb+^#KY?A zeR)2pyJ3H6&A_Snt6MXF@IqFuY>-br}M7MSfh`(n}C0%e|gf2sS_V8#m|fDU-2NlN+xu zpXw=6q|l~j>W=0^$*E`cFUOw)fr|HdgxP75C56u(;bgT{*vG?lyikW)B-AXNn6!^1 z6i&TG?V|p8IaKdpwhO2^9U=;};=}r^7`@M!@HiYGLE;GhIyn+~cTBcVK#XGk3}?04 z^4`5x7M5q`sj;c-LN^yRnF&O9{fqnST=`mt$XS=yY^&!kom>i6uyN>DK#KtyTlI4( zo-D03TN8axh5C9^9B~5N{<4ldoK*iQ_p`m4WpIEdYf*+&@41^6^=!%9=1dIrW{%q| zjc6PV_C%&E{FE009#_$<&bKg2EfV+HVYfC&&8F+U0JB)?y`vafok?YWokf=0qp>s& z_vZ~vC_5TI4o|noA9_i(jF#!BfB&A%>vkCX;K4%nXFCiSc=>YJNle01D)n79*ql}I zb=6z19;9)htTPM>--t)N`Y~3l#uahloG#c<2q-#e^f1b&c_fYE*yZJbf)tLftZd$W zJwlgNW3nd@gY{z+rEJz=&7B_V??i%LtJ(?`kiDKsBJJK?VD4RtBZ`C*yyt&WhRRow z&uWB!7EV;`RSBwsRIf3FnzfpLx8OvD{v~RaerLN=*m-4^{eUBDQGBM=Uf0EyxSC6h zDk?g$dpbNtz~DV(mNrG5@Aa) zTfg{S)W@P%nc_r!#T3sy1g-JR1ydS|;t}DYgqprW>gct4g*xL6QRSq6tPB5(6YsMs zQP#maardx@iK0RK9A- z7vk)o{X2iDdvq*J-bM+<9AugvC7m1e+TXisRwIq+huIVJxPggf#l zB+3fM#uNx*L4lio*DEeEmhYB-8B)6nJE$E)70XoKs{O#y#;sZo3wcf2d(}rfBzj*9 zDG%7A66BPLqNGHStVED3h)#y{G}>nc9hjniie#~vv9`2+7Eg!gw(>3N&UCY(ytc5yRlL$7%O93l?Hv&ygt5eLc!>C1#eg; zQFl)xH{G<*y*^kj=2@6j;Lz_qKLzYPIb*H__t!AMpdPYwnbYqNkb*X_1Svr(``@?p zJ^#m-Z26;wb-Ehm3&aVl&5hi znPiH@*l0W@rrAt^S!vLWYt@r$a9j}!$b9{IuX3iwtSYPW=|F{=Bo%~{xScO?k_a5( zcZrzu@RBpex`u>NB*!Dk>=h5=sZxC~QD-*3NtE%C z^PUf2sJ&-vHfz1;d+hmkKaCu?{;Vt>9EvL5zFNEcicYW5U&WkV-~gLkI`7@@11_#q zGx&XS{l;~w`@Hulj8kD6)oXO@bjoT?=iURyrW^S%3yl(0dX<*IG=8TpWgwy`=UXq; zf!IfN8gh1b0SxelCW*oIEl}|K5Eso!3y_PR8@iqS4n+FfwKyKF%K;fP89zbFpZ0kA z+8LhC&YJnTsWxt!_yarsUM4WB??hQWtVE%6t=;34KDj|gD>k_ z)?@JwrudHIri&$aSR58Lt06g_<}ZgYmk#xG_-AV6ujlt#WcitlWXhMm{2Hqgm&MLU zu~}_H-K3D6dR@dh)pwW?9DESD*Prlfv}C75Sc#cA^5i`nm{0OU`C$`Y#XvO1P9H&XqDpw9f0CM zDyZn^efbITK{ba6ZfgjnDcx7)dOeH^Tsl#S;}Dt0=im*A{o#Y?c~0IHM3T*FlhTb> zB9m8+Cb&L7#QSQkz~Rfyaid^g_YXq)W6Bxecsh6;WYBZUJv%~)&OaP+KankdQGE*> zSpv7Gi}1&9DG z5S^J~>!)618vPEa>sC#EXRXCiJXgQD_$HRszE8l9qbe-*U^|*g)Go0`lg5upl{#^x zMpaL-XJDR{yGq#Wpt>)cvK67O^5*@j~F=JokI^t zwEBMOd#~2n*UQZS>Oq6Yi9($UYknFFn=dbEpMNsAy!*R1*oT4obmR@Ef6ir@txW2m z3-+(E5u6$E?6-~%^vU{b9PAQ*JDyiiZ9W1$))nC=b?}n0eSe?Gzk(7f7DzzY`ZgQg z<)rktg@nLsWPPH5cIdwwIxsMzZ*V|uB_#hYS@eGl6RZE{$={~%z;IwPA)JV7bSyCb zYD4@p922YSFOBjh)Z4(O@m;*@EWKaGq+ebm1_I5K4g zd^tSbokaTpf=Fx1(Vbqe)gKT72iyuEC>4Jn)T3uh`iu1GAG31m36(=B_vQUYU`h=y z%O!;Y(eA@@n*GWDn6eH%pelUK{R#1R+YFc~;PF`fcWuwh+7u;I?x98@Ych6$Zq~T6=v$cl=+B7p5JkN^izpw|@V;O|D~T2p;Gl6PwJD)HlJb zTb0`#(fbYIn`LzRy(I$my?ZvG)o8*43_V5LfC{Buk5D8KsdKIAnbzfU57{4q@CU6{ z9o3XLK&Qh34!?d~-{J1-r3zBk%3p}^xE!$FE-e6;#D~4 zG~)9jP>oj?=#|q|8IPdodz!<$UmpZJ9$_J0Lk$IO+=((jag57zvBb)W=3_`-{K=-S@Rf z0A>x)8BoB946lH5vwTb{xgnzG!0sK$g~UcN3}>-ahcBC4U*qN>9!Bt;=U}E3p8|qY z6>%~>Q8t;St6<_K1L(f%kLY|!<9;p)11iA;Uk*l4Ur!BH^!obx*Ke@+k6Pp+V}vX& zA5=><{aRcv^sfeu^6I$qB>fc0rS<2IdB03oyk0w$VM_T!hDp={-|zU$|9l)wJ*Ukg zx-dzuP-64ia5P3xXD%!xxyX6+hmuLf=L=Pfl{Q?pavel9L!d0V#N`nJjizxC0Ey&e zfyrnZIPR$VQ;~?m)==~iZ}ktt%DZWhzoDmtBTfBl@@mn|Di0aP$u z^`?+FLOx?iE^mEH*?eJwfO>~gaTcxN*Twlp&sj0t_+$emiyrbXrX;fLCB{MF>TWr_-rh`~}qU2G1=ETsBv^s;cb6iGSMSL^1F* zx7Lja8~s-sR_)FLbtQ>UcnUiq`^4c)xk1HWB8@5ec)xFP*)K+{mqCOhI;qkda zVAAV}*3l$h;w0Do>KNsHSTCHs#PUhO{Rm!JalcWhv6;t#CWaAN%NYc^IB&J++`sRFV@aNjc6nUSMj|}#+ z7D^v$C*^V(%y(FnA~bPS8x=)?E92^|`JYpH(7|Ep<3kq(L{4-3O+?OCYx>uPQzoZl z^Ji`g>po8v7I#t>POH93`EuDFcZB0PwxlsM3d=P|Kwr-1)yMB{k2w3UV~7MHIATBk zXm55DHJHhk4GPhyww*Etnhw!g-JHPFrpy&;wb_00GiRXhb_u*D1WqTb@bQOpSBwK} zIg|=hd7&y1?3Jc^f~i<}eRYku#4e1cUFssi7$ejEhGvf$*GEeRkGGOY!O)0=2Tl@5 zG@kbkT%Jo++tf16Tu#3rlb*_By;e#O3Hx(aadq1~egN9QJvQn4x|*=C59$T4o`0Ql zqmWB|(X4;@D%f!B_Qq(4qfp#bCXwq+eynx7SF4TSwkkR*w!63+QfN8{to!tCWO#V^ zH9nKeE2m$}-vO)g&92^HiFmqFDNj}Cc9w$jdirDF9)n5Htwc~w@p7b2Qms)G=WVX>^om(O(X?ky^I3O*K5SYK-Q{-&Na=Hbl zuwM%bW!f6(MCRG7lUn zQ0qCu!<%}p1T3~|d3x#+1k}VOfW3Zg{ z0D29yPL9jdo|JLY1M_sGak%!=C`3o6m}=X?>k-elM@n}G+O*ir14+U128+Y4drR5H z$1|kxz^uVKvtqfXAA5H#awgu6F}%a&B>=$8@9}feBDMA6K=A zi@lYSpQ=jHCsm!A;UFcG(N4*$S*b{##8DrtaZdHj7P&O8V8z~G{U7)8&jO*jk&>c@ z+dR2aceXNco(zwIKKe);!2N2b)cD*r7pOgqv=s^JHGBLHN3$zq+OP!upxrRqqIhl1 zhQdnyI;)kuL#(krxY1FqO79oJ6h2qwE2keNCe8=TqWMQm2Rw=|nDOQ6g>PPQ*Kr;O zKch%6)Hy0beIxromTQyg%i(<7BIjpZLO)g&`XicRv!hekOVKBB4))9aUgai7!E7vv z-{3XvOxaAIh+WpaUIDricm(8LF=xhlQZK4%hTB@-s^yA=HEh+Mo6C;Ne z7yzv_y`OLJdOul^5r~Fezc(0L%#qJ$E*5qVMsvAPKH1zkihN3re~-&9NU$S1ycNkV zPXI`4umS5Pp&NqMk>b7m+#wG?<7Q_ozsE3%@zD=VbrH5SrJ5{r)uD5f*+U;D>yl~@ zx;$t|VATgeOV{}7jUI)^N0*K5)P2`?GJnclg{nH`63U zvAZg{)9bUo_9cg8KCg_tOvd*x`-&;+ju#hfJ? zTIBapQ4Io(JP4y}aOUueZ7XY;`)Y`IDLO`XQt5+giTb@kA>@zW&=}qHVrGdF>~fPQ zrjGk%_tQh$8*4p#1x(}_oi(vY2cxP~@o?Tt8ca2{lBK5 zHqK+s?}3YNNM800AD}L_Ct9t@8pzV_Q^W(m0;Y_Ij@yrt?m5jVbMW-7gyH$}S5+OO zKFLdO@X2C2bO+G}6iOrnkH}50)j#ONzuwpR9CKM@@*QnIkI*QPY#@I7{#UtsSieVOgZEy9^%xgyT>m_^ zB5=pUH}V%+k=-?}gSpAzZs680Ud!ihm<@??Tz7Qk&}`pfe$@}*bnP$xRMC_NY?6qW zRA7~IV&@z2onq)AhazPvNABjACq~aa$U?Gl-KH8;O)nU`{?VK{sX6}UJ@KUJLLix< zQ9=?A%Usg)K3D}7*TVlDK3%leATK&z^m+^$V`#}L{D`#A%U!+={Xh?C(YURE2UD~pb4jqs#{ z(5PfCXesZn3BSN?^fz#M7jDLbVo7$be`fW@74L1r?Ky8pqjUKEsl562>2>2XU9Lpt z_*iH5q#R_YJfDV-o|tO5}4beV>1XfP<>Pl!o=a`jS)*OrW3 zcdXrOE|Oa^(Ox6BDblm%0v@#K;Kin!! z8aKLK<@g7bo+y+A@p3C22SmKW2W2Q-!xn7VIM(M}IH39Lpb2p$6tss6NE`_(~roRR31Vc5o+dcHKJ+>btf0pXc$v4k^F2R-x7>lLFW zUvgBV&!UH=KaF)pxlSRo7PabL6&yT~x3;N&0QkA{XOhm>**z+)4>=NxW$n#3OvZ=1 zZXfa0fcsn>2N|*hzURy^(cQn)8x|7$T9ptrZnMh|J95kr*x~hhoS(KAn~aoPDDfo} z!{*2+Z<|k-*SRIU2tRS3sYUeb#CF_r-3t8t@n|XhzN?+ldvV%3RPxDVb4OOfjfDzv zrVS6zm;Gwvwh~128jfnI&T@{8iMEqY5b0TltU=#D1%}E z9=pHI#S9GDG`O4(M5Bt5V|Mxtwe$U!t_tE^B%+i=Oe*B+Fq1gvkKVq8wkvAR2_<<= zI<%2M5la<#Ap#|oBm29nN@XZRF;y}$?SmjKvdU5@2_{xFxoimpC-^fqOjMc_iUn1U zuf~obo(6jXff$kStYl2TVA|>Piu)7Ze7LZ9SfMQ|N|G;!&&-W=<2L7+s_7yE0cVjr zx#TCApi3q=sk;>W_1$@VJmv7LUBLyY!%yqgkXtW#mk|tZt`eHyc{6;9)_-{cRDuf8 zf@~cH1Xh_t(&+pAtrJ@Hur_nBhPE{NJYfse;q$cB_IpC2xXZ1%q&91Lw3dv4yK^2P zZF5%1S<^-q9S97U(%^5-Cu>lR8UzP#fBKIs z9k_J0U`PA5=zb~vG9@7QjJR2fr?Od+!ey@-O1Q}#;W>(@;TRqQtf^@|1mW@Y^_lB; zmyZ!3-7S)2ZL;?Vy`qwd#xa=m9#cL5;mK|6$H<>y(paq}HJm_5za=RkIoTum&{iYS z#NvDtj`=I($ff;qCEYflol!5%ue;mBeKxQ6gWcALSq#rJo;&%u3`z6UW7)n3PNy#R zR^3lynWdwhn1o1bIbTsCV)Vp_z`eatfLo4`X};n;@#~n7#Oepzs&_>a*68WA*!C+8LTBE_{47gV+kcp-!(3FPWb>4aC z<>r)V6eEy**RjF4c;(E4j>Qt>iby&n5Umg}_QxWV1|~;klaP?#RWtl`I%T}|JK~DX zrk#zV;v7er?DX#Y@Nm}_3!5AOM-b)$v&>hY5CICsa<|6Y>yUvo+F$~DlZVk28)ZsK zw|xo8C=O(+wZ`JNL(d6bJ6*j)P4ywQX)JEJh=2`qVS(bg;rM2^gc&0ha1X}B7^Pg= z#MpVa$5LLRF)A#74q8+tD1-#GDN&vXBy(8R>)Yt3E0=jeWu-v$>g|Sm@vu)8Z~=bEU_@53gg+~iAn=-h0YQc+rf7&f~T3tbBL_AaAsi}gKi zw%n(*se&8nY>S1K&arF5hfv%n1Dfj_*PY>oJR_#Q(Oh_w@oMl|o-47b&}0_5?8ZYI zwIB;@9+uI|vtJ(>1dex~@;)^so7JKP+{Wec%$wcOl%BzDX^7<_SE9l8AjxR2M{Q20 zVfLBa>DJ=|GtJ%>=P*+W%0F&-EM$p`pZ>eDqf34sBFWRNU#Lv+`E}{x&j&LrvSi8h4j>@BF zU3Ks`LC>Z`G~;fuP&MAKqr@sfTN2S+z0#(?j)cna{N*s~&BwfC(ip|Z*k6cEC;H^m!bpqQ727*W9m}(V zwuh3`CZ_BH8bc=RcaM1i)j<&7@rpa*-umF2i$@iyx3O}ex-Pxxa#rf9_fuYJZKDFO z%Ez_f34jOM1oFfLMw8625S*b>Udq4|+?1%ZpyR?b@*SGnF?m)=Npi5~`Z}^_3*DUc ztp-7i{kjQMTSf;vQiQEW$VN$DQK42l@z%z3Vzr4aU||J{+~+jMSi9j&JUiJcoNsnc zmjhpI?JME&dqGh0T`Dt|B7OUj!pV1ikIiJkAy=FhhLRHZDj=lVAZ>J{eFU3oJx5%= z6XFgTXz{IWJKcVU6tr-vA&`K^0Nj@ZS*cznP$saTqOuM3d ziN4Pkdm^oNh-9&&`Q!Ur0te{U#Sn8zx@#n~i7H4^Nq$Q!<|>^=cq^`iH|>(4?See8 zUMN&c5*Q}?`ms39HKihb?_{lFKgNi(oFjL=b*K#X6lmyL=e_|Pl3p@d!P^%Pyy4sxb0{_Ut-`nx9XlyaShUXuq=;15 z(+OzUGg!F5y}*LI?QZ+4Dq=R`aa!DzcB8qJvp^HfM3$wACqPe6EP>@Lo8?B#Y*eU% zE?rma-XJT#8fk%aLLdRuKdU2in=DWkrGpv3Ry<%(rKp=xhhmFfT?9HV zES&>+kHUU?u<%f#sVqv)NTJ2h6iBBoqOXDq^}j3lhhlvPz+f!;_I-Px#7MfPGzR?J zeQLlTfL>At3d?(oRq8z8=ArwR`Y#JR(VkL7TqgkznN<~aQlMSsrWAxd4@HfUit1|N zm$p{f;QLG5jKd);F)`D%vQowYlRsk1JCIR@A>?*XI)j1U6bEuR&-hzFCnE9OST0ME z9`274!_IT-m2sZ6JkS=5j9IMi7a-S9$D&PRzKV85;n|xmL)UyNXIxg64+D6;q{%YL zZ6T<0uPR#D)dXvP;0g(KhM^k~9PZoAdZ)e|gyH^R0DV5t558*>%e^&ANvkA%`xE%Q z2*GGYGU=ke$R8FoVgR;MVK70n5=_ykNrAcHrPPUa0qAZGWUzQ4fzs{!yIC|^Gv$k3 zue?ogc)n7EtNTNTl8!d3Vz6ZH*wvTW0=})!F+hKj5W!CGWShl)R73#Uz9{MIlANL^ zpi$T3E6%$We3Y+|bxD}!yCMgnxU5*=gzf@;t_+I1iRE*jo+yj+pY5gGSYh2H8Tm1N zQvHAqWZ+?<*8@U;AY{7miP^4Lpua;<*k)^wQK=khA^*~*@KYP!L6Ls2!dt|H@-_1u z@i5oOrX8QxphRSW*ttlO`?pG=M&~py>2Wl=U(;G2J|E6n?gTrOhiwf+KO|Dp57$$b zyE~lZxxYPHYz4=B{N+88{JBqNZ8ZobFd~Xw-YT`ovUhOio`d$~^EW1ZD zVy5MNr1FX6kbxzBc322`jn#;h!|^%gZ>{g}ESTG&Um%87X_1A#0Cnf+2j2Fkdvj&m zogGNGwW-#2XBeACqenHcUbssEFw|6u>OgHf*F9Qoe6z;P@zvY zr<p-|V@RAo_!6b4f21IWhMC1hjxrH%`1HwfHa_R!MK_;U*1O%9fb{0Vhx z^Ai9{=BMS17gpH_V#pmDb>CR?+2ks24J-LF@0kKsY+0|uY;JXRx|gWASaY_H!QSe2 zLly5i&P>G~sNJin^5&>LYi8k5h<(Xwz^jV&ZI7_0NmGvM;i)-%G8=<#i%Uf~N^c%8 zsiERZt>3MdTS7;)oCN56rR5U{bhw!VQMEgkOZ$J=uPPSsQxHUkW02;0^%0SU2a*> z=u9u5V0ARBu(tINKz!s_?W~_)oBP$xC~Nj^e@)4HLkq`KHo1}RPy6)$kWt@ceJnJX z1PN#ep&r8+UTnP*lA~<3)FCi36gv2{rT(-S|H{j5XCZ!4L|l}9Zsh;dQTtC;`X9mi zv=-vsmPaYkT>hUb)PIZTY$*CfV6lp2n!g$GZ<+9|=5NwgHRAAp(e=21$QeYcZWZ?@ zOy^&MW288!jh?XYLu%#U7lmW$h8VwH8emT1_Fw-GRq;6_4r_rQz>RP2Gmk~gH4xQE z05Z#W#H|4NKRJf9B>s1^2jc?)q@Mx=GWYg+v&0?ywMmDr1UFgTp|5pS-Tur%!anwf0_phGQcFD5DR+X@p_?%houStDrr7j zua{?D|4@SP==`y+p+oYl#ieY(hvbWLdtDi~VUK!GFeWCTsO|>#wFACJ8mYVLuwD%s zy9yGKK$Y~tekMg<>5&q@#GSBI39od z1C_kz*-xCod{t=Kdp!)`b2C*#KNcufwygFwUSM9Gu~{#_0-O+gXUyj!B}%7C6g<)B z66EXMmqu5bj`esS3S*22H=SMWcSQgy{;CR)#u+4Pu7Q`J@6LB-FAUdyi*S)SpA#>} z>&4Z`qz{&^e<&GuJx!2a?mtt8usN75pQx4zeEf+_d2^16xiV#kr_g`9&uZX2TC%LONh1UVz0lFHSdaDiscJ%22EN~G)t_W! zz}5Yxv+=*Gw>abio@LW2+S)pmPTj`83G-YjG~r+KmC6+c`1c5SVL&_HAyH4SwAv*P zDA~JMmjJNC6yI0uRmf8R45ahC4~SiWvh^Jf-`g>j48VJ)sXvL6G_BZG(U3oC^l&4$ z_%>5Uvc>%YAy}E4>=pU;s1Cctrvpm#+eiXZwX!Dti70fp#K*k_YZxHG5y_Eo`k+w) zquc708!w3@4nc;ZeS4Sx(WccF73hUyEH&Y)bXoW~oKXD<+BRopVg`#X%Inu~BYe}! z@o~69TM255XUiF&6Q9rPYmVHwd;D&;#+%9|>nrnbM9ngvl;IQy2liCHxbX~zYXd;k z9OXtq8jx+L#{7RQjc;bVsfp~NB@a)yl z$lFngn(shFZ4|Txhz~QaHCwH+b<_F(6;b~n5cvv`snM~+YX_O{nY{C5v50i1;FVbM zPUxeHXb2WED)=4qNHqKzQ{5583+NcJW-rZ{0eL%fmIT*9R@Q-=%7N;)_Ho6BI=#ewm4+bzIU_^8Tx+%e}}t ztfNRc6v#;ZNVGZJdgWJpL1yx=XUhH`+TJoMtFK!hmXMNCIwd8gyFSnpcdtq@U>llAQi{=4y-bA=iuh zFhoqTNMZp$7-8n8<}Yt;z7?zvuQ$jO(g;UohQ+GN_Yqs9&feA-$WIo`puUTzX1&Ub z+G=UEALF*tR~w%Zdn4fj2aF!d;HX;ye&y;dpcl=Av?z3}A@Nft0T=|#X?j@7K4B=O%vEC`G@G)*_WqE4f$mD zu$v@yR-^oJFAAAIJCUR_RGfYIX z%*u)83NRwA_uK5Dp=jgP$!fb)i_SBPWf^Lb*r&>VAhj8dIaz68HGF&P2B?rpq*F&x zyJ0JA-n^?W(2^EL7Abn`U;#0UnjTbnK3F(DiACzmVL<`ZM9sJC4))<0g<8u0D-QD? z$LuK0sT4T7j{-0OHk)lm>*|x_Yy8!Uv0>19iD^8VQ-c^RYPCN5BZfgee`_2i2A4vVd0TPX&xF!!o= z4wea{S%$bGPtSAf%82z26EQNBTlc2))5qcg3seF8O1-;0G{$|`wo7xzMK+H*!a;X8 ztvzd>(8hCIDnm)U&B%1_4q2f5_wJ9%hV09eTmVczO;ZP7y}oKG_)Ex($RZLe{&6jI zHny|A+Z4qv4R5QR)NAQyBa7n6L0ka9*W(`y0Au6T5aMR_wt=6Km)nA8hvbz-uMGOj zqQ4&~ie@QsPkG^&%eOz8LmHP5mGf4OcPy$Kwx3C%tF8NX#le;*76zLgxLXu`Y?gh& z!ktF);%3GW6Twre0pGx72FVhRNNdkbB?UB}o zA4u)mflZ_>m@Z_#71A^w;MVVsW$*pch)$N2s}YOHu*IO^AGZ}!v?n=A)ZC1Kl(T%? z+%ri{dQ_?FP`z;~RB0`-h{)l*xV-EJs9V;cVFbYZkfnyvG+xpr<3l~bBI7tO!sl~5 zUKC_!MwdBGowGi_R2|Z8h6i{8K7rzO+dq3x3sp<2jNOwW(?3OGd3%L>AfxyY71+;NeiD;MjM`6DpM> z9w#7Erbx5iWb{IqHZK+WMCF~f5IYdFrwEjfWiGR~i7rxD3n;d*p?JW_3Xl{hphKE{3!v-g?`?=8IzZT6LVySi z>s`;Kx)OA$iM6H-Uzx8HSm7tG_&xyl6nX#QYZd$^0N!G;xxv?(t>k{J(%dUlC=^hw zFTiJyMwIr!mOI}W4hy(4-P>E;jUxs_*<=1?*ky=z*cfz9>GaFwNElBiI!zzYDF7#P z7a$S86zs*0UJY-0Aog59o^2RTBuqmbVY6I#Q~>@OGeLseqDd^L88&Yrt>Sc%I%!#A&DXjyZnL_iRyAG@PP-IGs3}} zts5Jd3-0%aSR_I!<0L=AR5|$cEI%sdOUIw0M$L<6WS&HHXfXEd70JZlFTb zh-a4C*2l4X&oHTwt=rruKw!=|{LYN1!j`Jf;3H`;-0v@!j`A|;Jn}6`=>-1R2cqMb zm2TSJf_*YX=KHZ6L3i%z>y9VU4j`eYV{|!hY4rd5{ag_ws4vg(xWH$B&T^O5X>T)6 z1SRl=5LpoU6jpb8hZkm>4WM(B1p!5>eNpwV@LE`0_wtQRkAD;~Wr-1V=P13C`mWnj zYN-I%&_3SgZx4a5-45Qd#7wu^^46U~zWD7@F!TTUDGM-=H&^m6(4>`84-Hda3EByy z$=Srri2k9}_In33yPZA8+x-9B?IL3XZ98n3QJDGvI-dWJUX?%t27nD{q#2Q-|EZ_r z^ByIC)njv+nlb*v)d8=-n!u|b+dA1f@;|=g->36`!zKKLfg2InP}NKMKOfJZWd(x) zzy*FG6GOiLj293vy^0^OLD&obD}n4kwmiOiWE}!BjZ{N?l7GIDELq@2MxCZ-4gYg_ zds~sMUZ3jLa~k5){rPD>cQB7u|0mla;y+jCU5=qcuycUW@b*7{=D*$bzxN0o6yWa7 zI)8`#^KX&w|BnxZx$sT}^sGAjL(bZ?29&`vaGN;fM3(HI9Tog*|K&bLRfCZ|;XCBZ#a1Sedxye{YP0%_b$A8|V6(|2oP8zsJS7xe= zhC>x7VxW!FyeN;B9p3<>T#*!XsjoG1{$54N@tVzcZ-0E?AncWe1(FL z@VWflW62AY56EIE6v26T%IR#6i2%Td3?QQ7kmv$T+cU=#Z~me|@z+Z*Ba9T++;u)Y zg9HfX%;p{w@p!Yfwn%?4peE~!ctkGFJTZghzJEy@09G-KrDruzuR#D(I{3YO|D)_z z5Y)RIm5yfxkl&SnpM3lX;1-X+KSP7|RT&Jv1;>*}LU%R0?-St0a`~4x-LHic z&QzMMmKJRkt)+$C-X#^#Y+{)|Z-? z<9a{*0g;m`cn=&#cU7FJ^z3|muet(gd^285jY{Yyh~n-4;2eUp)#)do1W=#PO% z`=1c*nk9DCo=QC~3$9G}}G6lipI4IcjrCkd7LcvkkG zHJ)Oiuvhw$SuHY`S7!F%;eRN2<*R1j-zSHcoB}Ssl8FoufRsUCD3LyrLJx{}0rt0J z?yK>|VRzv@XKKrRD5dPLiV;i{Rd->Yi_30`EB5W2Dy|&Sboi>4?jI=orrMm2Clf30 z-(mcYSee{O(GN&n<9-RV5rAQ8t{ZcY|&))vs%-O+GuKO$VNcVh5n4{cO z#Lm8c3@z7g=|wUS{|OASIYx;-#>xSn0sbv5Cm1yQ~M|#a3Gko^q`{1;i@1vimA>ifur4Dew5; zs?$Cy%VDKo(gjSN3G`t^D^zHN#Rvq0b3$YBIj&4+Mqi9b2|f!wwH`y-o7g>tL8jbIXTnFBk~ zTRRIY?oex|V;kg}MQi}G0bWd|+USM9<;bg*3W$`KnE7F1iFD@?C7$aMPsESgU`!m7 zOvY;1uv}mGtfc)jAx)80J5-)kn@cGpY^vxnh+LLvV?ci8a;y>jZ)MLHgm!v;-2s8- z$BIv@?Q&2HEZt3x&_x1`EDfxFCuRWGrpFt6WAD2F^b+=Ow9Bsghat8}D^A31h^+%x zUZz*pg3%}n%CW>uMgWlPVA!eUbUecvUnXOJri#14Sm&wtGkGF!d7~Tcths-7$HFu4K8P2MgQl;Yx7$Znjw@oLQiOap|Z_=*!*d>$ts84fm>pdseDdacagOegc(!hhjLdftXCMbWi)*TGf6{T${>iV5rCaDWDRmIPSBdxbzV)@ZWDZf2-g^nZ{+W zbVS=GB-IL(KCSs)kQ!S^do9q2Yc+5cm@QUCiqG%I7lgnk&I4N@EpwF9CKFbF#HyNT z;NAH?%*0E{W^2h)t5j*+^fHF$>$a#Bl={p%I5_0-l{MeIQjs+*7v)a4+XQXs9&T?} z&!+q&60~=QsY61 z=E1hd^wo)fC?TEkp;e2Dk2v!ItNcj=+2s=GxwPx<@7aF;w)NWb`X#<}oYm@y@f*S6 zWSEAHeEeezRiUVS{`o?T$68=YRbJ>vAM0bNfEsm|YlU!&q^5lc}}TnCP;~rO5BnK+nhH3QQgL z5BRq{t>jcu)%LDz3$5)Ni*aCwB=}b1fGDLr*U|nPMl5wj@r1UAT~M(DrG!sSG>{k3 zZ$ZhtxnE$mn@8<@#SOZu~jPwVVF7m(sN{>{r*`KcHNgtyiTsfub z{CxCM+i0sP&L3CQ(MIG5@yX7r{nWeVYU$*8s+wh`St=SwF?dn6pD&#G^GJ644O%2; z0SS;((@ENo*Lx1_5Q;f=#W#>Iogwdtm_O;6gYj8|kM%NdUx0RRB(y0nhwR(EU3jBJ z^IeqwK&mXX_0Y~h4+#aH;ym-l(`xMfhNigm)w2QW-NtfN|1B2)D;}fApY_`m#YPGb zWX=-^9Wx=C{3w{WKy|f;wynzfapf9!he4pn{@1jE;1I^`XytGmN7JP!Ty}3L=eGHL z3^X%k6lp*p!jrIhF(_(~N0t0U_u>|V)0&gYW-q+*NIG%u*uoWh&c1?1Vju3NP))-ju_fF?5mr@O>F z0|7Z3Y*JYwXzn|Jjy!RbtHI9Wkx+I0M3o6_C3@+x06WejFy_o^GeB32*rfD}?1m)H zLln+=PP044FZ#Sv^N5Q--OlTMT=0c2&Jk>I_2X^JjTAG%c{-dFPeA2Lr3kxYH60Zf zAA4Ms_X~}@LYhrOxe|Lj8j-Q)y+Qa=mTKd~OG<^K8Fl-duGs@E@U*Cx}|T0ko)~{%SKrNh$6Miez$pr@OXdQEWl+y*4Nw} zj3uv49^K^XD@S6G3?QGUEeAKY&p`=VTyi8C)v_d+Bp6dU?%HaA8DyDUue($E^LUsQ z_ume147}rvwJDUAf;2kq1OaU9=;wh}q47k{*u}7C|BjrFr!CG^7>KoD)WD20Vn2!! z;~>ZF*zv8HyBVsU>xb{rB4%hB(Oycav#on(p)PKJ8e;EJLIR4@u#_X7{2t-*K}>q! z8N>a)-(HDp=5_lRfGPinf8em2-+$`=jkw0?3JeN+M1(7$B znt!0S;0eS(Tryxe)#!K}wAkF=+`oIJ>V5RQ>8X$MRY0_I1?IpxPR`DIJDHD>-Um6i zju_v*)^>29W_le#{w#iD^~wm&mg5%3xamdM-%m48_N6OdS}lPRSuR~k$Vmu~1x&X2 z<=UEMF)9Inc+`OxTE`1)N0q%KB@cyix%UZW8dJufNSAU#L8RUm6aXQZ|BT50@|PKB zW;6iFYEe@VgaL%${#(w0q2n(xi^Ke%qpy#Ep|HCfzh>ZHqb-666 z<}YJyXyAtVZOB_lywO+rr?2L_MX7Km5OGQDSAiRU5IUC~6#6PQC@+lA__^nH-A*D` zG%_R&aKyT?MVBjhoRVX)T*`tDh_NU=7aElZJStpITCqb%UP0dL>hKy2cPK=Wo^u0h zwYSzeIK`WD@tG2Q51?ey7(^QLH#|FDnUU9Dg(E72K>Wj;yxqYc!%+ z;PT#JM(@6#gCW2xHr6E42x~!PyhkhCKQi%A64>wlx)rBRYKzPpudD*qmf$j~ z7G1ew5YHeWWrliUZ4ABn#HuC=Cwo^CZGET@@6+B&1t`P6W7JC4y+HI;)rU>d%Q>@H&ATbx^6R7kI@ zLs@vv?#m)yI6MLY7CIs>myg-Li=yO|I(ezyzRY|#*56uz<*gZhf7Iga6I8^g%Lk@H zz+o$yxyY!I_$j{#?Mmfc+RJ|KL4TTkqg#C!AJ1)S-AQ-7*u*9DbgJ>j*lj{%VkXqB z#avl+D-{hezNP$nNl#XL0_El@9E!<56O}p#5fDDkNXmAp?z+;k4?f?vXw91G$O@0k zqK2eF056w*j|+W;``YmXJWP@y;ti#fjqt_ByU{jk3l!OskB%SB3cr^MYHp>eznT^ zS5fA-QoU0Dyit?L_U5ps%SmJMZup+oyCPt2Z(E5Pl0^{r0&CM6_r0_FBCtz*Iir=% z5AP%*ABP!$VTpYV@AmKv^NL}hw)*~!&fU1K+gX8jQ$TBo>b{tcn4E?F)Q0lIQLO+UYVUW@SHH zi5I_iU;^mK)Xw<#r@3hbccaL*i_am8p;Ju{A2HeNm_A7-6=Dn;=>kG%djhhG6F5K> zE#HwVM){oy{=9_`DlYy6>Qw~onSz4_p>M_syV-BF#hidM+iDuoddJ^87}ZqL_DQO6 zi~j5{)pAyNHC#NOSASE57w2T+Nv3$EZ-`1P)3e_z{k|zt;~+||fRAU%b+TCtD8fi| zCR&GI2vqg&k+2GtW8O&Ll%-wSLE3LD?VxgAsVe6iGE=KoLV4cc7qrFH7>`}rvUD{5 zU0lI$i3%#Q1-@hq0btq{2IpPHFC~(zh(&87R9KHcp#KA8d|toG&MR9|S-D}?L=}9Y zjoztf5$ydWKt5=|w^Ka6XSB@T#4Vr7WcPS3492&UIra+8?_G!b&WTQ8p z!mBzLF%_kZKJOMnAXg<1(p+g1TG)DNN^$X&h^5Oqp2J9eILtkUkDrX7dPzaqZE*VO zvheB}iE8rrX7EN;Z0wV^mA)AmF+%E?G;HF+g2+@MwE^9CS2Uey&WXP|_tk}W_1tbj zB>NYeuJP^9hP96=n)4=Z=%2(=*+zdEpR=|ua(@QPXdkZ}m`MygjyMHW_Gpo3cpv*J zU=N#oN)C>WF2r0(LcAW$X}FcPe3G1_+8FhRAYnKE!u))vuzr4^If{6es!nKpy-C#msb|6eB?&ov1buV|K^viEAMhY2u{;OCYVKK}Z$ zp8_yD!XdfA)d366-dVKxi!FPdh5OVu;g#-Kvl{qdXm>s)IgalN@Dl)DUY0zc4?aVl zvK8uH7zz-s8JEuRL%R4AKd#svW-RY&?oK3E3EG_i5d;Uck`D(A@JVYne~XwFaPOyK zvpd!%+`Sz)^xrGD4B-Y}gBQuSw3mSWufK7+cRk83@4P~3^CF%f*OVdkmBvS4_6~B( z^(&wKX78K5G!%^d#EAdU3EEw7`=z#-GgzzUZ`i&a$NZTyJi^cgZ3Oz#{s%7q-zl2Nd9UM(iTniU ze`GUe@_k1K(0ry0?%IDQ^?B2M2F4eOJS|*o|Kqm*yn6qIVo~j-`Q3tR;jb;v|M*7$ zKRuzScpO?dX>dJG0q&!n44ii-=yHH-1ZD~RFbbs+^if^rFZ}(#l4?*h`7mEE7(PP- zANx-fR_dDi8hFSxVfOVJLDijo(%O=~IZ4e;ZB@4;B>9xyLJfGNbWNj0&JeM{Dj_06$n z%8@V5zvf7OEZ#r{{l?S7jrQbWo#o2<)d4G5*}=xfh2kKD#vKkV{E#^AN;B+i*Y|Va zjUFp;mS}c5>rA{_%7EZh&RA$~uO&+dh<=RbN{<{4_jrs(!}NbxjL002J|DWHh+$2* zO+}tI$K1^{*zl1~>ebY7sW0%Cfh$=%qkD8Sa=V~h1?{bRJ#=c@$}2I$hG$Kc;7Oca8?sL8w;;GeUva=77TK7vBN^ zcTm9NbHFz_9PtA<=$Y*>_V<}u1VE%~F#lX{jY4OCFInHzL=1R7VRBXQipP?dCA7KS zeUQ(S?n`CAu)101-W*ALCxy)_05JtcArg)&l)uurYkcuhDw*lafzsz;qdU$gfFO#7 zoLCxBEgZIgdl9ixIvw})GF|~2j7|~CUlbNkO0HB@UO17bcXuA=w7vJkWU44rb)vUF zi8yd;`_dG4+3sWx$6zoPC}ZeHTSRCzS{x80&}lE_J=cD|(CK!Pn5nd3PZ$k#2BQ@} zQnPwi+6@Sh$fV-}c09d66rR=orST$gGpf~w{D5Kt!fv6;9_RjYFT#|D=H4<5?@+ctch5XEGlJT+x2O0JG9 z5_!=@YD9j6H#q>Dgub?STvdg zV!!q%MAA8UkAqWbr2ClpLh35)M}Q~1NTb=^l|(rPsKV}>cIx~Iyk+^$e64Q6TEA=o zyv7J#S96pnc5za=go3#j1GD?0~e9nk#SQ>(VX z$t0VfU$z3s@AdF5hW(57KzG~-yN~nhnaUvCaJZ|56c3S-qmA=D-^i7|U<3{o^-#vZ z+Km;h;jx?pa@6}Zqh@8+(9pYTp2KV*k?F@=f;M?MlJCVoxmjFkE9cop;H_VWy7ls% zP_JC~TNm#PlSyF^zUM&*gLZWdm2%lnxww5GjX_mgHcoE`C8KWc$WZ|snOZ){q!pf zQqE+u#8*!QiO3?AZ98RRVuBa49{#}fW|4q9@N-CDV4y|Yr5j~|MyS{7^$}-{Zp85t zGIP<1P%E1WZwd?h#>-*aTPIX8lz?|Pe508iOYDnFOGj3YJN2B1Y#K<8fBwAV2N&~- zB!C^!);2esqsAeG^vDS|ax`>lbTwR7WoUY`S7bIB4~4^^>Hn#M7mPKLj?a6Y`F-rL zq>05+P||p`f}Yu8GV=cE0z*?D-CcDO7Ka6w*>qlIU$fQC|65P6&{VM}?y5uvPiX_v zU|josmr=F;o(<9Ra4LOVGgr%I_4-|Rj3Fpl8gM!LKxi_QXwBp{t20<;uL(=;eG=*g zq-fN3Cu@_Y&L>*b6pB}CDHMF`qHUBfbF>%_l2+UUQK*yap3A&U2Owai2P;|b?_koV z^SlS!_dRh$4B{qkn#@$DO_#rgiTYCFeDl0<Y77mEgBs> zg10QJ=Q@?YjKcagS^hXee2*P)w#MV+PAM54u~jvR-FXH?&wPau&p zRMMio2JFbpTB(0~0T4TI@!}$ys|h$-Xhgc~k{K@gd0b~7Zu@W8xy`8YSg^st^+}Lj zM_o)+Q`7v)B_BK7n=NBrpIVD#drJz6gwTApLZ1W~>)hP9ww#hsFv`u{OxZ;q>roIzTl3BQIW_~gK*&wOx!3|Ei`RH<^QLX|!WF6%8_U_D%uJ0G|r3{>G zJC=D^tis9{7}Pn=7wFLwrRs7DO-cw@@Eq2iOrw)++S*ue+NEV=WK1UOv6#(NGE5Z8 zg%jU$SS)^Nv`d0EaN;Xi;q{aUQmewsV5@`jr82|<5kE#@b!u|hXA1bkCEuu*rLwz* zf09m>1Obd$9Cfjb_pwk2*y66&$GNPJ{n=0$(qi3*)(C%o~opZG`mm&~DOaemh3Sq1;O68}Z zbagIKsr3Wmf+d{t98Sg-W=SQSk}T#crZtqZ+}PFXztg9&Ige|gj|LOYV%kfma|sK1@<5GsAMmI$Eo&HeYaX78dLmizSbO zc{ghr#3uhqDicUG#*_lrP$Jik-=8TKTyx6&BvfSgJe}4Kaxy|ZFgarP9n}h%!!aD* z-&#lefJ`;S#?w8cRQS!AQoF1K_h4?qXtK&)-T8XqgAI$>BK3+M@cnxy4XP*Yj%XVX zzX3bEFa3bM&ifE1*<8w2q_u~)$E1+anb=?0oQ~jeOg>1R-q~3<(B7Qh1Rx~ps-XMg z58mJgaZd+;9EOwaw>+lGwUxiLc-^OP8l}6HCv!Oa%uTS{Z1zt!n!6%4*m*M;42i~3 zDdxmc9~VaINvYSxwciL46zGoosDbVQ=c1A{W`Sn;-&6Y3kTb^aMOP?5}Gi_y{D`dKHpK)}QJegB7)h{**oP8k6H~IYX zQz6MljMu5j{fOE%dg$lDPIwiWm^kI27PxVBO0)QIoSU+RHmA%&g4FwnsL~L!u^&qZ z8CvTD!aMOt8lVpYHYo4 z4|Q2qm4zMt(9v zG|K`)jlZTmGm?MXEMPfl$gS7G?Ne!7Y7#5XL;Oa+hbt8RjjR*(n7h@LI%6_|CSz7c zOJYG-)is|ku`*{iRUn4-?d?SF%=-+u zD)?dhl~l99x3)KtEB?+5VVicJop1e3cy2{YsYHjMGgqWn43DB=qYpYZQl2hJ$}JB> zTFPAG^#=0Kv91XG*D2 zNVv2`XJl%W(k%3-aK6-TOHh>7V%8(Q+n@ePmBIvm!m?KtVxbzkADidJB(~ZK4PPOh zcxU%w9ZTwHCYnI0BZQ111bZ2jA-6lK3v4OC|Nk;DA)&oS{N z@DQDqkCW}ov|@J9a-|V9mp7uNI=`j}?bU|&rrlnSS(hN{`T#q+t`^r7T^+NM)e6R` zQLe!X#ihDz+cz&+XbC4n4X)Ne@o9_CMB!UJB@64{HTy6hWsVPybQ?Yro}FU3c4`R* zI6K!%NXG+(O_b-&Vu5Lk+rY9y*Szwl8`qJ;_mcr1@dY^=}B9>J9ooR{0@|t_L zE>Kwc<<#g62%LFX@LUJ{+IBmm(r^vSsSMUYJrW-+;dX6J+|A6O?L12l1i3nDkW95@ zyBjep@yIhTL>{zKyP#4;tJ^ zWMJ6PfbOb40CvUIff%=IFQ3Y&f=^zQVRXntV(5|#W*VR0y@z>tr&+93^jaYhs6ZYs zHHoCKSY`nY<&Rk(X=EBm!ajJM(YEqR%4(@v%N2f3Rgw-#jb^2CEh@&?GXqF>-A}ZJ zp0y?u(uT~miM)Y=K7LyoOndCVB$;h&7@V&&C(s7bQ}ixfot%Q+_^LeBenIo|6pN(; zBmD9%JjCgSZWEYJpAoozr=<1%v7xlW-!WS=ZB1nVb=(%Q`2Kz`(sOev-63&Pb znDmo|1q`;?1Z8|d-v>|_A}yiUr^t&PPNnzeb1%r)uO9W7GhcX#487lKRa_W7A&O!K zw!8b2O6`9~_3!_Xb);iG_l~L{V9~wak^Wm^=OpIQ;o+hFRGQ#8VL8D*0dGW9Hkrv} z!7rP;5ATbkNhQQZkUmCQIq~m-rly7uf9T=TV!KjwEiNwU@9lp7wlT!+QFXo}ECtl3 z+7VuX3)~#GR#b6i6H49a$b8GFez=S!!lp5-u(gC7I;;0Y@7PcK+uxOKmbXEIo z@O;p?jDnR+4OMYhU21){c6Y-S*I^;v!~1mQ>bY*EwtpBRh-|kt9`*6vJUiw0dQv@c zyWXrs6$&mluvZh%VLyv4VmS&y2iHbev} zg{BBqV?@({11*-bj}#d!nKg?yE@{y6`YWfV@d#`FkiG?mgWwx5NKuLt&>?kUdi#>K zjW8APT9nUAw(1Bnhni$pO<`Ju8NNPS2O(^*^sviXcmauAb))DF+V?D!-RauUvsA@U zOHI!HgK)CmHdl{!<_EU>`JEUR?Zt0*umbwN5p=G*JaN9@4dw;+Y1GkEZ59X>v*gz1 zMkj;X+f3;w;nf`kxE3nhqj>XA)2nNToFyv0qxceBqLzHk7}p;rQ*7VvJmZdSr)PHE zcrsp+tn(y%Z9@cD)oB%hU-Rnwdg}?M1%@3+AF-v-f!hykyh<(3171YrCX@ zCf>T!R9rSd?mPL}VWkBOFR}`9RS97BD~AD&a0r-|e>jIffN?j(gd)=c90+^^Nrc-f zX<7Pw0+k~^cV(g+(ghkZej$R_So8PBA~8Q6FAW@OwdkRLX4Ds@y}AO{8rYwLfDe+c z@Qp871;D55KmQy^<@@$B^x*>`wC?EW%{VEpPmkjpZA45zRzJZm{Xl8lJSO$pl5rvi zZHS>$rf39@3+FpIKXN@BiAjDoIv5Dz0EEiLo^=6uwH6chHB}2-Xm;&TWE~Gm&uw8) zx@SLRIIqi1#oUJ#G+ewGw<-{?(h;X!JY8|IGEFvMsQQDiBxEp#zdrVLB>w@yDh zO0=P*D1GaL%8mJft8@mhi&%|vxzQ~x6n_}t&D8Gew z);|r7X_tkn!~g<8mmzvo{KUHPAu>#Fo0|Luy9qCo4Zhd6--{(=zcHZts>G$cir`zJ z4YL7d`PL1o!SSNX@7QG4on+3oED3~W1K)8FcJf3wvU7EiU_-6PshF4Q=j|qg9voR` zwDI`TJxC-H1$VhUC4u-Z-Y;f4BCnf*ar84{5^Ieol^WNx%)m!Kp4FB~gH5^jbI2?R z->{pr_w8`M;|j#5M=b4*Zs#gg8BztKk|t-k&%%Tf3wRD=jj;PA$}dUhRR+j#z~;2K zxgyeH6GKOh3Duyx-(GyjW(C9OvU-HBD<9a#G5ql;7J^nB?ypU1t10wu_tHQVQ65L{#&gIg+Hc5HA;I1>H zbLYwA;6nn5luBC(x@&tP?Hj9I!2m-85(FNyjItqP+Z{z$DR$z$g|5=vjSo;$m@P@u zSwyEpBK7O&i5WvEzDUTX$AyAr0R3pB>8F?jt1a=koD^kRDecAgAUt#$4WS@ zM%SCN*t?s6xds55WjP7QnR&q~rFEu*L#MPO|A7~A^-~B=KAI$tKZBX;l*wTcQb05{ zcQAe;XiX5tdV30}Szmi`45C%e0z5fo+)+lF`aYE^J9epb2B~I^_s5sE@E}R}UE&-y z(6Q#Q)JFG@&j-`KS4eXxr2OC$I+&C?qd7+9y!z|C$x~GQ9fau(NG0vn(=b;`00ckZ z_L9l<(53)5HD=WuOv?i#Wp*Qw3j1~(l`;ia;5Qt=4gYG@6c$vSRXWV8G%`|`+xGUt zP#%at*i!uY#kxqnoX~uw^&%$H3d$F{EboMl4bi5X%j1yWa=Dq=vz(8;^Q0pbSFCCc zgmVtpahf&|KX;$*+ri=IX=`hHF#(ApuhZM&R{$l*gTH9Gx#q27;NA+HX&oKjh#%Q0 zZ&r{$BXoSSz@2cU^|SFMOo&N-eaAk5Wnkp3guYkRI0fasEC_R%6NnR#U~zHd${WS+ zpMGu6WQDqEal07Qr`3?XZn;7$4+Gl~)y*Dw!`sQkZ77rJ1@HV-BbDdb@K^QC3oEf7 z4E?jZDJ~WF4#kfib_pG1f=GF2cCK(UZT>420`m4{_zXSF{=glXnB^CDX~y>@YL{u$ z4Zf?)x*y5Fq}Hu$>v?8tT9>Uq9EuuO|85+^u9Gv#h_ z*`91l#qGs$d}oicbe`^INlxDPHrEf^c$D4FL1wCaxM%JLXZ5^7Oot4BUi#qd!M#Vx z^Eqy=amTnClnh2Cpy8GI2&^N_MXesQcn=d;Le(XiI zu5iD%poBnIe++BeU7*UV`~h@Dbn;pXxcW{n;46JU#qy2U|mV>^$bYS4%;w>)rp(aE>`EZlCO*yuP^|1ZuPkyPv4(xm~R3IiP z<_vkOUTYCUjP(T7iY{WZXG| zT*I_)#9|W9Bz?qz``gq~QSwSa?EHO&*`#)k=xv@4XFQzo@-<7)mb?-wwoOCx+6H?t zqtsfVPz-709hz8UrM_aNta2w+&gaaFzDj~$%k@@6D_!@F2+u4qz2P_L>_5RD+VDb; zYX*?``215pu7291czx&5;a9FsB9Oh7S3w;Dbt*P8bWp_DWp}O8cuNQn=Q%wP! z1@jgM{B5F}^0Z&P6^fPY;kpKn=z`>aiN3c@18M%i z=Wc{oI$Q-K-yGs!yd7%phMxv}XJr-AVf`RSr0XosLKA0VSWZmc()K)gosA6%YVYc?W;zB zSUF%di*;iah3EC`=ma%-d8Jzi?0osk`GuSrhTbWD%ZT>F=1)dyvYpb9&UN{Q^Eh^W zHP^FNx@+AZqnb4bERm-wiFVdrU76VNL_%-^iFJTi+Zd4M@csTWDV9@)=Iow74eDxN zd|J>4;>gLCm#O zGM9J4jKF?<9^jL(ruLyoG99Z!~t-uK)Z?%Vyw2hLvJ=IthBwv zo^k*iOrHA#($_pmEK=M>z!!8gotPTu(+uBap=veF>%3=wrd-1NO1V%@Xdkep^UK8J zvU;=AW1Y|}aN6jj0_&TA^4!)AA^O_BWrXle4`KP*@dMy3*~9Fa@l26w^agl3?E@Qo zqi%l<_=Qyq8BzD}MPL8cG#c+R{;2?;7OGPT0AHq##a5wFQZ<+=N#RL0NGN8HW_6Bo z=ZD0Gw;1@CMzN8-gUSQmuqYD6PiIVg$G93@BU=DanNz^9dVIVtd9vJ`cRMgXdStpo z&ObhRXpi+{`NC3|7+2K{T0S-~#&ss7PpHJ{NB6?_4$qcC*@&@2`&cn)lr<1Rtd19t zS-lLm7(^qwQzn;9i{QY-i!g1v^Z4%ph#VI!^fsNe0NUu>Gbk`<0o7v9ytfpVGMM2- zvh{L;umD1MMeS2JJc2fn+w^E48N-2St}1M~(!5?_j5UzLU2$ESLi-S+WKJ}=cMpP?9vLWQ`f+cnHON0Gg>}fbM1zg&4+mA(!R2X&}YJ>(af-=k} zwc{=qKHP{Sjn6Y)dPH(C=X6-{^fK1-bsnvLW(Qn0Kis6xu-cvVZ%bj8)~pQrQS>ms z2)rCO$oAPJQOLlmG1_95rm_SDD_ct6;;u5{$0P`oGb>*w2EXUT$6Gsf3TV-@2EWT% zw|&NNLTYh+5O(n2{!v!TlaEN9__ogw>8Lwh^L+vT%oWlXqk4suL zwg_Y%1l~;0f(`YuP-89yB!Zxn&$ZoOGoCzK4v{C_ zdVzOAKxlC|sU|P@HW8tJ)@qK0LcC98gEzDVMGB>aOKYxh0__IF-{8*l+(T^)#3xp>x`5@&ojw^A z1cZbQr%S~Y0O&4}73LMr({dz-Ba=Ib?l-ua0AC3HQaBVMt^gi~1HE#OBhm{suPere z24N_Fvk(6$e>m?f&h;cec_X1)Yd}_;p%l*Gc6C0;Z%lCo^hM{1e|NsZf|=Q3UZ7Pu zD+Wj)9jmX*mU`lLrRnRcDW(99mJ8(B`uzOL^u^cL%pwr4~iG`HC=byzy z49%M<^c*itSMw79Qf(%Gz_cD2!)YafsNpD*L}(um%xNoi3~*-*~Mr?MPcOq16Tvp!G(Z_RMlgOMw~_&hJNPR@o)%BgSpHr0_K3J zcaLbOC0FNV36?p_d$ggrvD2d5%mvifpun~ZI6GjqMwq|gMCk;? zPL8Ml1YlK{4raRSIh;V3v-R&JQ%{R(JsgO}aKwk|9T2dF3);g?E`)+tr$oZJ>c9B6gIR z&Du^llA9KpUYXRO2~^lw40Lnz?Oj9!FP#r}`>Hw5MoF31)qV}rr?vU1kaa!%X8wYO z<>lpdtq>EEu98t!`jO(Bh!eE59e*e4`!-=@=L3-aJ=S#^v|t?hqIzO)JoA3N9q6NFwzV>u@CY0>mw06w9B z^gEiN+YVyAGt5qw0S%_d^g92T#SdfogpPAbeb;-xgTcZx&_q(kb%1fV&vqPz734@ zog^!lJh`=^^ki0d?OQ!bjSpyaURMpc?pWn3earc!1Ysw@6J!?y`>`V!GDfkh!9%{5 z7r)W=MbEdJp5iHc6*#~j-S{1}bL2fovz!=rm=Ag&GNH!u5rx#s#k@1o}IeYV2nZr-9$k7uCn zT89`qNrvQo^0#7(X z@|+Q+hfjYj5nzX^hiI7+nAu62xsk_DV{kfILX(R=S#vKL%`_~uy?i*ive+)HDt&0S z^koG7O67NB>LN>ZFPp)dyy*BQdE5j^0Zar}j!ftaX0on;GcLNV&b8(0m^TYy8@!2XwpEP(3yjtxC4>yuJNy9(mx=e|EeRHFy?uvvvFL$ux20%%z8}jWP zXKjJ|LS+OV|I?({>4J7R-ruv)KZZHLV+6cg5eOO~EssxPI)#iKZcn>VnM53G+n$#P zh=-4{61sl&t*>*RKYsNUWEDq-(N?aG;HbQQy`+DA=|6mfOaPP#U|reVf08-={zL!a zw@+V)Gcu>1y$-MX{_B7K<5vl#1?;B%803$Ri;;ihkm*1cI~GBBs)O;zij4r)h^Ei$ zTTy<@IVZD6+)ifW)pPcD12qxH>JN(leI5V!oB#daWWaQWiSzZUYA?5sGzOv=!Jo#m zqtksy(^?aN7)V;9s{F8Q!0zIH4nO6`1Ja`D_M*r*3m_JcVYL%=UELQwM#7IYi0VQo zZqTxBV697Rw8q5c^^Bsch+qa(V|MkWe@>_Wmv``bS69tZPKh@kx$V($IUSkW42%X6 z()HJ=TX!*lgfZ4)CaeNttM3nGk zivzP{EK&WTPPrlE5w~?hkusH7uUuLtp!p6dSEy5FrBZ2tX!d+c8kCdL0$_6%hwU$W zaFB{7!`a<~DvI&fKPj~4C+%-{VSQ90ij%oT>Ow?C-o4KdMfjpP%b?eHu&1~`md{Tr zy($n(9TV$HsYtSMbZbA+pQt~-pqQq~xyu13JYg~%e+7`5$AE0c{@xwZ_jEDgT-BCz zJKjfY20asrRTx0Ri1=p)FKsS|Z5*S)sG#|3QyPcMe?BpP;P?OXOuXK*=hsim-Z(Sc zZnTx7cgU^O>WC687+`3~EOFIdmC+|}eIgRe16;exVQfS6d#dwgG@QgKSkvR_pC(VP zZr<3oc+6-zZfw);FK*B$F`IXcjaJLYw)s{${T8`K(|CzBU${RQS>rT?r82+@IgVw0 zO8BjpGeoGZY4#A)O*E-iZ|qx7U-EUXHbn9Rb%(YfrP*|o$Tr_Hua_L)G8)^!s4pC! z+X7U2|L%%`2j-Cr0&lrhhWxrD8=(F~d!#_Lj(k6e^>l(@pyYGEJ$;)t1H_%4C6rMA zz+t?McHQWa%lWESCExC&^8s=%I;`e(Gf0L2X~dDqZHw2Ke_kUpM}e;4lgC|-C$Rwy zl6jZT6l=-s10J0bt4iR-+BI1;Kk7o_%aTM=THTxs&Wv$HLOv)tYWV933GT;GnywvE zvRF>)&b=HjaW{B8gq3Kt{8VS^T@=fAq%}J_zq{0^rD5?Jvn_<8PbR&{L*a4NU2rkT4*bXl}1N+W)#}aOa%+{$agg223%6PeN#Gr_OKd4=_I|i4*%G4vrN$Uti~J7oL}PY zkFQAqR2oGIpJaHx4q-QqXGwrB>!ef~kC>_*n(%_UU}88vf!_7*qy}AD5o3^C3twEL7n7zqLBfAS~r{k3AslKTx8Hl80S=r0W zJ?1%lwyzv^*wv$n%+O-uwpp_{dwu02S`8Cf-BJY>$;#EHYdpbdhbik2w%a3}BrjD@lHZxaj=emV(dbz(4(@52`^t%yCu5pbdi`5vDnR=cf zV=!uWS;kqg)}1c02z&?@X>du4tI@nkjMv`zRWkcHB&emGNbKI34ls0!s*Lb->->Xs|Uy&5;0i=#Gq9w9{rpqNBOH+vpaxJ`xT%pbkv z-byHrjl?qV&W=o7&R*f+QzK28t)w4rkX6s=B+h(7M2gvS zLGQ7|n~O~l$DR@3V0)!ghHGEt#G{H|^ZuOGOzqZQ4(3UH3zA}ypEpzKVFSO;OWZKLa7 zm*rNLuHtDbVL#-HS|_nKTz)W{@Tu6eJ$TnGm68&yYzC?iR*B`RD@)CfRfLki^G`Kf zxremh=&-T1mX-h_So5pr;C@4=F*Lg?@He>Y^SkicL_jhesR`6n{mV!9lnhO=iv8ie)x2)|oqNdOWQM{NxZ5{&$+OGztSxF~g%fSw0biS6Z2w)L%qroSMRY}GIqdoU*F&%ES2RCs_q?A?q;Cm)AL=j zLY}xFATiETXEm39x_211n0MM8@==oBUnwgC*uub$1(VQ5j>lPmc!KS`{ZYBjcxn`} z(73w0QsIv2bE!S7%T&?xp4TM=BAMKW&5EL#o0<% z@AsCofX}aCP~GjB%#I%2txqgas49GY_JvqzFsS2!NGq2j8j6FCJp7yP_HXt8Z+fCt z`!f>S`!b{u8nXi1i8OR#M|an)3($QEYdJ6ON{v4NP>XVgr~uT(?Lc|oR6sHma?A7_ z?!S5WJ2q>+Tlb6{L5ttbuQc`fBM?zlT4O)D$HYk@(ZAkpug>cMLn@V=Ixux2KB6)r zp6K<|FQMAh?0%NwUsEQ1e3MdWzr+^9Ai|~2bWDHldML|BpEfoL#4L1AkbllqqyG?B z8F_P&{~V`bPhAYi5PoBSKs=BADf1r7f$$_>yIOzzjU6jSi$B6e&+qPyMoN=0NkjYv z@97~NQG>PFI65aa2sLiEUxzQJYrJr_?39Yj>m7uaJ~`F; z0|F>7<_{qwQ?z{9>jV`jZ7+=FVO1CbOs<+ zER!zuhNowY14ut$!fbk);bk<==STqU{58zS9*Byv;|35UAbgiIzv-6+T_^DLsE}^X zpCIf@-IdJQkq)Vc?lKmLROPw5D{{eRqlC?6=out7y_lpgU#4A@IROAMkEeF!DYL=! z*KDf#U%vt~Hg|6s=c8QmU#sg?dT%)%+t8%GSiAEfP9Kv{+OzHgj2NRFag;)>;=E_& z;W*N4KOKPI5tUSZ*yir=bvas$cqIYkL3*WiWfP>=U4;{CI#i#>HqWeYdR%GIost zH&zQY>?)^P5?xvH$#0p50B82OiN!UoJwiAtn^{GOI6ASn`wWKOCB074G86Z8Sz$sL zf#mS-=u;O5JNg*s@a4Tu)!X45pZgF|s=n0W6QoI)8z({}dKn*Q^o{Au*ZZdyh+UOb zr#5?5exM+>IGr||1xZHJwtf|A^69(2j}3PQVeSN`?s-v5dtkrUKS=^3p+mx^Yl>NLU8vT@=?+WxyB}Vb z$rK7;R8ix1iYbA1#C;u5qGNhSH<%z<<%>Vw?J+vmd?lAiO(c7sOIZCb3>iGJytHul zG1CZtIjyR%=F1e8iyk*s{&yh4ILNt27dwsZ2^v19zRKhtHqqb1-{ELkQ5jH02#Tqa zVDVeRzdEmkDQ3GWB{4a0{lI#{-x`ii?oNV(IO`jnDAR=?gjH?u&+ShnV!~ILHVp(7XfbjfR_vf?n}G-5U1TpN}~Wu$HPl`c?;BEBe{RqC%|xd zSF2qN=z0QlxWcc^h(zz>9RpwY` zDGc1~Dl~KagT?p`MHk_DmSU}s(Qe=MdzK6rSgKD|q+7H~ouiCnh3sz7YtLI0i+$mN zz8-?jh=YuPhGxiR7;Oe2kwScpi|D6e%_Wv8jp!Jf&ae@D2dl{@V4j{pG9;7S~q@R*UH<#KQoJ_en`?X3~w0 zCnzUalQN^xtAu#nKvqYxK0unuowM8i^kaXDL(awC^=ut7e2Omv*r&0S_|&u;9kqBo z?~y)|JOEPwLzj&ngrYuuWIr4~ZF8W&v6%f81VB5K%UtR9Igr2}cq`SWL)g3WL2$9c zW-9BAd8r29%ILGbnc_rL{lxBCcJJo!%N&XVZHb6%+HvXvinjk+roIRK!4dr4#CXS? zVqdh<*6!GmDm)W!AXklr#Lr~bb$(DOI&&VcNL>|kLvF$~Bi|kdw+6cv4Slx$84)Bb zy;L&8e3=w6L~1QV+tw zVAEIgnTYD+1DHD24my{#DPA2@5Y_2`pyfx^_(&k=c_i4V8_fWfxh8~de7R(;jozd)p$(W+syTnBdM~^27ZkNfd1Q63c%RG zv!4L56bc_fX(%pxn&nE15F{LWhM=!n!TLeKPmNZ=>0~xDl7&8V@WFU`dS2JdK;xm5 z;kBV-Mg6qC!Ue|<6|U|*@_*T-+n>Sk-k>*aMcS{CgFkHHRe-oc`)Lt^J<~# z`U~UQ&F-YheG}kt7<5USYZ9?k?{_+aNINDP91aS<#7f$)wh1QjSyWC=yaIbZva7|g zoPzw2t*jeeY=tkLQmtR9MMHPf?cdO67)s#sQzG^ItQnB~K10i&vtU5sU6r>HElqo8 zB;~)US55z)#u^lF;lN-Dr+>|SESfE#MmSN8Mf|EgRR8IV#19r4D0B*y(JaTd;vhvs z0_fh)hjW#wvUcP59ZJ&R+x||FO=3m0x5TTmk8?nfCulCZ%$}Ch-=XFdh3Hdv&r*Tm zPi2;;m1!bb!M?My#mc8+r7FXV^tr|yzAnVgOhy^I+7is_tG0U$R*!N&jstFwMrUEn z<{qgS&GShD=~O~zEqIgT z$A00+k>keH0*w0I(Jf9tQz*5J`jjRYNg@-}fzEW> zw#0qU;dYNE5W6qZH^S&JSvb?B!)<@EaCi1>!&AKzd;2yB?a;#DUQ_+peQ-#x#csi4 zMktZjy7ucFnUP2^dK~F80CrNPf$lDLqM4uroNW=s!aRqz3`zmlj|j6J&Ktz@4T5*k zHB+TZ(Mc>8gdPSu{ixkPi+5{*!GJgN?Xh2qz{pL&d@8>jo$C;%Q|XE|s#7n-*@jIi zfupa?uG5DOB!^F~mH(!&`r~oF4TI&-;*ogmTHl7ymucVkwRt&TFN#M|Wjp5|YV!F4 z@=&U*Z;c_$&2AU!=PMBQ60fo?Kq@L3yYfyYf)wPpwTW!r>+~~slZHWn!TESk5D=)! zw^Y_xIAR2KdbPhQz|LmTz_f|X0X}!^1k@)$eoCp_B>YELyJ>{p_%TIl3x`xZDQN;# zI11t%*&45LsY)%((*yw9wW4FWOi@7L!R?s? zVP7@Y@+DkHyui7=>@nUKeMMy+-=U(Z4_?g#4=0%$t#>05tuTlrPju&#{}89Prit-5 zlZ)e; zc_Nn=y53!xER@mimOF~yJljc%bG5gms4a>it`?1V05es3>@Z70yhbXXPBFfem%=VjI)+_^Ccc3BU89!TOBo zJ*|Q;sNg-l^5?D$FKEO(e}sL-9P!A<>KO#!X$K?E0LiX~`e*1F)68+v1Lfl;5^Rc!CQiHVh z?TE+9&V5>dmrS&ovz|hOtOj2^pM}JG<0?H!jue40z`R9A1`0!2UnvMNBKiQKU_2yY zZi0|Mix@;2FWqTLZ2DY)w~p(>Rk1;ynPl-$Q71{E&TmdqU(b=L%Hz22fJx+{`875h z(e_p#<=YmuV#r8^Gh=}R=G=(lI6BpV?^lm|<4s3KP?OpWOacE6wMouBFyDcp?{p2* zAf5q4#8?&@T#3MdiK;Oo9g5RS*V|>Q&6iAQgowo}N8;AonQR+do#xA>YR6^I_YIl? zqj;@CrX3VQa*cM|yoN{5yG>6-xjF?)VDVvZW2^paWeG40Kqb(^_@0+RvxnX1SOfk zcKHLt_EL5G259I$Xsz*VP2`P6V9W~;48*e|DQ{t+6j^MSaDHxXSZT@ic^zRRQ+Ufi zrZ2X(u6VOezXSG<$0UfbG%lfjTr@@JG?a7RxdV2qzP)R$fmGgu8+&zEy1(}rkl#1z zms7_;gLgM5M7Uqb|NeOkIGE1HT`hpn)>o4AFyIsF8%o$)xfFhUcX4iwA(x^`ljrB> z!heIhM&al#c5MjbzFcjTz=-p*)L6HMxoaYL;P3<#eNTB>)%k~;lif4l z#;B^^sL0U}lcD8JTBFM!$d=2aX_Y35n%UxUI~C(K(3E0r{sh5L2C5s{}ESO z6(iI2o2+bsauz2DmlRhAlAZZcLc#V|`raE%df%dvduLbdne6GT)D9q6;S3^{KoSgk zw5uUmdcnZ$L~s~cBT`y~rUB@6VzefXj}`o3~zFz5Z_6`FR-Bj3(mj}c2Pr9^^AGdl?2`9j~YCp-v1D~)v zAAnl&r6<<@o59t;_BoF%5KP8>0(4GRpJt7I9sc^;3!t1!^KoMFb8|#`u)uEm{+CPr z|BM&>`O0b)Oq-&ZNXjTEFE+LfC~rU`?A<@1|GzLxf!_e)jApN_uJ|AC_J3_?z*Yxf z7f`&9dB3i7|6a@gd~-U{0$0*{Eyg$Vb$@M+-d3^#fSnMhEpNtu-Y);;6(3Q6hMHkB zuKu6@$-lgEyAAQV?{2&A>f68k5V-lP55%WH_JAuum%ee*cNP7guL4))t&{R?yYH@> z|BdS%@FK(yfnvm^{)L6)p0JO?j0W?`*uwyFi-^xFI6)T56u%ez_vPRRwJo{PvDi;? z0N|U7EH@Cf{5eaN@QZxD|5yIA%NzjPr4VXh5p1EkynF71wv|qy=(DKK`j;#G`>xHB zW#Dnv)|(c-zSf5H*6Ai-^Qgp=e{t}DlGpvVPcG5&Z-Djo6AaL`$v4t9->F@z z`X$RAsVl7cxKO(Pvfh@Otu;V;8gt5U;ijP8$REl9KwHS%qUnFrw0H}^6o|`QvT>o9yWx0%Ob*Cw%GGkawp$sc5UI?W ztTJ~CK0zKG5_lbVysm^^qSLnFAIr^dVgL%7*-%sDVS5hTqKqf#F!9v5qsC8wuE6wh zm$2Hh^MiV;88z?OWfa@p`DTu+g~s>+dzsngFG~BZeFsXh9m+)o>16U8cJe0wk;L{R^xenqb5(LOr6C60QfJ8OM~E|{IIW1L`_0lDnO*PTa0 z6O13qrE>yLP>A`vj*g#!PzB6eP@t(7uOLZ1{{;lZHvVj1lS)J&r5FVLpyKZzT384i6xL!(p$^d+(Wg0 z@<*f9u9duAJ1Tn?GF=$qMJJP1rHbJ%gCEGmAsPvuI-r!96%F z!Uh)WsW0j`3Vcd^VIWfwO(v01h3u`WwqzF!3MI(zR3Rqr)(3R?Kr%@X>Ud+_$?e_6xAY+VW>tJXSLqwgZ4XJ5O65fd*31khCEA%|#KO}-0N+c}#qNddK`w<$YKLAs?kc%1WiRf+;=Wm% zwn!^GI7X|{Ci)teg9h9nK~O8pS+5ANJ3Xv&7n1dnFbI(P6z%U&sJ=u-1Cz)TWKGv| zm*G>K+!!dLD&`3>lr@sfO`fiTfu4xq>y9~|AA2FPw!m&B!r=4mJLde~H_!m}BWDi( z6*dcq47+U*3Jq?))|6;Doi>SufS#WIgISpTOqj(G#%!}4_XSrPIN)HO4FsMl?xBk0 zE(4kF-5Qgo8*67>nk&=6@r8S!*vMO2522-=gNSee`qgY&(Fw-X6xbYnIRC;{p*4VGSujRP02U;>k(-Y5_q9 zea`@EBf8=_Mkr}5Ho=5_L(_OfO&kc!Se0j;5?PFddi=m8{m~%SL_sVA=*faq0rWwU zvejdU?r6y?kbsYH6bV$)E|2J|5}At${#EXF5l9lGXgpqO9bM+KB6*$aJH}1D8Uno@ zp`HX_35E;?=O5=APY8x}ntYJY4;SyGSWMO)A7aUQ}r3p+#@;`a_UBKph| zkNstpNUXp7(?+4gg(yu}>~&dE+)Eck$Jt6nn1#A{SW@H7@x`0C{y}3PuXH_=>DNno z3}6xL?!sv_ z$~P04BJ_TdK9|ee3bj7LS?12w<{*X?XSOv=2=lShLGn@VK{ot8mcsUANcG9& zdGq>zobIb8q^C;XaW-9Ut5$S_akXw21XMI+-sL$mz6FdFejU+QO$Wn}gBO z<9QOK;A;L6Xw-R>F<8b7y+6>Br!5w-nnpY{ayOnC3u^R-U4wBrQH@3tyoE}ZqU9}4 zZ|j}!sE}$&4di+QF9FWiJM80)bo)tcej})@{wr*Y*=m_{#28v7P1hcRr7DwAVPwzM z{Q*vdu*6YjUbrp}GT}nth*NaDeq(FnB0$QCAqPl1Udx1P-Trq}3H0nC+1i_3obE+u zD^9F`&dF{WVSn+v3j(K)DjJ?IpMTXjjN-9k-_>zhW0(YTzu6pap#Cmy6W39vB1}!FRo~^yUX7#b=)S-SODs>PRoNkK48{ zg5O42v(sK#8~<0;-Ad#gp6#i#wjU6NLygCw*z+SM*Cr6)!YgzdTbRL<-#r7M$4J>} zjO*pzC?{Ugr%0c>Tr7P%`VIV8;5d(H7k0h?@_bS^9CS#A=tleRu(@i?DKqDRupKFh zXtFi$p_^)hQNALbMyRy_vUP`>gx(bFFJL_3pNh_ig9d>*0=c*GmHh!gq6)|7E>q zl>W2s+di~C-^YX{uhl^K0U+B@X2gtVvM8ZR(qX+%4@ia!UpkyQ{t$r zka;V>Q2{XkD2Je*_3(5$bm6giwV_O#n>{FqbQHVKa|`vBl5F?;h8Y1S3zy42{9JFS z;2j67>qQTOA%0Zps7{mgeW;n$=<-{cJ@)Hgm98*C_HHecd$?sNL~f_@Sn z;(bCz3_=L|qsQJtJ~sjmSJKPLNEGi!h+_HL7$)+MeQ);j;24IsQ2 zMh{yL@?t0QG+6be+0!D4!Nq?lO|&^DOk(pQ++((9Wy`x$bRuf2cmnX?`ufLWgJ5sNo5N%9F0qao`t&zwKn0hzAa!80a*=^ z$@Nve`IPTaC2F|os#>Q9w__*1Db^)OJVfPnagP85cLrvO27yjL`h3%c;S_z@#jxpQ zY(xeVeQv5R5LjNc_ZES9Ebo4nd_U0VvOa&7Jsk(B%%5=)^pP;jIgtR-Mco(%uAAOZ zPH30d8J3_I5>%sCeg#zbIf%=(r|@nmc0RXfdk`T^;QpaGW@w`Q;g*|Yg0^;>%d=j) z1@OypRNBH&Apt+|#4Ih53O!S?UdvuY%p2+Zt|50A0hqDR09zD~VOfIs4*CHAkA`|# zlr^=ML?{|ukNn{&8hNZ^kHVJj#UI8=L&nIq`5d-2nQ!E;G>6 z9W!}qqg2#6d#j zaBS8D9-g$ozK~X}I5v;#F6C14z&tn;Ig~Lhi$h?3s`$vC z$YGp-GqDjwPRLl3OJR9g_SbT{wSm#CL~Xfga=GwN;WWfbv$&NtH#=n#!R4`9C46VT zP#F}+%SZ1q6#bQE0SLd-O4EU1#-fZWkTWmEyDr=s#Nc_s2-7+`aR+|C_Qbzg4#v@^P{K3*UMhFtP8<&Mev?oa z&QAD4jRKmF zLfx`QH((rEoVQKqk8mi3sV48!F4Q{@#uZNN-ooI{7wR3Uj*z6`l)1o<^7iHV81e@7 z%n90y*#fgm1kgSU_0=wizcfy-hdba3wN=m|9VSd)IcWS@0k(L7!Fc&Ea=c9>T>t1$ zZlPs-*oityFVw|2kS+2<()rHhKJ+X+H11E`?SG%Pr_^Y-UqG@k6nS&5r)d>Nr&!*E z)k?Zhf{>2)hb|~8<%pSm$RXtxqk7E%T)$AL_POoNQz8gHLllp9E0s#-q8j>%mvl(?i*zP-!65WtLFn4!e7_HlTW-pV0h%5@>ohdkuSDvUGe z2zbo4K)rqB4Q=zPn*3)2_AjOP?HMdYX%@r#+70ndH!tnPw z0eRJ!g_d2MVsu1)t>1120vXZF9!8p33Uu&YFRp)1G9OE9mPf+kvGhli)$lEvSP7~6 zv}^R0o3JR) z(62j#fW4q)^aTd}1kh^n6S_wbLuFP)_(EQLzqB`To`lc}AwsK$eO2RwJuxb7`Q-mh zxJjc?FWZqh_paE#p^p?incqArkQ0XT8fb&8F(S{~mZL~yh5KB57;I|&hz_p3r;rBj z+M>J0U;BhUCEt{f<$%xHZ=iAANMFNiYjdRD8ELOaI({KhB3B!0(}vci7}yW`wK4%5ZBy@+OZQ&wwr-YcTn=)FjW6MpA= zYuryOd#Kv-l%%Q)UjMC)2yiwz^PRQ$Hl;ukz~QJIHQs4Hh};MEHRu0B?!xeTf4Z1jvqn;(s4FhPdaWy}(bKl&e~GTI6@&_+<9s4ADJ(cAn& zd3S&qungLz_j@`YjmRgWt^3~h_9R_8Wv4q1Gjsgd7N)KoXWwFqOK}8S!@(kUYr~xu z+4kPnGodJUU;;S8NYzT#Vhxwb%J02Xk)nQg02-I!exoB1ckhVvP@xW>QtjzTq{ij4 z9l9?kI{sXy>5U9#LFzU`Fo^+*$6TgAO#|VDIbhc%Er4#nSpynhgv!ltr}LOnpFOH6G1@p$W==RV73@d$vctSD5Q-MlS(ZV=V%zJ{ZncJ6QsE?QrXY8jR<_ zIAs}!|L6GI(*{gOsZX%uGf5CW(>gyEuVp1>4Y6Cfz2(ZlVXm*WG7wuH{afp`M$@K+ zN%dbODhHx$PzqtgM?jNoX6S!sBIP_8bf8ko3Y_Z{<|=nCR;Zvs z+D<3J!G;>euORSO27Z9EWZxjuczuk4l#`J10x8k;1ULF#^{H(nUp3OF+F}L|i`}dN z2HP$_Jb&e2CJ#2+L_Wk(%TGt4mt?cs#ZOlh4{H+{i`y(IMzCw|Mnw*#^nANtf-;IU z*Q{#0pW1voQ~^4TxUZ_p^@;54vmhZ)7}n%ZN=_Z?GSl{sLu$OYsWf#mZ^SIJw;9p*8lhevTsgL6a1Yc+ZlFhr0r#|L;H1DO7+ z$2&Nm2sCuK5>MTojiV!CJjtGlRo;!~(@5v?+4TU|Q+?O#L(X=M{`uG1%+z>uv|=&b zovHK~iBclVFMSbvbJoVl5fSGcK8=~s?AOlmaX1OS90<{Ad&R+Hgz;y6CM{n&Fe{-% z+0lA;{Did6*>+K=6|eod&>i#3)ZtAA+e7I-F0X@s6gL^70!6!(%la+sc?eB>K49apX}Q*`_WHX80N@$El@>}%-h@B(7}dk(+^$Z=nwTGV3;EY#`XJ(clkXp z`CqNS0@%I#gM!bz_Fwgd*dK35NvL=Z3?@8&d5KH1!)b@x$wCP>vJ%J+l_+5ILpxY5 z)C#;TOa%<#kOR>f!IoO=!fP#8XxB-3YLSVK#opWabP6o|&xzGP7R#%ttGiuz%4(|d zse1F4yn!BPd{`3dtv1XfO?rQXa*WXaGXR2!M^1YF1roTCWH86I_BLkiFRxVMkhtuzy9YO<5n8Xt8`xm zE^O!}Cw4-JyaVn5Ytu~Jw+P`WC+x%Dcj8tXwnY7b|9a%DY*-%b#`}dPIQm+Pg<6Yd ziI!R5i+*h2YYiuf7S}IUY<6yq0h=9lRIN*id&hfwccYfZW$A@QtktG-R7pIJAHToD zjKX5G5~J5{iCKd>JxSLW4i`;i%E^uDeizN}^_=qvfIpMx=_AvM@9^1ZwuaKapKtXG zqI3k*#S!oKG<}ycn@RJyTwOC@x)|19dMiSIDo;s%E)c*o=l+X@=iQq8 z?WOhM^78PHkB{HKtr_FQtnD7oerqfl-|o%v71hlTgGJBl;{aSC?mv~^Z%N;PvF3fQ z3FbhsW6PVOogUkIp4s~D5YtYuopDrFiE*O+JDOc?^E4h`J4?IRt$gPprAeZSKD zanr9(y#?AGHYw}?glf>AtNB?RY&5Mo1Hi^7c1F{U9+A{wU{N_3l&DmK&o_r;@%h|y zfW20+_*!ch4UV}y9G`!HuTX&`dp~xLnAPE(dP~wt!0`N7|PGABh~X^Nzd5oTU%5+O2msULmd@GyVb(+pGiu4AwJbFvIs15tAdfKG@UPui3}R z4Z#gt7kzgo&VokQ2I*4Cu>!0*ZXZstwWPD)T9P;rY)Hixt?RCbbNjf zl4^uqeu6FWhzZMyqn*0(5)bA=jWayQgBtn2J_0corP<7Q|UdjWdM7=knh{8m+1917%E zYOTe2r9fmt)8YFcmzQ&P=81m^Zri*tLcCGF~qpn&8@OOuv5NuD0F|j z#~drZCF~(do~wIkR`t|D?D^%s0f*Qql;Jaf09^CkYEQJ)%oegk9)2D}JJ{Ijc|WDn zP6ee*l)AiG>#t1B{!RJ^&xXfgQBo_HdAh!UgwS$GyPoFBo|e@ zUky6KDNvl)V>!5JyL~@8-SMTxZgdv&2cicqp30~)N6PmVi{!f^A`2|q9VcA{rMT>N zSUjvB1Z4F9b%6+%;uv~&&fZzF*xt_r4Fh(h!G%#vmwI}v^m?}>$#7c2CovezNY|J{ z5yXzvCT8R)&8iJq8U{G5n!Q4w{x*B_`rv)K)-m=39nJ&q z3e1@ROZJ~htkv6N^-eEuIYoZxf4%E6P~R#&i$_tibHeL_GbZ{V}86%;o61B2g2| z&>pDQk}v<5riX)Rb2}87sr)nXCN`*51kq@&ly3`}md81y$S_nec3dp~Y{5A+AOE-1 z2WP6va)^o|b~tWK&5ntSx>6j^9{%reDB|}ZQ`XD(H0Ay(c3s+oe;kTlMBdFR*L~$7 zxz&DF^$(ATOCHZxX^<%S>wcB?r}J<38=9g6YI|C)N8FCRInn8yIrimmz0gT?k&~*d zYFR?C$f%l~o&=(uWU7z-aoGE`(8v{VTrc+{VK}zNl`_a&lEw~h%3$;s;koTj;N8G* zS=o4LninvBIO)ujKEz0CCE>NW3m_OzZ$V?wAn7^phO$Fhd=%KI3*T~c!Rkk`e_rPN z;0QI#Hu3lJlY(h_IZg9{hTC8J`tE(7Q0hWm-u91!Pffq*SoDX4x$G~0Rl}mPz%+Z9 z^v7@Lk@L?Al%@e;o#WFMjlx}ps&JHU9T3%-oJfXR@I_u z)J=;xuNc0+!-|Mw9Ukfk;_nxUcIu-;G`eLGMb=&Rd=zd!3ZyEW z(;ySQ)jgE3lL=e+){Q?~?^b5Y3@1)ZmAgrvL2J~@89st_&EO*rj+FL}=D5wS_p2b- zUA_bPiDL2NnNia=mzK&Os$FmX^tK=5>{}$L+@zW0R%!CF67P-NY&MKGd+;ccZ3wCb z4EHqhT5D*PLp^eTUqZ5Sb=Q7d6w%M1Fw+ODc}JQb=?Pj})*aTi418z0w=jIy=^5hVl2DSn~1u zOGeGk1E>&k8B6g_3s(bzroZ6nFwGQ(3js$;N8_VZ!Sq&lvX|#e7Y?@>fj>d=R$_1Z zF0Tw1gOlafeBgXntRxBIsh0jok7v{$qdib*G$Q`qd=il2*DBt#6!uX{qBqzcaS7TB zsteJY$S!4D3_At~k*$u|!o1hDxCil%)ux7GVVK40lmCX*qMQ|c0d zJ8F|q7;zBW67TFDA~5`gXB2{zW&ejUu$Bzn}PwoC}sM5gNZ*#7a2^I$#8v*O#<$UrVoE5#0k3F3sh&rh!C7FxLl9$ zx;+$B%c^#0Lr!aOQ#F?xkR_hxsQP#`pI)odx_7Nk?5}XmS@nfPa=0(xC>i@Cy1dBG zYs~DF{`*PTLswID<(I}*)a-2QT#qUA2Mn9i3%8=I^j7qT_eOvsaXEFR;>G=NoW^iN ze2(T6u66x!i1%1;h7Nt$CHq8;O3Vr^sx4lHK9tGfk?QA&ZiVy-g;tX0)ojSAhP9Kw zra={OG8Xbopa1p%hiHYEeGwN-spoZa&#A6N_MH6S*FlSjSXo8Hru648@^yd)E~`Qj zf9UZn{+r#YG#6}EF))(VdAh&W5Wux{ZEW>bW5GIg&(R@mRb$AlIt8|_me(Gy3_DNY z3??U-1GTUfV8g;;KjGTweML~96rTwVkEQ?wRTo6ODB^7$d1?hx zH1>zNFG|-jbyC~qe|&erA5gV{-NWXI{YK1@?+5uv94S0>+*~u3vs|G&bu&?#=foSn zP`$t{1^oE^cae+-+uT9c2bvVDU$@W1lL)Gw0^rHvmCb+Kqyd8o?JLq`@{45@n`LV% zRv_n9H}>rAOy>=`!G0#&x~aghK(V@D6C=Gq>7j8#>0+7lJoU^L2NbfC)fhAobz&9;^pisyiLqEMH`4q{o`(1~W1l@OTbFL8vJxlE z4-u*b-H17(wo0svszx~K))ADibpOmewQ>7*4{CpL3{6 z65XUT%qQE)DcO{T)v5KRTzd(`#tH!;_MvR~@{9{0bLyB^a-CAqMbR1G29a@SxxE%; z%zTjta({mCIFJFtlXE`VOb;Tvjeq8S3#gj}h!*y!W9i`0K( z5~pm0K}3Jm1^mA~lRONy1m6H3*kjy_j$Fx&IE&BU^m9+iq2DHrJqG&pY8+swzy+Q< zpLBaEt$2z`;d4xB41uzGY+EQA-djxF?N=D32jg#6+>wTA0u^y#7%#~Eymt1Y z9G44heD*@uZ{HvMg4|W_3%fco*-Y_^`~?@oko9JM zsJ+P@=IKX%CJe?kcwExf&NU~Yv&oqsTaRsSwvE~UcK45lumgpRqmb0vyH+kpa0=${ z#>scKJsg)qzw0LdV~srtYZv;z>uU^S^Mia6xJv6ar4flGgEA#U@zgf-6-%rlOs7no z_|vO=GJ`k+;n9XbDoldkyG-O@oJPKdPYc;TcAc}SHkuJssI`9*|k7n-;5 zFI#b%fw8;r8EdKO`6J-fA~Q0gDmla&^4)t)!R+T6o7AOMo%@_X=#`Y@rVNI)$Vmle z%q8niBO(a{elUVb_y^-UR%R?f3tw9pMO7zhPXt~MLbeH?H?BLFD`=^HZ(yO2-O~y7 zX5%^-Y0Ud~5Bj}?8lJe*(w7oM1lHL1H57QN%ql%iyaYDS!X?(FFYOmL<>L(L4#=4g zN3knWafa5u7nS4v1rCG^slPw2?L##gJSr@?c09Ifd1rYtFEwXBv6cj6=vTdJh>#vt z^PJZ=<->6^yY13XADhi)*2Aq=KG6XFgGy(xNCdPmhRd@di$XrRx|3*c6DkNx=)IOR zSDOV#R~pq~H7x1eMj4Z;F4_{fEfs#MI}g1Z7kk@%Id0w8hF4Je)}uAV`Qm3zUG<+e zPllavgrvSt`!YD2K4L8qk|Gy%%G#gSqB<19SLbg+dT3+gax^`p5OgLaOwI<2S49P!#ul+u)zR`6jGkwFqtENweFuJ-Y_kdzWXKci=FSv-Eh z9nVPdM0bT8MN94ktp@@ULD{TC3;~byA#0hLZ2cnpZZGX#By@_X>b*s&N8=tr0yPtS zs)%%%c|82&6hX~56LKRvfA4-jIH;mxA~`-y6m*J_Sb_%Om>v+FDJ-)j(Z;Nl9{6@P zf=7z*w@>pwXG9g%YHa70cb0Ws`JeWT7#co?q=-j&55799lb_*!cVAA+VKFbtngO`2 zLsnGJk}f8KkO;=oEqfM!9-!M_UU$-A8fBoycxggD!15UD_q^qGzj{BHPTE@>m=oy2;)VIj4WIPB8ui&?>Ok#Zpukta z{~?w{bxJ1Qx6l8*LWvwdlYL4n;kKi^sAuj)bj3i^E!i*cy@SPzuUA0O|9 zDcZ#D*@KAM2uiO3`~H9E)%I_&zLyeOJLbexL+M%@0W?Z0Y%tC5^W6S2hu)H_(km<8 zocMNSfBy>*%6|1&BBZu0jkm4kc5#12IAVDg-Vs#ag>X~q^xfzFUHA;aU9Z5^p4P@+ z`121l{}}QDmSD3*=fgYJqn4Ubm$s#(7&FN*S)Fx@Pkdf$Q;*xb^O66)%70ANe%U>qLk!b^FFwNlh2{KXgDI7LGSfGJFr(4y1d2*A z^R$VNl;4EjZm}k-CzeQo)lA}{qSe*%-xulceH{2AhycgtDaxkc^S@=-f3V)wHu2R^ zBwlnIsRa7)3Cp5X=S zo5P$Z~9+_3xH4`;ZcPgej^fxlJ7Ta z#5V;vIQ*_B%Ed-TmL9CGA0>YSpGc%kKn|w5w1E3^i=Xma%b@}vcr>Tos?j7K6Yuvc zjl3_Bag#twwnJSdz<9OneN>|aVzEXo95%T(`0T}f(OYFeR*bSW0MUqPGG9>At+T~J zB^--{hC>kupxLhSl_-q~i-AESbsZ3VoN(FTvqN$QJ&?po{Pq3($Csq?rZ-fBT9XMlrF)$Z=t{=9qTAJs=A8_)x@qffpGUpj2VlMDC`IK0vf42_v6GMnV-ungVLK z=lW(;1?GK;0E&C)1KiYC3IH9!L?C=@{?X5anF3|-dCs%3Xy8PrbZl@M;YCpH@C1&H z)zQ5ogL*;kY_(}byW8%rQ%R@{r_Z&w4zocGZHxDnoW%ExZ}#$O|AVF5e~yDzn$u1} zXC|WtDFCm^;dWRagZRLk2fftE^k;l`_FClQ3l399Qlvh41at#0)Eq)?hkoP$Xjn)) zLmj^R(LJhIwx`QZ4%ZMYqbJn^lS@;&7dTUNH7DrcC!wP z4d$ICYiCt8RuM0eSy?J;lm$t0ra{ zH#_J840fd*zAbZvdavJ>T-FYB&`tjKt^YlCD+=q4RV-JFZ zag*+6*-DfWgin5s%`*Sj5DB2=qQwZPGR)N#WcZ);Ab-w3hu5c_!9+pl^VMF=KM3K; z+djBHg-#SHGIj>1ph%>zeWvca4vkF)natQP<_k2`j019{V%?)2^3$&YDEh6f?G-bi4k!yPza`R%0t28;jbu0B2$?6D7{wRy))?o3J%iBo?V%~vmJC_ z7Kycv;7HDAZHY2!oyG%bC$ysEH6Ov>8SjJL@cCxr^>17U}&z& zQGn^URLC~P9|j&51AYq>Vw^3cCjc;_d=$AeWUVEC`OANw?Y}-=eZ^Nx55iY2cS=&~ zO5TnIq$NtUi&6>jpt!iz2FW3}d)l0e@vwvEy8uVJ^99$vF{!RN9Tz;cr5?t;y9>PE zHb3oRAt)xU;<<}67<@;1hrjscvrRgK&gz=9%r2*9Q(g+M>)VEY6yRrJX9kOkiaeaI zEr91pU=~il-#_j}w$T3p)Bo$g@9*)_8sCn7)5qEqtYQHOVG7Mlr`6)c?)vE7V_)xw ziFnMuDbkpPg9w;Z83EkZ=GT*UlYMqa{G(-$kET6gOa>4kmzaqnS*inIN+Pb{Z4&Ke z@bi!5R-ZTW+0BwsR%cA26~uZM_EGgmKD9@O*c$2le0VFD=Jv>=G@TTZQDmikCT94~ z8|^Utb92t#pC7%Foi@IQ!T$v2h`J~DkasB5{<{Id_7kZbvu{GK`WD$MgMdW71eOk{fC)F+@#v`_5crTw3*;U4u0%A5tI! zK5~E!VlHr&U^!PeTR5QOi+NGWCW$!Dl^L{!PdhA999fJSz4o+?V}~>3Jms0Iw#mNy zW_rb^+hme>c(RLnM9#6);H7*%nz@;A2i%mDyP+}4r0H0_ROnqRC8 zF9eZFWTEV-O@6YO`7Q5-t$x3HIzB<|2g%$vXtN>q^fusu*>mC8P+$NWqF<#czJXNJCCEC(ouPUW$wUr zr7wHz@VK@&n}r@+7-nEA5TYdM^MFdmebXlp6Jt{Oc>d{)dab*`e3L_4(SB~HluDBy z-v@f>AAs4M^-RT*`@v)07+^|RvF0Bb`k2=woQGa1wBqXqE%h$KqPSvg_bGTQ?<_^Hdyi?#Dm3F&R{fRB*hZfaEiKjckkaX<(3A4 z}l%{Pi0?$#QOju^&_*ONX!9o^WC#G4&%#4f<0;ExTu zu!>c_dYIMABdy&6swFP_C8f_jinyXS+neK4%}zc*_s_y;P%UL>Wz^tpy`4GHTpH@; zWp+K*ZUJMenz0>ig@f#5Ig(Wb?ddWOjE$M2aQzR8o3_mMdGiaRm|Uwgdb9)EHxOYz zB|5c&0y&()$v%uu+fs9{@pY>6Rp(CwID6Z}863u|#skTm$kOuF0&zATMcL|BBpIK@ zKX6-kp(NLaP1a}-((B~$w5$@1R24m*UY9R;(3(e7HdGQ5V{Jv^GUlQZa!vHDi3@Uc zp24A#$T6mKU#ZyJitxOjtKl^tg$&c4PZnfkl)n3L^1jczbHx7TgKAeJPeULKn3djKt!X zTwFi@034=Dv`&0oPshlWmOu&bf0ijdAIutVbK3DQ*SHb79nA;M*V{>&4<^-XitFpt zxV{=r=S=AcMwgGo1wS6!%{K=(dYnjVRTzG9u^w+m1afzbuCoO^=@qkC2j^3&*-X1Y z198h8Bn@5UF(Ya0vB%3zG>Uw64$^kI-(C~(JG6@R*iW0YjnD{Luk(C(T7QW{r`Dls zZ%C(_hwpZH8vBjthvUyLoE-0F9UH-Cm^|9I4$EbTK;1gDxJ6ofoRU2$yq)iN z;s2yUZh6;{22pBLZP5kTE8=;MB3#A&$zKoXwDh4;$hZu}>Tb3R0jE^W-MKTM5Y&zc zlkmAWmQPXPm#1rHVrUswL=-~|0#g-+X#<~_l$ecL*O_B_`7TXPq=<#Qc?h_2QZ`pT zukJZtk@t@+kK?OaaxJ)YrrO48lskKN46;;?P+5(UL9Ug5*tcv8NuwRxxKa)F#Zyew zol)}EE%J}>US0_!)p?C@4_kVFjvRT`foD6*6mb6@DpaNVS?;ChE1c{3)Lwu0K8GN@ z!~1AG3WBxy|Mt3C)xxa8QyPY7UofssiG`vuVlC`V7X12DbSocg7yF}7F@sJt;Fe9t z9>tzY+5Kj3A-h7K&k~zgza!8R@CH}^qK=3}$W<2VUaDCce{{Yz@PYOji;Ily2emT6 z^HL|HMx%hJ!WV)gFpoe``~&aW;p`+Y|pR{i-I4vKV2eeJ&|81LR5el(qI~BlphwK zkK&NU=TXotpRD@eH?OiT5&pVyQu=0bb+7=xN6`9m%$WvuwM~dmRcqUiDZrEj)g9!x6} zMLJ!q*XV@Q9H9_oJKOucbB55Kg$6I??pVUm<(i3>_eXGhE6knW?)E-@W&f|cyj5ZG z_9BxB@A(lFvSrJEOV0E<1Xoh({>mezCkqqFZt}(G&;H*N2`-^cr%n z0@tFeO}FU9tSW#Yd0jxfL+avxgC;=r+ryQ2R=&t(CkC6^75|G?8@UFpQOp<3a@!^N z+*Jz4t{jM99n0>l6=_)0idLnLKrMaEcla~(XVSTc)^E>6jHvi5 zeaAafA4Cl9s9;-r1RtnEX9AxXVFRjf-8Q!E5Iwj7LFbvR*!LzLCdkXiwyn%7f&a5~ z`U}fMzQ~K@`QS5}cDU3O>$0Ms!o;GZ-zI8?mg^o#!2O;KYZQcGiy8pr;e~@IzEvS` z4eM!ByNy@KPU3QW7~<*2Lyb*BKfdz-Tn$BOl(W`V%$d9Rf1FyRb}hdEk%IhRCO)-% zxGAW!p6HWcr9O!cw?66N@*LnmR1HQvyuUg~@KZ`#?Foo6F=)J6^`0S>EaUM!$G+O? zckdiRA^RW_B+^$ol_>_5C+`Sh;SM4Ig5L;8?76ZN$MKSp=WL)KC}Fbzujw{2l=teT z^xdFuWK%(?Sjqb{<>IF=SQnxRx#{SoqpauiF*vOk<9}C>cO*n({O$PHglGD44NlKDT%k z1F4oHHvR98YC$$H;hfgH;*UZO`=Q5SNr=q{lMCqphtK62jeWkyN~|AEC1#=S>iLf3 zXIxO+;P36GOY6jD)S3x+MCtAV!xjvg%eJ|Dw2`qq16nKe?Fe11Ky>vjMsd(869 zikTe24Wyq%Vea(?qduwR-kNy%^0IkTpXqSw(JLiFjY6bj8Oqk6rs_Q9&+>H|Ov4d` zr5?N#qY1o;cAsp`hHe48gngxei2d2Y+_+gW)c%Ye}2cOu+qVRNcv@rOAVH3$8{zu%8WRRguD-h!f zCIfTV1GuG(Z|ny*o5-+tL^Ik?(q zuuLv#cbTpAUUF}=%9Dv`K!igf`fsZ8x+D59A#@--&B~f2@sAPf?|`iav&qykSha9S z{1r%n3kb!6eG|rxkJX&ZWj{|b9D(;n?v18ybExKpTR<;Dv-s+8kT)A}8VAL>+v!aT zAIRDLUGjTCVZi3&ruZF|bLoDNATAW;rOr5&Cw5^nWbssby}%S?F}5^DlMYx-4EP2?7Q`rTDubr0 zB#RlId`#*>*0bZK*;V2?$8pnvWJ+$YN)AjY*j|pI=HtUdhHfbmjL*>yDc2*24X(zg zO00we>>#O9{W-Qnf2@$@W>3ogBl$+;H{12wSHL+k-bTo+`tiln+`(E&khZvw6K){c zCfSeyFrI2PJnt4XW_UXN<2ASKQ-EYm7hy9Clm17VV97q#3lT8mtR;k@&EvThj412> zpm$?$@NQ_Et&Fk^*OoN2w3EjqR=d3&84lw;N~Fd&`z6duil`Gk6bOFRdyUe*2^t3w zCEu?~81kW4LK!S!x-3(oVB4|c@F)yVSCHv2w?&vM>Egv4{(~5bKl#s>3~zf-VArq$ zb_0SVUlZv)g3l0UmaG=CJK?wcvm$wy3a^RzWc!-f3gl~c)WCaYmwjuQZyyIGY#O7MAIXNJx^cqBjB-f+fjjJ63M zIIa4_#4_NEnf_o$URSwFcPn<9+^#nOH=+8YLudi9mD*j8ZoQS%Or>Ey%!B)6IiXe; z49Wx03xrF?jt7moLBYV~0k&x>e%JJYKT2PcpER?Br+D~zoxV51lcW<+B(rLUvA$x@ z-+7d#vg$g`op65`$*Sq%F$OuE3d&{jV1&LbqcpczgIY&8m;7q~Q%u0ELcfK+0i2)v zKzPn38e~0H+}bePcud^;k_ZiyiyFT|t2IJ2{mZ+l#&pi~6^*mTR=-x2X7b6ek_-)?s+P_>wHV*xY~Z54yNbtSt~If*AWqg5aK&qyaV!2DRB&& zB~6(TQ(ZV{_NTwr79|V4(u*OQqvDuVf=n?PRYwGAM-cV1=^U4II?#UXjnfL*yh>%^ zqCOn9BOhqT>RJt0f1^R)#z5TSEr6rAyG!xmvsde#3ZafL% zFc$F;v?7yEX|iJH5AF3_Fd{Se!~x9_Lv^36rcXifN|A`2cK zp3d=xqjk?$_AV7lnnVtkmRFC8N=|D0_K&c4-sE)ikB*LW z4*}$nq<)xiH5vroEmCTMLYhc4{^e}{i#1*4rjDbRtZ^VPfCw~5_5lN4ILfV> zTZl)Lm?Mb1>O&!!JbiWnH2c!AByX^0_U4eckd@Ut<)KJW$;Cr*6w=tLXF5^)Q`lUl ziPE_pfV9;5FhNP^)TTtYpfB`q3zNXv`5T)jo)_B~%-O%qB|p)B>T9aD+dMVP<$0~Y z$m6tI@E}pEd{F`>h{}QvgJMB2h}R~POW{HtPUBzspae1pY)mQaB5>&#w@R-z9x`Lr#;NQCA;%ipw*c?&}euRQ%3oHs+^7q+IeMJFSQn=gw|5Vnd*J!Z-Mbsntc{-!Q5l-=p&NT!YKEO_Tr-Vk|L& zEl()mi8GFjh8{Ndq3ZsM!H~Pbc^mtzz$L|g=ye^~`c;5}8XAnp&9T9?Roa_OGr$fE z9*rnrQS9`XwTtf(9?A*Gk;ar8fxI}tkw(x037)kK4;TvfiJNKPU+y8S2ygDb5_}I^ zAeR<^NhA0AE&`31PhphTV>;9GB6=H>;27|qO=zRxLFUUA^0|%+9GD;T=`J0$RuD46 z?>PVQ8Lq+q^i{|h^2Ppx{R40Jj@r=-rV9Da%=ygc|DI)hl!BdR%D6H3EE;fju`?Pu z1D`NRS%g4+5T6ZWu{r2ptlH+k)$gP5LOGjDN6aR7xJ+lV80ded%DtFvBdXNCtB~*A zY?izwGCYhff<2pvTWRz-qF7fetRP zY%2s}f^)j@9l=)p6Xwp#AaXR~*^RYK7JoDocux}mk=ioxs0#YTxWVc$^6|;%HT)P5 zT8zLPBo{anV`4X7m+$`UnqRlaF3)?8A)3R2B8DUOmHZ~0mj>M#{l}YP9GVL0bq{<2 zyZh@sNklsV*Qi$SnxJ;4{Yz_loiAlU_qwgF7>a2EqGE-d?NQ zupt*fYDg>s-0bmKD6EJ;V{rW zDqL(4xj5WFV+(hsP!Z^MzTR3=JTw|~hP1Y|UIm|sp*uW&L)=?^!~504oAJRD_OV(% z^XADz*g@dKYvBHQdhxIRrP@@**u&#w#k`O7u0N@i+g`PYqr^9be2?evId}W&AB~E- zFpAB(CCp^Z->-Ya`)9lPT_}F9bHH%UNL z=AHS`QFHSW1?vFeV2k!$5{I*2XKU(X4Dp*}&Uc?wPkzp>YCz>u>T+0;hK8`;U+tX_ zXK+uuuw+l(qdu#Z&tD;|!%;5`CktAV{8lfN>sL?d+Zsq`r*3y`wv>}gV4qj<@bgEe zgxa-eEzIKGiHHRw?QMO%{DQu~7lk#$3O-$(rcV+CpQ?zRcSpVI)Q!Ob2a2G4ytPDN zl7i9F;yznvYnCx=^`QAXVe~6> zViIBn*6G&1+2>)z-uHE7>j`l82)&A|uLhkS+`WCs{!mcJ5^AvN#5|wqb@E&1dz}r<<9zD^9 zdUA3FF}gT~510F9rj7paR*IY@L|Dd7V>7>WbOcwCdH+lurxZxa;2!cxAFPgva~bD( z9{YxW%_-L5Gx&6U?T>GY>of*u-gjpg!`sx7u9@Wa)wuQSV~qjar=F|DMA zJ}XB)N=L+cgT83LE#J^AfoY)sJoMi;?cd(Iotc6qM=OQYdDDDQOQr1zhN=?L`D?Kc zDO3=C=Vo;|H(;_TyEjs90}+U9J+W&1$3}8>lpIj7XS|M#EzTh7#m0TuMt zW(zvE<6XS|G&O{ z)dre=^Ohj(_#fTMEi3He;-b~>(8)&(#QDGeD*tTY5i+wC^<#?wH8H7lj%C{qb-2eZGE%z06aXtsMkWdov`;! z;`b_~(z_M+mL5GfP6862y`_hn>3Y&+#f7`pODOkX5oniz{{Lfp)@1M$=Hwjo0?mc!7 zPUo76y&t?bAff(Xzt}A4aUw{TGRs8ovIMzV**ey-jNWLn<3`tpE})R8rP~K`wwy zI9nwKayF<4SR7ft+E2z@A201}wfe~wl$K^V@;IK3WwX5_-Z7GEe^iP6{8s-T49o!F z?mgE_`Xg{kt(G5yAp=07;w`8DN8hE~Yv4rzyfYUN-VG=DCo>o^E_2Ib(Iidsd)}h} zs-lldSwfbAOO(gt<6|WC9?#_0WNFgqBtnJ21eekDF9YcwGEQhKSxJDtWy;vXjngvECfU~j7;T=60?oKEQ?!B78@$^jtuL0 z6pyx>EEaMV$i+w9qm#&*bcU??7)`8E_R<;Wd{i$}@fA|?Jm9g@I;BL|F$8>Pbz6>& zc-=omm;1o|)$$QI!UTO*{R17}*BgEc z$LyhLHvT@tq*I+P)ch=BJ(-_SLmN-2`fL8@E=U-kC9N~|dUp|WqNkc~59s0^tJ<;l zm-k4UZhlr%!bPND2pF8b5FH~EEe4MVsArv+*l^qC0b>oa!Y%M9TNh|jz|>$qnJ9E* zic-a)4($gH%QT6LeW8elcfcq_9}uuw2dL{BvH`>17+p@gcAuB=Pgj4(G>D-V6AOV% zqEgNB+=&AD2>@Jt9Q$#3#QjmX-d1U@*3t!>Dag=;Ld+GQ`|Z8Sx8cHJy<*)fU5*b^ zj$c$-iF}?O)8tahMSvioA|Ud;f5l?<3{ajrXFCJ;p`IV4p`jsy=V!siGp$+3rQb5* zZkQjfKR^~v7OR>G5K#&}w`TJCdVM9Z;cJN|;B(iw-{ktMIGR(a;ec8Cy$b{)%tG}_HXwT%Ox z-x?+`%a;a>t<&cr&6_$SE3+^gHE7=7-kwqVY->O5IskScbv`pBNI3M^FV|VcU+V&D zy+|b}I){ow*Mn<=_bUxWn^f&*z_Uqd-J!qeTy_DoUtV+x=Fb88JxOC;zcse4!Nfoz zzk7v?2H~(bF(~Vp)CU7e4D_ZTX9}<-7>OvVv)byNcDgzpEphgN3Yy7IBF(#~UwS6;fX*(Seof4q|8Pwd4QgEd{__HAuZ)FKK$BYxiy{(+~m7KZSc+?!Q!Mf zLV){}YoHw+Mtut&iK3P^$cy550gO-iE-bFb!S))hBNh0V#2i+dKWzwjor&!?H^r_C zHMn*Y=r;Lc0Xo%?u^B)TBmqu9`et0lDsRm@6FCozU@3#px(F0eJ8FV_@u$cn|rPWCXr!`jAmo*nItg2#`)v;OSzi z+Mm!}kc~_-!*`I)q&`51L8!4RXRO|5&Z^t1JegW zLmsLK+=NLHZyyC*le{-RjZ^39Owb8Kc4wD0?s;nDXO4AM8kEwgnQAhw-P09%DUGJa zwC@agYjlH-ftc^3%1aZQ%OE=ST3_}wjyI}haaHWGr8=Ma*26hmjwxKKEB=&Tq!=RK z<+by}AlXbDXls*R^T1EtBmojy-umW{z5d~agHBOrJ)WAGCzTt9(K*OhPdHs}@5(&* zD>P=n`Myh49S~j+OcfCZBakeL6K30{o|Hc62oUgl=MdGJHmFTi+qn!@qmhs=W=G)A z0Vvqmk5qlr-g8%k>_zF%y!`zw&DNcKQ)wsTRf$C-ANJ*u|1G;#cQ9!+>sWwL_5{sJ zT`BUrTp)j#oLMK0+3G39y0v>3urS=*T zNFsl$xzF8h<~wHdcw_c}mWA+uOQ)G26+>iqNI&@XU^=o0b>B&$F0^Ge6cHqJGm$Gt0nCDaq_Xl=PkF#72VrSDl+hLyT`}MlxKJt4pU-1Y3Oozi4lDZX?6Pv}MI7ab z>Qu4ox1L{V(!4XQClZ~(MFaL<)y+k%$CyAXW5rE!m}^vQy!z6XLF7!l^ZudZYmiAZ z!nnD2AsiY3#RW<+I}f>f3aeq1=lo?_F>Z#SWyNVH{+U=4;6Rb!vAv?pG9S^e9j-QJW}c zP3A?n-h8T0ZF8wwKkha9`XSn}i+9z$?hs3jvFLaXFLH{aRlO3$`lY!VKVweDyPF%km3#wz$fpB zLw^xMs;et6Q7aiP}c%&6q;et<|~x&(z6Xlpu?(({&p(>hYvBmF1g#OCJbR=MX+``tupTzrsYm{qzRc(IVPIh zl%{n?SzY9w1#cPa^ShsH2@AN(qGd&x%SY_QkH=O=VY5=0oTDncQNqXnFh!?pV}uF^^aia(L;@fm4qF{%OAJhzL|YZud! zU#7jCDn1v{`61T5OE1l8HJ3+6rI;SX2WbDt0mYq1Dwu==O#3{H_YeIp9Rq$OEa`ma z8wZ3`e_8MkM?#`@Q3aBNT-d^f0s$#M1~f`N0~Qj@HaJ6Pd$b|vE1FP`@T;MW47>-9 zk5eUY`#bU0cwD(r;)zvoX_SaQ>!HgBomS{HkqGPGM1eX`43YZykqCuNFt7HPQd*oR zRTj9)cY&gw!~RjCq_&q*GGddBNx_s5FwQ}vlTYAbCFXP0mSBF&T5NbL9lkwQZ|7x= zG>*Iz6z7yG()<0$AR~mqiqW7xb0Fo7{6B2|+oH*BM!f=bX#wI-gl1isy}g?s{GsoH zU|<96m%PSX9&QTe>~O1+8TCYA;L(y#^$|=$?ZRBYFLUZBeE;Dm4(P^==DmKBK3Vi| zvKk_sM7V_RAV@@bzeK`n7IIwr+#4p<84{ZhX}Q;akX#6f&T#IEHB-+O<3$3oy!ci5 z7VqidDY&koYq@WiFlxMa%9=e$6_B)S@+{P!#JQhR%vGD=4MW(KW1_`^@Vj^cytQj> zN6g*bFK{)k%~%yFnTcCO}z>k z)%U|y0pwzmxl22SQG5*Xp(WNA$rNJ%;uHkvYi!GV?lJ{D2L|A90AU@KBRk>!$6NJ6 z1-hq-P>fL`gwLSE-x?EW3|Qe#GDl$RQUaJD#e|pyJ4$x#q~(a(=H|4~kA-fG6iY1*+yOzpe=+<|Z@@RX;Sh!| z-pQeKF+{aNGFN*(x6(_}K5m%v+J9!<=>2_tyxs!W{4E4Kj;4L*JpanZGlCSWoi;QK zN*Rcpra#?01A7LLk_ZD}{DB&F5&rZUWGxJ}!DTCd|K}Io!J#*nO2mn>#z}S-%E3Ml z49jn}xn3e~7garaPz6DNa8T8HTb%+vj|%;D;sja~v9s4KCuWAB_(3kTdW}g@bNbxg zU94^6}C66xN$5TD-2RxY#d5$maodXF{X<-fMK$_QBV`g_5FZXHXDj7mLxj zP@Kdw@vzh8kD%>MY>oRMk;!ik%t%;#b?}w2>ZWW&6tEq=K!G7XZ)QrGCtaN<*@vMl zy*1(gKuE%*UuO*YiXet6AWP<|{zZFP*LU;OH$a+MK-00D-0|ykQTf!yw*jDqmR#-Z zOf$#_VcvLGQn6KO<8T zk@zUBnl;ZU`P%iep~`*a&7h71RAl%@uUd&3RT-e#F~U6|AS%+E8Bv1>=&)gAULVd4 zibZevPXTJ+b_y%@62Fc$SMqgYq3>GGSYq#j!kljVFgkX;S3mj^sa4_d^6PDDF1L9x zXCr!7pb!eVvS^g3$#Rj~{zxo03B0FhMdc(&OU~eOz$HhJ{H??&{9YK=7;pe}R>Bym z2KNdeL%Oh0QgYjAKdUfG7Ib)14+%Ux6g3rC#(E5 zF)izkzsQdnjj9vAXqGTM@5sOdK^)CwIbtz*j&*Xs-#}v!0*L^Aw_7;iUwDXzoz<0%h3h%bzgpPTh9p&Q9XZFlhe z(h=YH%WLWBp~oN%TWin5Te^W{-p^&99V&+q5(ArILI9XqrXwBr1bk&a6DcFyO`X0Q z{(8W@^>}y$GfD_PoGP=pa|-6ts$9wmme)L;6b+>#+_`2Y^lhiiACBThwgNz*gx+5L zST})^pLtF`{k%a$!hN+le=IM2#b4aK21h}*ys*#v$$F#9eMSX`>zSn&K>M*o{3cmM zPOs~4w;@+2h2_qp2Q#(o1qzU)mKY(GIr^{VeyN0Jq7YuM?a7DY7N4&Q|8C4D1!%ei znp&k|00Ea&f>z!j43V7$0xQETUt*R~R)$apihQh62BaAY;a7mT(90@9MLDEAut*H+M-%$Gp8WL-hq`sIRNSD%)mPgPSqCsshtnA8f!S&v*X zCJY$PDD|=8ilUGHfPQn9pknaf9kz$M+>0RWzJK|uKO>Z0ODh(gN36>~7~SEliu3u1 zgf5|*eE|G@qUq_>*rEk4y6eH}wu=1x0R|cY#iR{o5YUJPjdkvHbyL-2X9yFXq6NNc z(>mqmZEka~){>S$izcLXB)itH7UF2Del!aftv)PUi!I4;6q$u zx*On735C27qRo^uK0?8aS8w#r5?0hkeREt3cpS6kdB5`HM}hFGaznU>36h+~W|5;o zq=YIq2uNG3PUB40UxuF8jbzSA8jJG?HlHr_?BGGXd+^8C@+9T+0T*85+e7i$Zv7CG z?TgF(XH7oxD;fY;GH!DOuK3Z@rT_hkXeY09yAA=bJtmEn@1U3@+UM|2DoDrPLQ5h71uze1 zfu6&Tok%ks=V1Y(Ecf+fBC_#{L}r6p(PI{#{?v>DX6I1UJ{vHf8z0}Gv0inQ*WZ5h zbRK9;t!i@r6%ypUP;JAkn94W#HXETNP@gMwmaxRKjeK20{kw>v@)6S+I@c+kK1+6( zA}I6pi&}0J7`l83aK{y*6;ZPZ${`%x2`nl)dNoTUhi?>PS84bsS!Q(sk>iWrTX*~U zMoM6wGU@kl3MB6P=<4&68c|xz1SyR-i5Mp4a%MCd1{kFb*AHipXD63=|q35M$jpMI9g3HA>{XSDx zrGNd(9}w_Oq+wuBnb*;%P1bM{BU@}iLWsEY9BDT4FLEp4P!DNx%i{dt8aRCOMUzA! zsDKesj!v~LE1*^hhyx&|)_{bKuGHIJu%jXPM=cx)ZZ4Q@A%4q38CL=9u=riaxh%(^ z9}`zO8vU^yc4!wJ>uPtji2O6k^3&r(?KMuk zNfsu@AHi?_AI8o)tjew3`db76sYQr%3(~E0hjghl2uMrUqCr|prMpAAyFt3UyK@0j zQr~39`QCHh_gvT6|9H8#TVeUkXU=(#F@A%5eJ*B5_hY!5^JzDh-psOlM4UK9r0{qv z$`ty_*@tt1=gN96>}|O#k5tMV4Xp6hUS6EGxoj&&zY^fb*k6kx4^c1q(7Im!mE7GW z-*`^kWBXaH<8sz!2l)|ZJo@Sch|6t*#>_HHvDe;YF|494$J7L@Zn;F35AGgcYYvBA zu{!HR9AfT@a3*ao(I9M^6EbRk=Myns7Pq5NM0?#*8l~wHJ!13)E>G8cs}D53sJ?+N zU-`3NSEXp6=EFSS>JpUe&ETkpjVE&#}RdY)7wfP$$ew178{jH~6qCHxV!XK`uMDE{a% zS=&4~0aY874(Z|qCkaj$N*PIi_n|BwQ9}6ZHpoBIMbQU!>$&>J;&gqiqilct2tp3V zRwBSt6ob4aPt40@b|<&7`4WwIwt5Ywm3*($_7U2Jey<1|K0p38^t5reCT4J}iyB;g z{39^h%U!iVOT3%@aoP*B@t0-h{jsbaa|mru?<6=A$UnsPeVR&gRwjvNG{@b`Y^)8X zOlIY>D&!x0`TEn(-icL<3d;fMWB=BVt_(4kBz(*vRRZcRQ>3U!3PIoV1Z$-FxeXH8fe97ICj(Jf;e9I%S>C8wZI6%=WXIFJDmA=E6N8l5jw2@zz&w^GiGBYDNm-8Ul& z-6N~3&~NSdbg3r*hJr44HwXwTtUS_U3k^#AZGFiOJHwqC^W}Y0q!JQojNuz7#su#s z4edQ_XBW9O2)F-!pxxNL*NN!tJ2RDt^gE)~vIV!kQt0u|GdI-baOSB7!`S9tdi>G) z$shoO!%A69-uBbAr_16zH*l~tn7|;PBd*sWz5W=xau}ri(Qf7|3wGD3L`JTp!uTg; zdPG1nq@*Hw)s~VzSklDL6Evj+xf3PA7GpWB0n=c465jdk-a3vWE5`9>e?@jK50F|! zsb4OULe6`W$>E=2m0xVnBoJ^GD6r~xq?T_D+IWm_M}D`<#s!uu+fS%?T(M<#hXk^V zghuO4LU1m=oo%t&0g%y z+8J!5TCq>g9%;hTVB57+NkDR=~yL%Eavv;&Pp!v4g zgHrk%A9rm>m|Or?0X`~)Jg@@gsvb3+{LaxPtg}6%1A_=HThf&y%OiMZN(|<<5@G0c z^SzfFHF;G#B<5ZYqZn;yI8O0D^? z7JhDGGah8vQ^}THbA~q-dHEZpeFM8NPA=Vo#VmDxVdU!;hcRFp9d!;QL<(s0#L@3e z7Uo2%IzHzv_2yGwe%=NAF$&4^6zd%3i(gKS-ermIBlx2+JoP^1J9o zN!!G}21hFuxO;qZMAqi1)3J5vm-!pSGzDQ(-iPO}?tgE5w-Uq$ zhZGe}{q8BIO~W2(vM6+h{U$K{r-FjBvEG7qQ=@s#*$9wmNif8Vhoa}#jeXdPXy->2_{Re}% z6yvpmU={*#mLU7pj>@`}+m3am1qu7{Zm)_BIgD)`wmsLy_J}vtll1rmPe31M1w22G zda^(g@!C7cfatM*1L5uU8D?7BVrk~L>jbAW3C(puZjd>RVt5z*wb|fmw7AwShgTkTW>pRz^yG}7tEZXl(`oKPK48^GW5*2rP&C?+vB4DNqdApU7F4Dcv zC0i*ZJ6T5XiG37~CRSR)c|$y#?yN$<>B1l=geCudK>?V&e0?S4;-&1M{H>={#)CwT z&Jv+mKP|c8(}3qq29HzBue)beL?_wHYNq$Zi(HH$b|q_X+wCB#J)=GUj!CQGrF#mW zgS1F$&y!|{qe=0OuMgMXIZqylFCrckos>sy^1vBS#_yWYw!Ok)?2A7-p)kAAV6^*M zO^uppewsR<{y=P7P@jw-PZ76izQ5pO)^TU*UqV?IX6rQ9!bWn3m_woq^xCt>OG-EN zRNOj^D(e=2PS6sQPt_D7sGKBK1B@Rr{zxmoi;T3Ac+QnkMJ2!W-z~0-S(I#rV znn`;?EY9l|4I}o=MHVF?5A;7Ma*VWatA1^zVfE}5wg5cWM4?2ivb&+xy-_f3K?Q7T z`DmDBcg$nV6UKni0OyPQC$nUd7`{YqR%jR`k$~QIgmk%fU%}vw(`bH$c828rcmmsh zeZ2dpS5EV{?zzi!m#G7G#~9JWpv)jfU5=w!-n=DG7}6ODOC)SO3G;ock|rad0=1aK zA#$loC#tc!QISCxB9Up&9w zyc886;mew@PuS=h2oGM)N?wx;-R=?Z~O874adofs%a1(wYCMJa%R#n2@5(qAQ{)7691zJ~4 z-w4K6t;L+v4^{5a%1~N~ z*~`y-Y{Y*12fT&Fxn7?yygo1&csDo)r@%5YVMsUCi8io**2tSI7qiR!9U=gmWUT@_L{Z3SqF(MJCUCM1K7G} zgljfS-!oR3yq+JTF6#Od+;F1-cOP{_giOMg$4#$n!N`IWA4J?eOG z@j#H;RsZtKpb6=b@5kAD<0FQaOs;qqEump}9pX>knhc^KH2=6h!;M2Eai7bEj zd$%ZN#_;0Mi`VvRo~xx(W=_slQrtq)U0q%XIS%B6he4z6J6#mBoRj(p@#d>!Cfz2w zjH9*y44KOOci9DT?86V>pRFQyqV`k%39DHN3FeSZJ~SHn;W+!Zqdls9zR2r>uNYZaPBb;uymousa0>`Vu# zq?=L7o0U=^J@O>pY7`zdVXxf_f;(f6zXkW zrjsoGAroC3Ew%-yI;kMS1cK=AUTFCivhw_S>biu3qg!=*#IYdu*C?im5bihs#X=&T zMee^C$2_>;VDsEg=b7O|5RV$4smCW%@Ngb`ljJFnzk87yvpzYGjWBL@KaD=w9F*UX zdHx*J5YU^-nACy?F4j>ZE6bGSD6GIabJtEA#t*Hcep+lZ zOhhpTLTf^>bg37Pmw{@N>%IKs3c|+n;(Ib(OUL_q8SL!-NC$}RS4kT8__uGfMDQ`4 zLAx@O2=>$YTDx$7QjvZ@B}x(FEKP z#2-SK?EwZcg9-*>y@O}se|_WsyEX030j_&x{rL*y{_OGC6Spb&n|aDE{G^h^#69#a zsF!dmK5I>Qp_++&Cz{Ph-L>5D2j|{W9;f|9$-;!!Wl^+B6=Yj8v?dA7?WOD(L?>^^ zoDS-E$@OS`qsS5qCPwNUK2efzsonkBVJ~tmh8}-ND5d1XYSPn=mfb<-_JDjJs4EtB zuU7$sLM30|g`!U%?CXekrmS3ytU|KYsgg-kc@#WL=^99ZF*&SZr?+3gWZzvd%*pM=w^d+&= zKN!ODCe6eQrJrSBi9fZaC{L~8DHy|~^pDxNce|8a)NOQ;yGAEjrOJQ)6Oe9~Y|Gx| z<6|QB0e{&G{Sl;UWaag2Wt+sL0BiNv=P`-J?Q zi9y?Nr9*A-lln`Ouc;4(AMu<{kAvWS8PVhpT)4;PusrTTlw88Jtq+KPygKjuSnk6-b@_7lch@eB(dpCUM1Z+9@p=G_%{FP ztNmwPKxJBn{1O4y%la-p1JnSpBRf|`oGyrkVg-q&8b);b8HW?Z@@{nqQ_uzyzYiv1 z%I))R(G&Dw!0u!RnqoUMw-w0w-9N1H|kQ7-YdQ zy&_1&Xak%Qx|0y7)_)+crVFS{9^Z~+biohBrFf#R)bwufo$Sr8oJ)q`1bs%tFj74{ zT)4(zfGR#Eri)y#O;UneV)wq43{%oVC%&w`h|wiw_Z{ooe-}gUAlT>>ox8j7ee2WfGtxJ_>bb|gj^&WY zN}W-+rOqf>@(JH?nbqmUms{2IWSupt-29*h6e)!JyA$U2exk-6L$9nB;WWy`{D|z( z6_RRdN+u;i{^HIX=rJb1YWL(llAYy^x8@DAMLpDvY0KK6*SdN&iTY?2n-i zwM4rz+pMR*fCqB6+DeeqWZaj8-$S<2d;;df@8KR5c2Tjmbv<y{7X_0Yh3dj z^s54=74M@!FNOBZtBS<4Va)SvaHv7$fb=m;8j~n#wvw^c<`n=ibfQR<+k-v7mqe|oNP^9a2q{B19SJJiM zQm7OhU1<1w`WRc8Gdx%qu2+1>%ZpPtEEcK{c;X z`qMmOJYt;!sOgGks-n_tA8`hYF(0avormHfay91l>y;6$iHqN7=ClE43w0OYPj?SJ z9>1H$AKU=Af|shvH>25RoMzZ?Aup~M;#C_^)Xr=?aMe}x-VJ#P*uS3IA@ zG*ck9{l%2Yc?GafV$lgP=t(?dq@JI$!-!{2AO!OAS8;S-S)H325rBkB68l;13B?echKQj_-LlQ9GC@XQc8x6 z)*NFSIu(T(0C&K5yIkd;Pu~KY=und`EO?W2MG zFj4^|H**57;KYNGAbHV>)#x;V786?!@SN zU|Ky1k`E)+4}H%j``=Qh88srN>)BfiVm_*vD@ zv+~8KQWlu5UiKI3iNW%e8tDuN;>F)@^~R}$vD&1Ijh6?QTM^+nPK42pWusJcmm3c& z2;Nd9rQubguk^-7Ax3-Og8ae{V9*#;6J=*?ifKX=|*$iq503vkr}DMY43#(D7QVbdl+C3UM0H-7@547w0wv25|k|SV2rGW6P0bc_7@vq)^ z{^y*Q_uxs4B)mB0&bJpQ`ph41G}OJ;O2SZSJ|jk+!gL%^%MQWM zb*n8idcPFa;u-dbK-V!wyD=2#ZCoj8JiO?WN5s$-;lO~v$37-WoaRR8Sv8WI$LjuP zlS3~gy>*|~L2FlO-7*H5S&wFocYhrmp{Nx9hrcwp2(Mdf)1?CSy}#HN-pmwU^7kA& zY&HVkoA#^gQW_N|KgJ&q;V+f(I1nn1tY+1WSqfTAmjo4Q*UR6#!EyzylIP13+WG46 z7hi+KA{B#Au8$`Y6Sxy=KFH)|Gg=}$>w}tJMgz%|eT}Zd#(WHlsa_O^Ei#BYtlTqw zoxU^38*SzAbL3k15+C&0qZK?vB6`5{L4xWjFj%} z8_Yzodn}hZ*G`{4{q)*mmVw()u|({6RryY4xBRd>&|b}G7T$^!s_pj?pp$Kc$TSndve?< z4fkhLOUevd(i+%exEzk0D;Xvzz&*wk$A3jmFlatX3D#7!EH!Ke%72wD-#t`l(c>&x{u(VeBA+KEg7!D9wJ8+ z9U{}QY;yb5YLgj>&Aw>bpGo`PnV$eUnp;7R_eYN7!fy_J-vnPNyHfMH)$NgtK6?Oe zd*K#q;kN}3j}|Cfgql%@X^9wA8vq9B4;<4$V%{3MJMlg_d9qKa%r9)qcnb5+k)=Ap*a&lSf_lyY6GndF0c*YGJN z?0b{>6K;;COCx&U56WWVm}wE`VG z!Moe)fDdamOD05Em`|9~7}OJ8H)45+s(&^(9oSWcf*0if9RFOZKAf9%heE1k9&RjQ zLcKUWZuYX&k+TTsf{uHWjG7`Yq!#<>!@}sn(TtLo$S=<5xBR??6}?p3z~yGUf2O>O z@!Oj^ye%y6X&)9Iq~HjkPGQ;%o2sS?c?=y`4exTA@4yA1xb~9JA1!&3*-y7GlaJ+9 z?#bKw8u^^w8?Wn^bo)JJO2)bTQvlJ0qRS43m*I3a(%K6EO%$DyvuCiP&JQY5hLR zLOpKu#S8q)24|Gq&o5s8j2VB+{s9InkblcP{g?v7$*a<2Mx%;7Ny%uvw4CViV6?iEOE9)9 zu3{VRF51y_M(Gwd#kP*#>y~7l>aw!4NqHMos zjE3Vw%ZEDqtFnHB+u<~yj|52@+pqv`bHbC_5F*wPjVd!r$~q;c_XV*JP(s`s{6B@9y96I zbr+O1x=w^W-RQ$UVV8~P6Td4}dH^1=2mCnAL*shBJr6&2+$Iv`sYCt^QoqxU0Z~Kl*WvWZ2Av@h^6#NWt#o!tFj+K=t8`VZqcm=!#nbyw=q3vHN{WX=H?0ktR~?F-t5tag487Usf< z^elV5A7^tF&ujQ5X>=&zjC*BNK((7SR1%4nO3$Ch+iIG9P}NI|vGc3o@=>#{vMXkW+*0lLk-tK>F-I_#f+AgSYR9kgh znf(GN3((!zg&Ll)i=(A6a7<66p~=&RQg!ViuS6|xJfoCA)r@_i@_I2zn`ZJXYz(|9 zbruMV!XBSxgx=qrwjOd3UF4riw+Ld_*xd_=he29(IY-=>#Dj=tc8obi^2vXtmk&XS zkoZJB^~0qDPl`}eNLkjGOXC#|O~K)yP$B29<+Qv+zD(M@bVrO;r~21f|MDBsrQ`jN zr`&?06KP%P@J*PHmhQ+-3XMEv$a4&weEWIUEXFY93jqT9UuRPdl&QqpiV2kz;Q#HH%Yq}X8#N2# z|7Ak_(%VWLWa_QNH7@>XY5Dh4!M|Lwz?Z(9BO>o(Wbs3~(Er!=$eKdD!_B&Bo?3=L zC=vT{gu|VC>l%&1HfZv=YmA!}_&=Q#7#R9w$L#H{%{cO$ZBjr>f?@#s3ed$9i)yMW%C+}QN&l&wNNTbbE^JUf9 zjlZ%z_76#a^Nm8$>yJlBbAkX_#%AWxsH=D>zaJY(r6f{ky~74-Ph=)_L5Q-!r%1P1Sl9<4OZg`Ns{yfuhLkbdUkooXTysMJ9hn07mLN^H*-ice+h3;t#zmjex}qnv-iRkaOMhjjF0N zFN(+h`A+}+69FpuriTwMgND4MLSkfVhcFysHpdSYd<+PAr1tDZuXHh0R6*+^f0 z5c-12PXOZn{?a&%RJQ_ZrBT=E)bdHDbJULgc#-U`xV>?VCA23KwD7fd}r(EU#^wZ6Z3u@IGq#2R(>6ZCUgtpXU@o?g2-AF5ryz`-?2M zT02Dz0o-2^aaCx$a|@Ff{kO}wJ(#UZg=;;Z13^1v>}`HuAH{GOt-hW6-KSbS`d9sj;7j+}aU9dkf+0-%7R*dj&S<@`BjjW_AuOE_>;HK@Y z+P_rP3}%iKx$l71vapr$s>$Ov{(XU(I5?4HdfXz;YUc=WlXB_SoNM7XH~~h+ju~g8 z^J(V>&)%2zfbeeTV>8{!lO=tE{X4W%%Vv+(?s}e508K$p(UQ4;BD0Y5&jNX|e2<*? zkvvO%Pu~7;RUE%yu1efs=ak!FlVQSgT0{)j4kz#>Hpd%C9w>9&82lEh)9fKSW;Bo! zeNf*kq!a0Syy_Py3~|bP`%)A%4W-*eWUHijx65);^p58(g@lm^O5u-YrR~0>Qv@Xv zFM%Rd#Wsoji+7><-gId!B1gecchd=L_Bn-^H6T;O2FjS|4ta=j!3}Et7_1m5P9ZL| zm@@tQU0?Me+#*sw-kr=7f#q`B?4l+$TT3;C!}PhH-V{9z^g&iJ z8g;lxU?>oa*cbsp-JpzsUK1ZMx>5>tk=yC$VUOfgd15wK7G$Ame;1kGmZWrzuKWmB zQa@Hns2-ayhOQLJZ-o5ealTZ5yF3QiDO8P0Gc<4p`aD}{ zaZr)A-LKmK{W0dy7tNI3ed9w4F6>T6iy7y{yd(Z-37MZ-KVO+%4!7bkX>r9>H_d}V zTHf12;W&1~Opt?`d%sc+1Eb^-FuL0T^#2O|E37Ygte-7zAI6ZthE-v8|LFHdjBYOU zIDI^&8psPZ_NiMvn#1oWWvOJ&3FYFs2Kz_r&InDqhgaBI7ApL$L*Yc~k-EH$n{0XKSA&>CW~)T9!YCcC3No@pcc z<){9Ab=89F`6w8V|9IE8x#Tj{RMspW9Nm5P%FMURC)a6e$QIWIbUw+w`0{-12w)n6 z!IS(T)SxHT4U=pl$i%Wd8c1Ld)`z+r=u>@+VOlV~^$$HMAxcK{0jJlNz?qc-}0*Bq{WRKrHR|*7LOOFxJ(te-qDt;I`QY!`%*r4`cg~J_yWQa(Z z!>eb+hFK-VjqyLp@}ikkh-V8$jOP2g)_Du!itlGS>#u(n=|5-JysM6?bJ&vtNHMB; zloBxH8%=E$HJRA0Y{O1@fwnspF@yp@zz%z+cQ<~&x;7aj**1>e=6yuY)69vM$u{CG zUTn-C%O4^gzn;?dR0;^w{xl^#S)gu$ql-A=%o6r@WcANegPX{Q|$$^wIbwSik9MKI>fYRR3bkkD6BQV8#J+`*D3l=*aPLN`E8FTdif~RD=LFDwrJ{aK>c|xL>P`Qb}!tIXa)&u6Lii z(ZKgOk4h*}`Z5^Mt3w5(TKU@fUEYzN1Vqtk%eV1`5pXB+=6i02?RmT{Rpy*6@u<{R zlMbmd8?Ep|q6H+3@=9dNnlI0o#hGiEkl0PiC&n=LPM^JGNUBoFkUT}{K2KI z=zc6mZWDdJdrd4w9OzbC~6Pq$O#$#hCj2MX*XNiyl{V($o}&+3&UR0SXBJ2Rp=Rjy56Gyi*gU5BVieY&7o`459E58uD_>wrqk|x?$HkLD_sMJ(MF3}$=ATIVL zjNxf(eU4M{p>k*abFc_h=YFqiG}x>?aXnwmu+-+A%R?qS&)6!R+b*>YU(u0@C3|Es zUGuFsx>zjXRZ+&03Kh-K;d9L_CTgqbXZVia^`%qr1s&>Uq2kOcq;v6k#*f&XPEUnGAsD z_@GCCC+*S-a!DX zRWS1~s18#kJ1n^j<|P}}d*l;L+aD;vX5j4YgwCKy7RIqfi$gwWD&gpJ_QQSP4pV{i zZ+i;zPLY3nw02a_zS9WpsszS@^qx<9MzVyR(oN>^qaT z#?@=TVe+S#x%z&#L`&0aP3L({?$_r*FgT2OS$zHzU*V7+T3I~gZmJ+lDLcVov=6Ow z*~kmTukz#bMn8EGjB9OK8pz=~sAV=+l;OZRkjN?{Ku8lt+Rok6)>j81s;_;({hy4} z0=El(>)4|w%qSJjpsQd!$4NomU(qb7-Z2Njz~>yawtA9eCfBk6u%GP~wj#PyBA>!U zJdn)4@T#{NTAE%}7RzP3p4)FA$dY2su_##fsF^HeGH=4Xqwj><^E`%LRVwW9A_*)S zAB+zIrI4oH{*dOx+;lnLrcNkUuMgu5&cX66EYWKRI0F^&hPpwW2tX!D2lAX$0Pj;# zzBjQfX}-QdFh}4tpH`dRP>4JA@fnO!}NnsF_lvRJ5++YKb)CveyqZ#^Vv^Ph9t$6@{^{fzz%zmB#b zl9Rt(v&A)ft-o|6110eupf&y$6Dm)}K>ga{;A`;20JX+Ty?Be80oqo-H$CD*lt)ok zP~GH3`w28NxVe!C>RB$-i9@7jtIZincp$QpA=U=rNum@S>INwWnqa9GI2j4l;(`JU zS(~+v(uLQPE-?II&la*{U)CweM^R3B0y$ZeK3-y@v1NF+V55?CEzzs-G%1COs_RVwxfs(>cBR(5tot zwyOFeQhV8!KFdi|T&t&0t+^j6S(#wSK5~N)+@Xoo#izIWQ3F)h~v@Q*F+DD*N&`O)?>U$vy!T1lR za%w(LUs#HSQc3jv=uU7<(J-(^b=WxrPL?uS`f%>wK3z{AuavEBRy=lNSxFH2&SW~! zoM|xa=V=(yt&lY`Rv?u0;pW!tqekO<@A{OUgndvKGai)!T}$>G*`NiU6OMS$$J0fi z3Kx9}RKn?8Jb8m`@U1oj`+d3^x!FQN+5xGBqv5s?%X#IsB!3)RW>krdHg83=5@kJC zLBhkU=q})o4)it7<$`xW@=b5NPF$)Ej$w#GKdNJJ!8^@sf*$knnGYu4j^R`zb51QR zSoA^k&Hiv52_fE-NaG^Pnt&KRr3j3bH%1rdG+;WEVHVyOva9}X~gY?0}CGppwwG~NikuoGj^LZw)JEmNg7;Q zK4PKpEV%xnhJK#RQ%^!j&xlOnkA-xiJI1eBIPK0y)s>`rw?2l<7CiZuVH2^56W7iz zRN<{?(7|E9o-yVLBD(f~#5S{!AIxT=>-||g(~gwliHOX`fbJWfO-yQfmk^Wr9lb3PE$2Dh z8R}UwHA$&Cfjk|7;JDI;FvnJYG}r$~Z^mpqmy-ORPBl*me>5jUyZ(H-S0B#ed{?K6 zeqX!BVPoTCNR8eRaWQH`zjO9@uSBj#dGjhf4B3xLrP_xfSAwP z%b|44)Y`AL9um#3`N}y!75y+c$t}#IZMiZC5XS@8$HXs$)Ca z{dIV{m7Zg)%O<~Sj!HfOyYd=#D*^p3K{@*I<3E1L?L||-Q-);z>xL)vht6vj>>uJr z49pK00plmdVnjGyNA-|orDy${as=biO@;CA=ub}NUYgD3QSz@KA#T2=e$sg5$8T7? zcW^U@n|4PobhbYl*05WB68y>}>90Wm>~omp_jP-8j4L-^)rx7{DxD0K4cW8ZhB??c*+o0fzQ-zd$g zHR|-yLJ8QV<_*6EZ^1bgk%#}Zk`nMYVCM}7o>TLxWU zq?l{g(ESHRAGYBpQn#Kf(M?Pi;cpHWVaPuVU zLsL75vQMgVQb%e`?GmOapNjb6ceP>p{(;BmFWY5ahpKMUz5M8H&2UbwQ;|-i1gNrj zFkvYDDI@F!D{!^VJzfxk&;`SVaQkF zW>b0O_2P@9zMtl5JVN^^jo$#`(R79hlY`09`)Km&KDTobR&HK&>m-)ISI_9)ldq!? zti4hufjE_Pq4cjKw*5K|p@A70L;CVm^XayTS1yN}xXZIun%tbTv;eerTE&E*IxT6z zQD?w@^M;jidJoax1>lkx;gXJhy%pikkunSi6I9QHD?UFT>ru(sLHl0d;=;jgxds&= zn_h+*mBnBkA{ziye^wNIv@$%&GiM*q$1RjJrfk;`Or)zQaOlAGw(T?OP8!Wsa>pF` zI)`u`B2I+l1eseV{@BoNojiiO#HKp6N`HvjQW>W8x>Ev`P$X(5;z;2Bl{fd(qGnq> z-azV3H<#wv6KFseQ3wC}D)Q05wnCtB%^;@#VB+3%sR1S*^0%Xx06(S7dBV3b7^RX8 z(v`GZ7H7SNC$+wN*g94aIdXI!_P^Fmar0fYnW%ro^IS^tkeB-O?`4;@q@n0G) z*&08ASA(JvSTU=oG5^<~tHtyCA8ji4{g{Zu7i;|xeL>7yCh_D8qTb5u>??Qw6AW%<4u;$;tCwEtgI65SQ=>L-CwNB z>M9BE$ZBFFmIr%uo#T)TpL{a`UGW@FE6PFM@l-YAcj%&s$bPDr0oPQGm zAYTm!w(g}I;e^fX`aE~}NcO!2WwlL2mX9T{$qTT)zBeRyZ9rKSj|xBc$+DZ2a2 z@F_xy&6^raPIirfU2Qg(aipH8M=Ou76j;nWrv?ju#oNWTkhzT)s%Q#WNru^G>=2cq zEmBewVKu0Kc}CAb!hodtgnV`Rj{l()Y_G_4w*sF{w^G`$e#5AfHw?xmbcl_F3xlxw zqZ=B)LUyJ+Q=$3$3-tVExkkU!dRFjA>O zZhnTnPYXruFbV;v@CH5njYZ4&2EK_=`$6#Z0DMn-K5;ZSh$w;924O0Z3@^grR{n_l z^}SL;6|owOP_og*ktReZIW506L z@4>(5_w?DaQevy&5G=BcfCrI`1OIf_V`sK7z&DiBF#mlKRkBgHieE`6EY;>$AiLpl z7|Z}-gt-d2C}8#F@HNKwZCLMb0L3&E-#-vsgd7uyzF{{oIR*M8)%Y6LkhPOqz#|TA z9w(e5yyAzAr%Pb?m+Qm!wG|L5k0nK8qT8b1?$S;sZJ4UA8 zbN8+L|6RS_q$z)-mlN^YNdNXohY4vLvMdCc#*fT#B~=?n6gD7wljABG_cKNx17J@1_5 z1$fEcR+!JtY8E$j6V;)lEyJ8mc-zeM`qMMMFJw1l_q}p=1z)-kybSgA zT79j}C(8VgxC6q8N|Cu?Ol^WZ;VU+eY@QOs-jgFHmBB8(1AW*A!PpJ9oZDHe4^b}U zC#|RNOQ5L+|5NQ6fevy6br|-yr|E+L`YK_)8ciObYn$F)H@c9&bi9K^^t71f5U3IG+ zIwS%GC+DV5U+e@d=f#j81t1`aKmU3>F@R*4S`0UHu)KNt|Y+u(s-CHn@r}T zD9ev@9B@4Xjc<+kp}%3)h9eSIJNZ>|7+N=;tMkrR2>L|BIc^By&+Vj3>l!cU%Qd>c zQXZ_TtqQNw3{@wX1=_trn(Q~I7I*S5TJ4P!5{HFa073PKqhD3pxxxzsI1!@HQkt!U zfb#Kze8fz(npEsO@Mr8pZ+DH3n9EELc|W9z)W^B-i9)RPyp>-r14>Lm(TqLLi3ZY^GSDXzc{);0vfc;}Jx5*D2CQlzl6~v7uJh`?N%Rx$#e=D^ zGzYw{t89p~T&xjznBaBF#!BD1IKB$zK55Y-X|Zd6MH(;KEPVNQ%EtRB#j9(qSdb^I z7+>lSrJqRjlcJxO+4Oo*54pb3>{TC3GaiefaJ$job!0@lv+1{uAJh~V&j|8J$_Bnt zX?}29!Q8QhJn*SpNjXZIwYz>Ogg;&NmYQ$;EK1Qz#z9t$#KQopd?g8AS$^Nh_Q5;F zQ$I?&y>qn%M%kkEEfx~AHx20Qr(q7Ml+XOf4OtDKzL8>@vPjhH_TG9GjqI-Xhm8!c z+P=~H@Nt&#RGRnJuLY|TecLAC)*ZGHFl|$-w}uZpqmufrb^_PRj+AjV2Dpc9vcb_7 zADb9lGs&vuJCI0p6kt!lcJh&>%H=ZFA?yfcb09nYr;Jjlh6BVc49;mVxaX{%KltJ);I>^wKRl20GWrHiC_KVLx;HS!`KUE_TL@GbugRkzAQ^ zQYN?52J26~tsOM0Eoq<=EnmA3oh{O#{*`ZH$(q(Xg=?xyl6}}@(`P@l3i!|a7-J72 za8c-@iODg@#16OH?XLHzV0{@VbzdA1wdY*oGaeR!R6x0po7wl8sDmBji?L~ zO(D*v`7$DRBwZ2IWDz+j463;+zj^+TJgo>P$oJ?MGurl8sDFKEjHg`-EZ%ggjMlFL zDq%n@l76-;DE39q%Z8O?Uo&4re6Hnn`7LY&`yd{t+GGHCCl5%i(ZDm7+UzWLFz+Wr)kNE7`<71ii!{z{ z#p#OVe6uc5#N-b!#pCw|9(~MJ!f-r+@hZ5WYRu0_aIISeZM<2=#qhpIA}@1-BB)iy zs6)YgCwY0v%&_;}x^Hsx=(^NeVX(IRb7mdcwkq;pD)&u|+{M%UJ(QnEF7cAW(XZ4K zF{pt71jk1_0W|zdZ>Q8dHw@!nu{M$W)k_}!}z7-JHPOHwvcEh5_z3IWBV~1B$l+^h70{r5-n|f~g06aJ zFnw;2%X^nEd%(p&W((0vG2w+TySXBeIos%qifWLqVdAYY@8hSo*gMz{~Ews_6r=irL)jAYx2|eQ@;`>v4``E^Y653kz&jbD$)Pw@{WJmb z=~X2LODTaq>QW?!>v7eR2LJGf`JKeJ=CA0kY#F#MnIm!lt*KbyliE1g433rYr=v%o z0i!7}o!|3oKVJq6Ez}GSygr*h#-iAP9F2+Y@jG)!gNJJ&dgx{_Dk?fy#A{qe@~ZC}lh*MP86Vxa$)aAr`9>(>R%HXQD>Q((8xB6> z5hP0o*LNfwYqP75e#2H9pJ2#e>awWH?Z!(;cn3hQtgbX^8rMT2wGc%=zO$$y5Z|N3 zgoeh^)EUiZqfF!WW&(f)N_KK0+(wiy@;LnbMmk(02<^IAunX#dggnP_Zjh%rwNyzx zl1QlID_ZOW)2xI5&On}gD#QAyA8hbX#oX7d4wL3u{6q)UdCQ#kh7+AZzZK@%? zrGNL0o6T$n{WZlTWU7&eRF;4v2k7lOnB7zL8Tj*3ml8}Bl=Uh|=dFQ1&0E6(K;Lid zR;Q=z9nM^xELnWKZqr38WIf@iqh$gvgS7smupM=2A8o=BxiH2{fg5&_!e841J6Rg~wU!;ZN2+%6X8-|WQ?W=P-l zsBO}s?pRu0A?BcjVE1(_tTa3teAIBdW>@{E26gqD;EUtJ3zXsY-yt6WzrG;SEY_^g zCSI2buJtoy1gUS5$?)~25-eWEplasKu-May?E0! z_vzc!V{Z|MsE2+MzR0f|^~c8_vclT~kv3{Iw=?aQBM}&WcdmcYkGvZiJ@Y=Aci!^~ z`o1PpYNz>&iBVL&I66(OD+DuBt4OWqy3Sc+K(Em$wA^@z&Rwz*IS65dFpV-NDiU;eXTArU$kL`G!E0^q9cU#Odj9EiIBK-h0S|i`Kvs;)E+_i;D5cX_P?w+3u%*F4r$!K6+0a{6mE0 zE&4Z6n(%OxTf*)qx|agfs|%!}%~Oj$O1)=AMx!3yGBBqo^Oc~Az^DMT!Na+WcO`wr z#9DtM+r1q|fubVAAW}7~sSI$$$pxbyRbcrN4eT}kt<&x6;&hkkn8o-HZ|Vx=_Z8db z9!1N4`)7lym3Q+2au0}UiE<)1sWbD zFRZYB-Ro3#lXJK;)w^k3#pkYzlAglN0bkr7YZ1a{~@G4)xo;O zp%`{W{Y+T$zZ?Mo_mlu4ad?Qh|G%VfFP}w#S3f&`sHFN=8|r@^%73ZnN+|(Q7BL!N zwEh2i`7`ioL_Txj&cFHl(DJ|ki~sd^|Mrtv%s(9O;NgE>HUH%s4r{5an(YASUp8fLSpa+YkWxDRw~zBw1m=%KugUA~JdUsN zKZQ!;4X!7L{eaQt8^9mduNmYpTW$s)m^cGHDauNn|9KWqi;!+bJB3ocG>|W z(;TtNVhI9_OAofHBj1T`7SjUuqutKF zI9=;~r=|Ow6Qsvi0{%;Nj%vde+l&<^MqQ{UG*A3!pXMBZNu08-2|fgRyLA0=Q) z)}K9%iRY3=t9RRrO_aC;GCJsj%Ojs}F-;EvRUO56r+iYpVUO(R7Ako$AFE|U)d@fd zL%?c5fe!m8V2Du<2(a1ekIOXdk`z?<(e>k7!teR%$Ge?6`Rh=2UeD`A)ovL{|nRvkb8}0Iy$Z%7Tr~W3Uz&qbsC*v@cH&2_$s@a@F%XCF7L#S@D0`w!91s#`(wa z``<2%)*9+kpqt`w^;~C7r;^ur@xu^`}oTs$t$JD^?0x>$mbc%UdE=N4x#~;8& zUJKR4=1cXc@ig)_(7T0D)X_xd#f>zeAzn18YWXtPLPd>!^Y z>GU(|k^hX~0}!)~2}^WKNiQ{Wq|$YvxD;Zcf2$fh_iHwO?e@2z4gzPa3 zyY|eafR3y`jtBQ>#npFz+H$uN%?#OI=8xwWz#}{Q2ovqeC-J)fuK2Ms#2n(lxiV9% zcT>Txw^LshmCB*gd&biH^wSWqsYS_sWe2z-exz}&z|-=Nebd3tR@alSpWZy0?2kx< z2P2A90K#OtArug!2{@$_m|>weSw9tij2`j0(*7Ax96j9{u~5k*`BKYX-hK*t`(CX$ z4~k0or!4ttnJA}t-5wNHZT-=I8&JDU)){%eCZ-Ozb_b>qRuiT$0{iUN&;akdE!>Kb zND@Brs)NaVK+-gxqA~yie9+9$os*X5yy+s%5HjUo4$e{;ha5m~Q3YKJWEs9&Sr_{A$B`IbvF6IgNR7awZBWC<(Kc*9F4vJcT%-{ByCOtM>ff*t?5J(S{AJ|G#F*Xy|c?pV1*wW^=y zprz*(ke!g%;1%g{bx19|02l=4Hgbt`W$t(wbsAUocyfTi%z+BWua|qdsCZVPJC|7^ zd0(>pUs)abo5Q8@f*P%pH$*d=AL+aRAYz`AWRFVbARxbr=*l*kY}T=q0*LiZw+BoP z)2=Vku@K{#bQ?=iZ&5nH2#hHlxe7K$KW)-A|MaFU7Jt5cgdUXq$*aI0BoNSTl)nb) zoZ_A^0Z3FpQKt@UZ_&lV@%;Yy#Dvl=#nfviKvbuCl&gS6uti)bO6|{NdlmI%Ev`}E zYw^rR@2iw@vk@s+giEZ%9rp{IQGlYm2SkX+17+F%Q~?hlXVaX}Q%SN!i|3vtGc=+(mA34FD{i_+b@SiE{ z&an(7YBlW62lI2-i80Kk@B*s_RTfh@z*$J?%4|HDYmisp97qkmK3=fZ@&VKw$;Eml zXu!@$M|}{;WcW=UVA4)|ziH?xi`b!L!jF zCXzr8sVU;NJ0*MjUN^;b7?4}2ulgm5Mv*k#CYK=qxkP?I{`tH1HW!iy+)sw09?#zS zyp~t{b2_50l;NV%3D^$4R9UF}1afEIgtiS?GXTXFWW6U!g3r?_TLzznv&eHiuxzqH zUO>yU5X<>)?xTCTF*_6X0U4jt@od=!#k$kpqJpr?Ml$+BE5>kxS5Uulv$jUNJ@CUY zfLifkqyv!sz2l|PYjz0w_Lfm*slho5gIu`xf)buf_)@s`orl|-MI>MViWi*4XX}c>5IZhAqZkjwc!^1 z+Lv-;q=x-9Mi%e(cfy_D)XNMN{k+_NiG`U~GpipLrpwDrhu{E4l=K+i#-=2gC8tH9=S;H1TgwG9}l#L zTif~=7GC=S5RWqY4_x9`eS%lvQaJLt0M~7u$pJ2XCCSn2azyOHg)K65mis z(PD~17<9yI^O!HLn4=N;#lvuhKw$Ta%^!7(xEq6CNQ-Sz+K*;@Fp5@66*_-9fhOkP z2CFR;YB+8+w|)aGMEzt7fYaOO3~cM->-pC3eI#apht}B@gwK<`LUY9j1BO6zC{cbB z{8a97F@3Oz(cCC4@ave^M{uRdbwz%ES}LLS=JWSYVV`b=Far5Zr63G)C43vW8wm1% z#b2z`PY^TK2PGxueecVOauuyV;ofXkU!LPSTvYO_$Qo_C&(R;+gI+79ah939_4fUf z&3%m|HXK&8iX6UWH+_ zTP45r-EC~~xT4S1H-I_7+#Z;nE?O|rP(+IfdSF8|iI8&$c~83R^PSy#URuG-c_aC9 ztwTcYS+B{9YN6?3P~y$U)qI^m>BORFGfp@4)jJ0yPiwq@B){r)_uDZeoK!bKibm~G z{=iYW#19cDzMU)=fS1^Wg_jh_4hl_SwV~A|f zfG_U>5NGA@`U>@4cdx_9Wpnt5xm~J*US+a_^F)^rvA9vD3Y4@0F%S5;o%UryV#mrv zwA>-V!C_O{Ral1bk%S{RelYMq5En`C+SeHfFaHeGP5zZWq?T1^=!{Vy$KA z1bU%`8c)&JLP?j^MBOKEk?rv{UhsMV77fWb?ke66%9#)CXGg={kIEqT4!FKx^&{AxqT@D6I$g~C+ zZ}eba*JD7&py*CFP(6-C!UdC)oLl3lJxJPN*zRPVAf4O#D^bVH;!WOD@sg*5&n4k+ zodWoD{q9G26y}1+{V8ZtVjGBDPkR=~v(zGzw5%dt zV9f`y?2Pe|kRK0zAC@Oz2`>f1kf@ARZ{>f;n?B00Bl(tcm8vj5N%sq2>mq$0dh)Ki%q-a9+4N`NvjB|zy{16F1d-&6>#|HFgUClk0eV}gQm*4{w7U0 z6R{aS#E++wcIhh#2y!b0jb!`&*NpUE6_5bMOSd7;?OwrKTDK2yXjUtXxYROu^ty$# zjC#$Aji{$6L1qe0PDUR|&%d`j!jGsRPC*zn6whwUT)y*6N0b+%AdS<=q`fO3$5BTO zc)c^EN2W_Wi_059*6(yQK3BYy&f^@-Jc~oT6h|$eC4z7rf(v(E^yA_I!&ACd3w|W= zmgDPBoPwFcICI?H?>z#Az<~IiAM~S#g@#uO!^LXD1KqCx8y$Wyz2*fV+)U)Iw0&=K z<^bJPz@H4+8+u@9c0KWy;jS_p$qdVX&AnFhWSbg-a!Leq0c=$J9WVA11_F78-)0Q0 zA;F>nV4cL5aRqAbh+0>i^smnQ@p!;chOPeO4ij4L%u1}r_6GuSxL?3YEvJ#e`Ngj` zoc4z99YCQtKeW9DfjNX_WJa3B-FOW?ZVO(E3*oVd-poS!mkb% zw1jgFNR~;OJZ^H6C-Tc@-wtD!HFXfaqL`%$i;jCIX{dodhCJiESZiC$ts0@5JBiJ9H_Nx}Qk;{fCkMA+=t4r~MT)d9JEyiPBTK8md!n?wq zIBtEv9y#F-TRwT6)wZ9@YW^@MZy-P?<`VbGXb^01tDl)Gy6i~yJk;?2C=`UeU9lkj zF0w9(MvYxzzRYlHKEf-zC6}2hOsY=L`|R`S*Q1W};Cxq{lpBR|bpt5ho$d15sv^=M zen)BH0C~ghd^{Ev^|_0A(l>tP4^=h`W%sR-e+^`81b|w zVDysjEtutm@WjkkAm4y+L}|baiB_ZXOS3}m^jQFA?fRV&+=oup4qD8IQ96ajZ5oPU z5Xsh9kVu*koS$WJcJ#(?Im^deLy0tv2mPRe#!t21MR*C0*kfm?C~McIH#ftN+ygPZ z!?{=}$Mv1Wbx1x1)&pviIMQ`IBtviI4GFqN_frv2&VsqU4pW!SIG%!k4Arecxn+-P z1L?7;4_=$UkvM^_oSa3;=^APv}W5Bt}V-e|80W% z&j!ftG7_)ZCrYVFT9;tI9Zm_%9&B2*>dFv!z^Dd^Hp0M=LHL+4@o~3S%{IyowEHti zr_pVUT3`L3+ryI6ssg={=KhESO{q$W+iOfCBIimqfChtC6tG*1n`@Rza2{i9z326cRx?A9?butq`fLq?s8QJjT8iu8WqoiV~N&i;Cpdka)dz$V9Eta^z2bsCSW zTp)%UOaiUKVD+#)jNud>j_2ail2~-_2ujg4*HNX-&IBm1I-sqg7cVdd_|<+E{){Nd{uIL9MqwVA_xNNj~!` z`}U!><+nX;J)kumixz@?XZCj3eQ%s9*A`|15q71>lW7k6I{0O$^J#bqg3&Z|lq1}8 zJlVu3=4d^4puE38TdfuyW7;O)%_k_k707or!)AY&zhCx{6^kHHnfHG@T5bx4l+whN zof5H+BFdU3H~R>{J;?M5S@lV6NzHw3)iN22eTyB@(%7GP_JwloH>bs-v8sZ+bmM>% z(MGvg9Q0ueD;^#Nzl+071{%y%KeXWTCE>LR9eNn@pLDFfik-5CZCLw+_gcSc-!jIp zRFkSoXoKu{QrCQw=h^5&xlFX*H!8so?R= z!FWg%;DxOlyWY@YdN#2Z>!k_@qe*rwQHPWUc^q(9ivT)q3O6M8u2&|B40^KCs)Z0< zV$ke80=&X&UAbAB^}6jp4A?;WrcB3>Qc8z5Ixu+XlNgw% zh6%#HJ=r`{_GTyOUDt0N@}<(QA1|E26cQIsns=I1rfK}di`*;V!IC3S6ZVN7u1sa^ zW#9<9*Aq9vIwJu3@9(|&-Q!dMVHEA<^4bhR^2gfBWe#lkb+F_J%aVTvp;eZuAv|t* zuP!>BJtlvStv?~RN&iLvF&o1-+TV<9bLI5c*7~qh2z)BLbskS2A9uGjHq(bx%0{fg z5J6xrg`M>x>jxPDCjs~6`!kkgmQ(34b!e=i<^Bi62=Q4>HT8E4Aa$ApvI8Hh$auZm3~eEQ;( zFvPmcOonW{Gh=Ci%2hh05`S*PC{?!i)B2lEYD(p{_wZa2r-P`-UF1VL_}u*fGlASt zw2Gigj2BP9rLthX83->fDfPTLQBpj|u)+{}mt*!pn{xR(3LGAuD3P|Swwk}5DHEZ`3MTUF9DDHdHm%|U{ewrT`)uQ_2OIUIR-lB z6YAPH#!zQk)Qgv}v&CQ(j0k*|yu>Mr2R>1u&22F}_CSwdPPhAEiMGB)=~Ismf%YvP zmcZ}9J<%*Yj{8ZnFQ8pr*RyD2@*g?bB_gdZmA+>NTK2E_B+`Q~nro^tVWUUVxGc4d zpcYC zO3X(#o}`VT6M5hL@cya1p~s@AEc#&$ zoA*{CcbVaN-Zi|QgYx8Lu}&g5iX`8NMos}*`HPBoK^2EfwOB)bsvv%+Q;UQYtxbJb zP`#ozBfUV^o(sG!k5j%aEn)rZjo2>sh>-?hQp(wz-SHEV*dk4@>rFUIy3i%VR9{}4 znusyM-7<56F6Ykjwm$20jJon;;ht9dP9&zmNB6?#bSPN7Ff z(3NAM%{3?X(+(M{%K_EA-9DNQp>_yG;O5sm|Ec~rsc*_c;yx|sr=K-{X;M9d#R$O} zGGc`_oHFf;opTYzq;z{&6`E!4RIbweIhwU8@j@K1M7urBioE&!&X|>whv=Yk`jgEA z+?~B6m~PgPl!km&l>Sn zp6$@&zD#c@;O$B0@f^o4^L$Re4<5CTlrx!SI}YLaY9{N%Ng19nm1;~?18QsUV%_X} z;l9kW1%~pw_bYQ{{PD(8BPO#0ZkS~6Aug@xC^q^qjOpm@?K;93+VD0?_+>0zcekW+ zVA(S8`zdkrf!PjIa(~Soo3CC13Y&&-L1a~g;NR2ycwZEDm`DCZ#_Bmmp8(n|#bgC? z1@{-r0(6o~(uID0RKo$3q#Dj~6I^&A>b!xU1HQo6W&t^Uk}INVoc1}0yfxwZ3HWZ` zEZ>pc5ch@f07e#8M|voHn+xy&UL& z`~+}uV?ddW@8lse^UWDejes##8n9Ny4#^yohlC>L?_i1SRy4Xh@G!nsK(9;Iua#rD zc%dl~K!bTqCrSyL&xtAgpxVePl;(f84Q6`l(X9W4@o5SmM6HPSYE(N!Z0duS3dw04 zE^g23I&JLL)IlY>b-XIHT8icwW;0?=Pa?g3L2HqtBn&BiKS3!dhlM7SaZ`n#f8%2&7}_ zlFrj_UOYGWl*Z@syNpJ$9que=F>>kNYU|TWCNejIp`^_<{4c&WmJ?+SZt(b#Umj>8 zN$9h=R!Ow7b(OBGxhaK*i?m$bM19`S1CCprCjNA~IBJ5e&v+UB@Mxc#RMT_WdTf>Q zZr6T7;{%k*!6@7=k4StzSCJ65zR$?$%ir$~4ICFA=?og=g0RLmiPg-z#a%!=TgT^J^Q!Z${(kflRqJ_$U>EB& zy*TZHf|2=1UVKCySmUyQ7x)11CK*DpF<0Ie58nD|mI=Q?lCN{Te=byc!wXuhMXTVo zo@b5Ke8lbfkG7!jVh0#!D$ou*MW`9IOM`^m=3Cr`EGN}xkHAe zEgi@&-JMPwL)$ubXW6G~Rs{PznZ0)P-ATF~oObiK+x&ppA@&IhZ-?nBB9ohHkWlz3 zYJfhAdq3;`VqL0R!lv0sPV*!D=i1Y+sQZ|KF)U^y-&zCwk~uSX5d??v1E*lnji_;@ z0ii@4I%|23U2DCdz$<34W+nAEo?xDSWruV0%MWz4lRO6rHn-d@S(xvDGy~<;~nyDQcO7ZY=J@J`~B@?ME9hMQ5 z#fskcYwWZ9$k2(4CiKHWskNE=bMsu2PNs(x?!^-v+?|i zp$}HwU_N4G=_vcnpP%wzB;QCTQ{=jnoF`bmP0yEwE%sm$OS+h@*& z`!wVwe}A=8-tD!aBb@}=4lCIv=^VSdB*h$1EsRylmm8QnwMw#_DY@HkuaX&9-y@xr z7jSkw%slMYSs=Mc^qaUuXWb!vVX(E;X>1TQ+tu|AJ6=rSLk-pD{$wFVR~WVfd)WAW zB;}6mUDFq=RxZPt8M5K7_vGb!t6X!e;EK(WSebKU83s$2^jLAd!bBXZa!E$4RnWth zhh!qFANFvDw#UdEwUQ5?J}j4}lxz(nge9o(=|1PtYd^D~`lLGUDcai9N5q2HTDo|O zut`qN3;Q}M07Qt^pB(0HT+M~H^pvW1Ej{r=V{0JuM(TlcTkAFTsYsYRjEAky;}s`p zth}mmf#s0&MM~`b{`-<7?)oKJ$ecT&`j~B%xyKEl*_0K0$ME7vwnHtGpckLTC2dLB zvR>Q<2yp(mv4Ik&TC_0N_ULqnJhGE0v=(r=SDEK4VFSMR(zk>=c#$kO;rEz!NQNr6 zClGR#$~u3kEuK_vBd23zMreBiWu$)W`Q^RwbAV^b3gh#$-$I#)XG7?;*OX7CIq^DE z3xVwp=&ouc*vD|@YMSW+Q}D%0IE;UM@$*qy4F+MIn7eAe%=+dInkbWVE_HdlZn`M! zq?_0(aeNd=dCF88C{LijD!05!VYBE3GPkXxC1CmHodi-|VoWvbqzCzgP#MV2iwN78 zy2+$G6fL!QVo0dXFumG$D^eQ7{e2}J5tHhOGTczH$n|`EwD1`~No>w}y*hm6VEdd+ zRadzeU~PTGvxq{ldpXu|pWDzU$Zg|qOrUMAS%U5{|BP_pwE4(&AbO=kdU$g%A^lqw z9eH=x_lgva&@g~l+FRSAVeH~~g6Gg3K+-l@i$_Ny6)+L=h(A9U%Jxu=F>&mx)6P42 zw=_2$iFo_;?Ag{GjXsRZ{EA3rm+X>Kv7T$*TM15RbA%k=G9#zHm;lz2p+tcd$gnA| z4qqgIVOt=73y*%t1Vm()jSxF&e-FiKhQOl|gqnt!PxyA?Zpe&wUScKWCCkjS-gkpI zgl%S{hO1`mgP#^_$0BPs3pW~95Sz#c)E2X-hpmX{LdW=jlaGea|X+I{ZfBy_;w; zRi?0EdQCE;!b&*+f`)6ouS3CyW`Rk5v}_PmzGfTYPQSK&TIRXmd~ACYGA$UHCw6_v z*9v)QX;yB(nEGKNuVqwD8H%q&GWcs_x4HO2qo>54B59bHF(yw4zG$HKxt09l1#_Wt z^oJQmemPH84Mn@tufNiKKE$BsgaS8)Q22-5|5?2h~9Ch^J0=`7fRP2&7{3f!GHF_m*`m z_5+iSWfm9RCS2zJpHPDpesdl!tEP*@lDY44?YC{rJ{y=IJ>~{u4k5_N3~Bt6O6D8X zUhIz=?9bA1qwo$^65Bm(6N#cdgJaG<(1SqjW*nRlsPhQu*P|Ew9=mnLgCUGS3TDnh z;fkl`^dY}Vg&!*mP4$HeY`(~{QMj+^ocVU>#m+a=B=ZR$6!2A-I-w}PrGLioElZ5N zc8l1L=NHbl%g{;Zuc*XUddCM1KGTJ1Ky2fj&!xrpt~-hBieYS)Cz;K>1M|F5e5_eM zgJ$d4zR5V}k=481j;w3a0t6Xo6}-PNKe^Im>MJU~@$=g6 zmD@4fm%weFp66p@{zXC$Fmsi!pg58y_Gm=8{_D2=a|4sr!@;PqGoGJWFW+iyYShRa zbX@g5GfgJ&4o#eCQE(8CWV@E!ScBLY8z93d7RL{nQlyHW`!o)uG5J^0Ap|)|fJlZI zL2N*M@5Mz%3V(-I1JrEhNALYaI6AnFco zYAaX5pT`fLP1txu^^Rppe|uU&eO7uI&#Qjv6nrK2)qVCU6v3^HiYO3*V?@s%*}Zf( z-t_HR{p^p@gJ)ViXMIH;eTAtyCIwIJ|8UAOqqR68B#7Vb-qUtY{C28#xc~3KKoA%RVFEFwq*50@@y0@i{5KF#^Eb6oq*joF2mf9;Kqg(L4b&-`&9( z0#c2?KjXf*YM$AlhKBb*_E_dbhcA%z9=R4gJ!Z~=E^n?Ye@&kEQX&mqK=kpM-Fz)o zP!FrE&hqeW?_$keQuA>_Ry>!2o6SGTuWn;in{(F4i-*T3<&X51zHGATBeU-gaKBDo zRQOPnyI{WeNmj|pyRJHgEa=Jaw-2p1_ob;ZKY<+0eEp{nwXD>Ad& zaUF+;hqw3&C-}eE4XeELrJ6t!%r=!tOsjBq6q&!Ky_%NlOXNtGp-vD_&lv%PCCgC{ zEv9oX*`gbWZb?gl9D&Q`(GTvT=hXo~<}osLMf#QXKd$lBl{dX6^wn02m0c&tHZ^G} zD`?pUufV-W;eD7P#|=#rT@cLoXNq+AeEs2>hTX8C#d*(BvWdsT8JV}x7Aq&B5|V-v zdp9Q(d|TOy&*jE_ht_90BQwtpp2+LwJ7V9ktEV`ev?(!4#4WR$(z(G*7P3F-=QN(HI}dEg*lx(b%axAT8PZOu*%C}Hi*)C5dm*TuS~o1 zdpm1m<#@4d%6m+OMKLW8pF*hSjA(Q&5_rVc(%D^b>~A;vdd=5^gOALDfBA9R&E{i5 z85Am`oy->$myhO!JZ?zoGb4!15-mM4;OQG*IrPVS_o0|pNdOshrU9?($AFFe=cf57 zipvv_aD@OA^@+CqM}`j1{0p(bWL;`BVt)Dn0Rj?(Ul90{Ft=#)4tk74E-om1nP+lufjcIuv5FDpl+w)EI^33GII zNL)%%UYTgQ!OH>G5i2{>wRMvpB{u2vb>sXU=t`PwwiG8f#P3!{l8p4YTU@UC*Y^iB z#yUJhBnQ&?J&PrMcx@6bB&$8D3Kq(|c?(GlRF$O?l6@Ns-VViR?+jFfOUOUTT6k?&Nv20@zI)az8DEO@he- z81q$+_gJgLQ{Ww0KjvJ3{@ZB-zHJSl{XVjZxXv4*Hhlld^L^AdIBY@h$H?U6vc0V) z7oEdJLhc)Pojgpz)(SxerIZ05>klIf@W#c*Pq(3QdChBVSiQAuBJC4$A9R`-BxJtI z_hZw^aLZDNXI_!}lhZ-tgM%F=1pr*S(>T z7}kMcM|CEMBCRjFBx;%-pC%8uG$`k#Y1skk3^h%02yOvvgx-mT$;`9%vB&unqYgd| zgD0IA)UDDYf7^zWVy?`l$ z9YxStqp&*9@;6D-6Pa_OwFmwPQ2IVkHwxM0zr_ zE{{-D=EIJthzquo{OlRQ89*+TKI1%`*+OPEoZ-ya;;{7%$my0|wwO|dULKJi-85MC zcnPk)#3hTq@YNGUBmHlO_P0~=qxF|k{$`W_hj^NMu#)HXVZu_wjoXqYsWC2t^5Din zZ%lUaQMJ{a1*z^qeHadt{m=|Lu>XmJ+Oozv;g`=Qdh@%V8wWb4g^Bc?(Bal7wHa=43ru5P%^AkS=J~QDyxi}4bsm!^3xqHAJZm&&?!GC)Ve9? z*&yYza0=w#9!|BrNe9#?l5rp6CV%UUR5fZ`KuGTGt`$zI;7Jk>&Md;dZ2;n5ayE;p z7$90^U_*X0RxZ7vf4S*iyXW*fxHkQMa^(v3vaUq8LKTXR_fD-u_iFy?>R{%O+Y$`t z01za}gI?phUVU1Ev%l0G^B&3IGuyE&{R}HXu$e{f>uctxKT?q#_V3HXKTmsW0NqE& zX`;QQ{LF{Pndt`pmqP@j>;OX|3j7v`rH-YRB`}x^M2g!Si6Er%_P=%U9;lh`eRzeu zRn}A9x6g=ytZzCqasqAVK1;&c8d=11G5)cXweb{pCxvrOwdw zSTif_rFykh@mky<2~kBK#Y#hW15r3=co$3CZz=e za$}gfBOt6GMd^vW2%Sf+o=o7FW*U=O%%mqcw0gA|Q>AZgPG;|X9;+s*8nx$`6<33B z4=dqm;ZcYfC5P;T_fMe9BRdP_U8(0I0vsndK%j$kB+;D7WbayW$Mk)j zOx?F~r#@lNky@P7moMS8fg4C0+w0$(3je%D-9}%r3Vt%`mZ`H_^B)onwT2;INkMod zz_|0;G*5;;vR<6}v|ux+3qo&>r~oxoMKT>J_~F;XN7sx%ZS7X-#1pQu#0elYgci`+Bxte~NXK@D9vv2+IK|2f+$8Dq|tK138QOGU@dt0Ee(7_J>$l?ez0y1!j4VF#_mgM-$)qX$P}& zzp-QjeQx-(slU_iY!|r9>uPIe+GsOGp341v(`8Nso$sA(wVO1%&HTH%3=b)SNuQx% zSAWh-^k-%IcqX$Q5M5O4vEAqL^eKqsYVs^&yM6LaX_;S^4Lvswr?ztQX7DJ!G zz=~`tzldhjl(1Ct#f8g5eG@!MFzUVfbjl$EYUR7v=%rj>Pi_R~371*pP|(-e@!WwU zCnLv9Rl$HJRLQ=>p1iSmd)&_k;DE@Vjh9-TgfzI_kb74aN$a%Z>Iy(iOw zMFPwel?Ons(lF#2kPYUsg2q1s&TQ-MV?=wCd0wbF^MV>M9Xf(GdwX$QdES55BsJxc z4G{A{$UB6gektJln}%)BU4=Jw>E)amsq~M|Q0T;-ibt~SX=sVy>N2= zSh;uI)&kG5mEdSY(u;r0kprBRXy%e;3f#qVaSAJJ{tP2 zx)keuj@X51`Fef=bN8as{AE2zpV4eMZM?`5H|{aM+w`YfgM5c8?%L4GRYYld@@%7f zLE}VK18Ol`7h1W7W^?58VV$F5i#O%ixI2)b7Qb_`69@GD>*}vu(1u@otUOrw15s_t zao<V)rY;bcb^}chdGdMI4vY5aj}=C@1++`$?$r`yi$^8sk~Y%txIS6K z5=Rg=kssq@);C4+T-3TFo-8L8OnfG-1kP56K+PO~%GR3%2%9C2mfU`vJU@#`uRoPi zcX+v5pJKx=maifF*tYY9L9CYZou*DGp;A3I2fONg$3jFp@uS8-tI31Giii|-(&-3i zd#Y4H$&#&C9i$p#s%>t0rfNx;Q;xMA3~%r?wKX=*IU8RjCE*9-%0-azXsb8-XG62v z$5H!Wz;0mePfJXt+vsK^-OexGrBIQKluqg$ZHL0_;Sm|1f# zQBiWaRSAoL)(aSra(!C(sTVA2(w8bhlxklihuyB{8c9x+@}nBSGleOVK+ExRZ(^aC zfX!z6>PgS4+iJWlkviono#8!d`L8l|+nw(k?DO1>OLE*U=C%R?*XrzJ;K#e3Ow95= zR?h4e5kd}YNP$|h_$~MwAyY9B!qyAlRtfyaFX3$7l0`cfAUXck`7w-c-J8fi67fMb zzjV6+dzu1XxM~gR9T|4vy7H3#8l~pAb}{Ls;6B^=;PVtNy9Vp5zSGgeaQ>$DYs{%5 z&*p_C{s$MSAA2I+)^tjFr6=j!O-2>;%X{Nvax2GC!Ls;lsFSrEW*D9{_vC-KrJJA69xmBnO{E%!d2Zl_0cjU%-#YZ*e@ zCq#=rYCu$-^?j|uaZCdUz!=8+$RrEr0|M{`_?9%#GUjaw(ihF67MCtAz5nQe{B7gA zDnM;_*Z+0~-*P&vnbk;$bk)-I8-M5X@j|FeW7@Dzy;R@0i72V}ip@l;ZzSRQkA>M! z3VYcA=d>JrAU=0`U@=!`RB*|zAv~{`D?=A1Qypkpk|UWa{uS;1GqBTSTBx>8)br7? z72tV^-{6->`fI4;3UD$kya=!O7HN{rX!5Nz)+$9Md!xo&{42a|c`~yDkUoQ^)k73q z4P#mdv72BvJesdAyO_3})nB;^HpShW- zp{4%Gr(3lq1FG&t-oVqGJIKsWbeW%iLUY?{)wkKL zS!=$H6u9SkLf#o!XkLP4KIUmiceGnMw&Aygq&0N?;<*Jkrao3M!rY|3z~{PIc)RBI zS2x13rr>}L7o*sDsjtwy6KHdZWGQV9b2$u$(NJ2bNc}8MxkRG}qC63NGG95F*pjyq zQpm9pXpZrYmbQ0gzlLE(@EiZf8Fr&>tNV-@AAKC0~3VS2KNz*KQG+$-pzvC zG@RV}IGLE6?2^-SSDa9@bTLEBPh^jr7phP8Y7vJH0U-#||6avaw7njwG%pdqmLd zr`C;nSMG_&W=DpTN~UTNpx(vk4F##iUkLrr8uMub2H515!&I1##9-4Y_B!S%Yb4Mo zSakznRbVd4)I^&Sb3UWT11xr$E?$v=rerQd!d$o+>8s&Ov6P-J8cn7};I28EkX=x^1ka!Xxh0Td!u(eu=o+f_sm$Xh}#i^|5S^137WilDS| zJvkqhf|*!j$+-Sq1h zY%rXedLcP;w(Zsz-lGWkXtXGbC2oq#9kxd5>#gTx zzQ3Ex?#uDGnjioEWT{wVW9@!eR_HPpPp3p>HcUia0Ft|%H}IT~PH zR)5zYdC7?icUSKNY&?b@our(s(g5Im-=h14&i#06{IXJ1s!^@ERFF=ym&TjG#G?zR z%tC5 z)SubRrkz0g-Gy{Y#XpXYgLWQ3{*(1Tcyv1DqPM zrbAlw+o&XydVq|>8nBtIkOQ7FM|_J=uAvlr*YVaAQ!D`Y+&L9|kDwPx;I@Ft50Or- zK3d|a&`^EbpBN{=VS{bfm^hv*)z=$iWOXW~HZ2$qzhAjjYu^!hl8vuCADbFp1Oy{U z&$EIKEAvU4k28UZ>8#*f#og=KX4VDMmFCClR3Mz7_n!39K0-mc){Y!B!Ce@hnt#u# zQEr^!a+0#M2ep{vt>W^!E$tDEv^hMuW!pHoSj(JW37a8gt-LuMU}`ZBaIY__akPsR zn>m|iz36M&!xN54H4WOky1R`VIXqbC!$RB?6*q(mFkuYj6p9TdJdDJ>0J<$taMM<| zI_0MQWcDYkS`<&v=F}~VjZ?ZkA&>hG1epcC@nn_ITn6Mw$|faccN z<4r2SOh&=F$=irF|48nbCxa{0|pL7LK)fJl)ZP!MTB zQI3K@5C}*KonYvQM+7M%y(>tQUZg{K73m!zgccA1Av8%KLJ0gPo^$T?U9ac-zuZrE zT|SXnE0f9mW+u<}f3&EgBUvFvIFDY$!v@sZwcC}v0eS=JR*XlbNwf7!ZCaZ_AZX4+|k9{LN_3{VB zVY?!N-0SA2JX>$wQ}b^nc`m}V*{;9#{!MKPe(ErZIOxsU)(@QmXu4KfXY&2^xf+?} zRd_7I<}e=%B2aZt?c^*s#VATOf|rk-p9XI!^?^BiMF?z}p8A1O@!X@^_478D;64=b z10cM{*Vn7>)QupP5*1BJ%Vepn->BJ_J-kL#kuWG$m(OM{1-(v5Pfjta|Iy#Sqvn6X zBA}}$$966TrYw~Ey&%p@JZt>(k^SmsPixB%V&Qr>wBl2!cfS(H2a64zwHob`FY_2< z+QQGsE1_~d&Kx>UZMObuQvXQnbL(^A+0M8)EHI!Wkk68$@{AI1UDa#o{@D53jftco zb$ibu{95oA{}qnJtq(r8XGk$$yw?2(O8mIDyxyP0Ic%njxLmdUZprgjOn44ar}7QZJ3Y`rGepN1mwu))_9=%!Zr1N55a4# z;8Z7UEYffWskfKoA}?m~-adKF59gxVp8})$a7PwUxqgDivX4r)PwAp$yaQ~{*1 zY}C}$eNXN&1{;;LvQ59=%2oBV9ex{BU{*It`WBj+F5q&W;}h9eD_JNu71e^>a(sV} zc6Cm<{I6szXH`sDaZC)m9=?QNQty6?UEECQwD=A`*j-h`#i6%Cpgc=S`qqDPEI*BR zJd(aYDT+vxuon~%P!ByV%6GTOB#QOp(Xj>aBZ_`k?XwjsMp>}g^69!O8<2U?Op5MY z4#-ITbgJ29ZlUg=O9gn*+^9IH@GTd2eT?z;OURxZ8hJAhQP;D+FmE{vpnVhv^jAL| zf3*ct^rnU@687;-r=X7^oeCA*pZ5_`ww}LvI8A?IZlO7=Gd>GOwPv-T7mq}Ao+tQI zCWi7BP zNr_TrNDADbx`}A;X6;x}kZFZg%}(vKr@Y%{O7rv6SQ$7}>>erep?qcIs%P|gP1?!s zo;>4u#=DhzPhwXsuIjwqKo{q8fjm{?cdO?It*NSf^WsXllfU}RKie`i`9|sGkLfjC zzhB51E2xtlR+NdoY{S`Rv@_$Hcjt9jDhAmKW4j|S5GkZ%okL!lkPy8s5N`w(b4H%d zWmd@U0okYyExlk?95(gqAAO@AQl|dLs{0u-rDJ8s-|$y>n4w|bo7O->&1d^w zU+W)$rk;1Mq6Zm;QF(a%x-rKLUkZnmb$hcG{yN2PgpQv4Tvd!s;K=wsY0pQ$fl4Lu zQ&Y+9YB{h}Sp@cT`v+#Id$960ehE~1V}+_IX{Crn?Zq1Hr(-yOxIog#!$>dWeYMMH z^#uQ7;R@*)@#ucC&!iH0`{oGr4<3Q;w4Ccs^&42!`6=qaxj)*-22+?#@>u98sMbc3 zhgDC(0xbe2zfAMR&(l*69e-(5K35%a*?w5;<&{;bfdX4gVi)NF*2kZh1|!-UjJbMEe*CCdw zC9<5OSY3gGo(QjfR>u%xGo|L1S^B9Hs#Cist0m~=$-<19zyG`{{yYQL_>R(0QW_hO z*0m8PZ98fLq+yQwGXO*y$aA~fzIXK;TFA+7VVG)Kbf?iR!pr?aG{hC zS20|%Fx8+YvL?H4*?p<^>xVyEgEM5iJVniA2R|t9~uCB7`2z~qhLbXNtr=sK49yg8Jx?pFoxsxY z-0J2|lix6}v7-(d<3W&B)UO)q3ZLe`K5Cz9B<@u-8gE8;ep;fo(nIB|ESr#SS!+J3 zmRZ>oc}qUBhB!CoyC^g0HcYWx%b-p(Y^MQX>Au@h z1>5MF6h(it$%WC0qSemprW=zOfVKPVe9IZu=*-@#jp$KJQ9^42KNVYl%}*WQhG#Ja zW|scKq#cr1HJ*Rl`*ZgQ)^`%Lt1%=m1?2FO{3e$>X0dWlb>szCkE;`vut6Bl z$}dmy^m?S)qNBG4PNEAjN`Qv*cj^30Lf+!_X6ksTV-HdsK?Nn|4)^DR9=3 z286=i$Z}F*a4lXxS$rtpF!rtC#mv(I3d3F$%0+RlZ<0{b4t$Nc;0rIU4$QI4C?&Q0Zj`-hb2>L-rcT;_;ysz9UsKfPQ zpg1NPD0Fp_haoi5poBR!l1EvHR#F0xUU9c`^nWlYWyUtWX+#D5!XO%o;AsJ#92$$m zg^*Om1_+IX;ZdG+WAB{nzK>+l3{o__aQ9_JOP*)CpFxeb$8CskV*PK$5f5)#?0i3h zIt!;N1E3i_m#9<}zg+-WD}VvV;r%ERNh_lb_i5$=^WEroKKbD^c4L`5jw?q^05G+4 z;{{=0Eqr@@KK*Q#K86mp1^7dUOL=$l;tQ`0iy1krUEj}YJfsfh?cjF{fPH)kMbF|p(4ZE;2I@RYWY!?dHvdw*9x@p`?|d?{&h6hr9k=yO;#aY zk-Nnv;p^xMy9t;<7EF)^@B;Itkb_%u68A)6FB-{|be? zVHEuAQI@-?(SyfkqdvH=-=`NdA#QP9o1+5yySd+MBTxw93?Rx76QF)WLnc-|(#W5= zVi|a)8zd9$ai8^U`|A^x<0M;tOTJHIxFYm82P6}|nm+ZKdk(N7`;!Y+LZE)Vl$Sh-KfR+B{|m#YLz zyr@pETVW}OmEAU%d^ZLx2P`xHpq*LR4lwa5va{(wce_eE1HVTeQ*XsP2@&|D5sReP z{>$SWYMzu$Zq#nIM5Ajr;2BZ5M=p%mM$0^iPi_jb-x|utUM*MIeDrW^lY2>t?NZ60 z@}w^wMks61n{+SSo7PN!qVnxd+Rf-Zw#7UQP#BE(7MRxcI1)F$J1vpGqFJhFe^@eT z%|h-2Z0ty{kYe)?#&1m)`d*tyDBI`C&}NlA*0HX_WUJ$~*Dg#d@Kl{iWWQ~endsTK z68aEV{~m>7>|zzvgv;ir;bh1pD2}C{UO5;sosYOUV%yqmH6>^IB`)9j6~5HOrl88K~gjv>r|5U_ARiG5xVpMN_ZqFRAO0$Lzcn1KDb58u*GS; zlA55nd2sDMnC~emLm01j*m^AigYqiDckcHgblEtFLR*9N5-|R6-{e3ymN!u9tj_@; zuPtT9Mc)20yh0v#aoeaI2#au>qtekIYyt8e!yo*iBXmK@pNb0$i7U(kmY}lb*Q@%= zP&CFCAm1UdQL$(5=Qs;ZYC2$wQ0dP1wxHJhJ6@R?_2f9rpn*LNz^C0@(byu>*sBMQ zjr1Bb!K7>|!bU*tYrVKT@Z`dbF&f42GT|GdBi7fjF?BsPVJfs;0DaqTsK8N5(c#cE zRQFYr87A};=MBJ6Q!+%-HN|Qc;)V3=YTP9Y+|yBUN@&-y95=Hb_b1$2iOyx6tOAFL z>((>*XZ^8~u(fW@mT#XwM(=E`w}1W!P3kIQs=QC78kIOlNrpm%rHL2om0thY=%{Mz zWre%LDHN9+{dgD%FB~sV$&Pv7kb0TIuDIFljlH{PoCI6N@cJbP(^9#9f6hJz<<*W6 znREZBNYDJFsatV3P|k#j^_KzhD*Zy&2Rz7R8wsxbpt5uCD7(0|PMSP(vgOAJgpQx> zi|f4WSbwU_YHFgOv6;?(1|h;V_M~7euFN`CsV2P=(V4>dPQrKLnhiugOYQeu>G=dw zVD+FT6-&@^aWfgU)}{0u%&a($doB^r9*v%IYcxHxd#%%wy4pT|xh*WPyq!VSo$D-e zE`NU7eta?+v#Xo^T-tWn#2|61_l4R6M87*T=OgFGay>jUB^lW;)eniQ3#P56XjwR& zl(@G2{dN0}nAK%FFCNaFyqk?Fkku?im-L!p?H$oE@*L#8gKc%0P(WtkoxGRp6IE;) ztIXU|SwJfwd&cJU(>>>wE;OmX3lqpZ2ny0tP^F;lUo@X zFXwVz-u-)tsa4s>Hvluw5Ip$qNopLMd(st4fAUtcQ)SGkhgse1M)wn~N&+#P3;xBs z4VTkMAz*-TY}2fdpy)R2kO!>49tMOyZ3+@_ma5<8q>W@f8XVAsB@=yR#C~a_E}vBdM^IK2$0M`*p=(Q_6$=Ax zb;`99wGU3tz0psfEHcbNLFyvgk_B$OP_1=e5pjCwAkKL9O6-FVDsfnNzVPH+ofFjV z(>=wS#ratjHQmoxRDmhnyCs~my{keYtWuf1#!7YljCV7;A31Li+LtzmeQ*O_tY-@b zwrJtcev1{OQ$5>Jc$=;iWVsdamk{k$Nye&F^u`F*5tOv!#cf;1wagzYXgohz2?&o8 zJeo>;Io<%#OE@SLxAB(%J9ZNMGN!J{2x$UE8<>ubLyvPO1-+#C|!fSR{je8_jL^M33F5ZaR) z$lkcA$8r9HOUcmPaS>3h;RQ~}*{Wr`6w!Yb?!3fI$)7( zL?ZU)FV*;x`h^X)W6NZ3WCtoEcO6)hyM!S_RU;`uqXge6f`S4CP9}IQjQPKM*j~Fi zcSgqht#vmi%EkF+Ns9FBCnhdA^HkEPVs~$gw4c}Y5vpyTI9u%H<84**DPIr-=RQ(42wGtDnG^|GKvCGN4v* zmOLYyrAAz}j?xH#_LB~Y&XBfavStBIC(Xa15Zj@ zmdW9Fu}q+xp(Br7dJM=fv4Jb-^Pa)x-R`vXuW?ltlu$~?AC$Um-DckUa?5#yMRI@3 z*i^J*F>?}ywAupv&xYzJyZYM|D_8j#WPP(*e;oDx9Ah&~iV-p3H@QAI< z?y=nzmC(fFN%37lJF>{JF(a7jM|oyQPEa9MSOt*`cN<_J{1&NacoM{hSP9oh;_I;x}S8{uF3%(!y^^Cd~ zH~$r78|7VaKOgbqm+(w4GJuFh>z0R+8W#uhGP#L>jJJ} zAjY0r^N0D?UL7mIt<_m|$Eba732}p`b`05Lt+12Sbs97=H-x5&v63*Y*#G2@&lb?NykM-{zD36Q}UNy~#|4bPpeu=cC+E}x%R zf$TZZI41Ui#|`ansSm*XO&= zh=s6faA9vq)%2t(&mT>aqtuTPowxhLO6z+Y%v+cH4Xiu|cW_^+?3`Zw@8vaT71C6E zN0Ss2C3_?nsh~pUEpPqnOrejYhLIq&gy9<}-&KsFqxDX0c{bzb94VgL)7*ioG~KLd zV2Y~Asclt2pR;_0KBNDr$tQgCB`JvZ3+47dE09>V-S0@#n8*HAn@wCm7@mHBp1Knw>AEtX-(C7^b*pL^n}}5h210Q;p_X#S z6Cr<&Awx4j(lw(s*6i;jrjhi59yCyD>^G`7I{|$;S;D2_JVbL+rUr^-}ewE_> z^j87tUu_I9J~?O8em2^UcRFD4F;viHrX}hKUO%3{HA3e`+lIHd>Js;Vf7_q`+m)hM zQ&W4XfY3&tw_)nHi4C-4aHSX2f`Yz!4?OPXjae|r0dfJ>&Ub`!tel))y^$gNe?3}o zx&$0_`pj@h3s}Nyq#GW5d!p?~i~zvjo0L!YK}BXhhTFr*JLYox{^l|8?V}HiV%w)) z`|JMy9CpSvu!r4q2ZaCeIqd^`m`?T0vA_AKADA(p0@%aq!54i0kx`>#0nh3G2KB#u brl$5XwDt!1lJXPxfj=z`n0nDw^T+=W(ojdS literal 0 HcmV?d00001 From cb3bf8713edf64a56f053a742fd6b728b4f3f43e Mon Sep 17 00:00:00 2001 From: Dave Haworth Date: Mon, 24 Jul 2023 15:18:02 -0500 Subject: [PATCH 257/703] Small wording and format updates for PL changes --- website/docs/docs/cloud/secure/redshift-privatelink.md | 2 +- website/docs/docs/cloud/secure/snowflake-privatelink.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index 35cea7af06e..4151cb6f4dd 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -11,7 +11,7 @@ AWS provides two different ways to create a PrivateLink VPC endpoint for a Redsh dbt Cloud supports both types of endpoints, but there are a number of [considerations](https://docs.aws.amazon.com/redshift/latest/mgmt/managing-cluster-cross-vpc.html#managing-cluster-cross-vpc-considerations) to take into account when deciding which endpoint type to use. Redshift-managed provides a far simpler setup with no additional cost, which might make it the preferred option for many, but may not be an option in all environments. Based on these criteria, you will need to determine which is the right type for your system. Follow the instructions from the section below that corresponds to your chosen endpoint type. -:::info Redshift Serverless +:::note Redshift Serverless While Redshift Serverless does support Redshift-managed type VPC endpoints, this functionality is not currently available across AWS accounts. Due to this limitation, an Interface-type VPC endpoint service must be used for Redshift Serverless cluster PrivateLink connectivity from dbt Cloud. ::: diff --git a/website/docs/docs/cloud/secure/snowflake-privatelink.md b/website/docs/docs/cloud/secure/snowflake-privatelink.md index bd82d38ff12..0cbd6e96aad 100644 --- a/website/docs/docs/cloud/secure/snowflake-privatelink.md +++ b/website/docs/docs/cloud/secure/snowflake-privatelink.md @@ -28,7 +28,7 @@ Subject: New Multi-Tenant PrivateLink Request - *Use privatelink-account-url or regionless-privatelink-account-url?: - dbt Cloud multi-tenant environment (US, EMEA, AU): ``` -_*By default dbt Cloud will be configured to use `privatelink-account-url` from the provided `SYSTEM$GET_PRIVATELINK_CONFIG` as the PrivateLink endpoint. At the request of the customer, `regionless-privatelink-account-url` can be used instead._ +_*By default dbt Cloud will be configured to use `privatelink-account-url` from the provided [SYSTEM$GET_PRIVATELINK_CONFIG](https://docs.snowflake.com/en/sql-reference/functions/system_get_privatelink_config.html) as the PrivateLink endpoint. Upon request, `regionless-privatelink-account-url` can be used instead._ dbt Labs will work on your behalf to complete the PrivateLink setup. Please allow 1-2 business days for this process to complete. Support will contact you when the endpoint is available. From 36d83954f544482a13e588b7978b4add67e1439f Mon Sep 17 00:00:00 2001 From: Dave Haworth Date: Mon, 24 Jul 2023 15:34:39 -0500 Subject: [PATCH 258/703] fix indenting --- website/docs/docs/cloud/secure/redshift-privatelink.md | 1 + 1 file changed, 1 insertion(+) diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index 4151cb6f4dd..10d26865409 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -63,6 +63,7 @@ Creating an Interface VPC PrivateLink connection requires creating multiple AWS - There will likely be only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will be created for that AZ as well. The NI IP from the original AZ will still work, but the new NI IP can also be added to the Target Group if desired. If adding additional IPs, note that the NLB will need to add the corresponding AZ as well. Once created, the NI(s) shouldn't change (NOTE: this is our observation from testing, but is not officially documented by AWS). + _Redshift Serverless_ - To find the IP addresses for Redshift Serverless instance locate and copy the endpoint (only the URL listed before the port) in the Workgroup configuration section of the AWS console for the instance. From 0adb669b3705390be59f42437e348975bdbada18 Mon Sep 17 00:00:00 2001 From: Dave Haworth Date: Mon, 24 Jul 2023 15:42:25 -0500 Subject: [PATCH 259/703] another indenting fix --- website/docs/docs/cloud/secure/redshift-privatelink.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index 10d26865409..62fc893156a 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -58,13 +58,14 @@ Creating an Interface VPC PrivateLink connection requires creating multiple AWS **Notes:** _Standard Redshift_ + - Use IP addresses from the Redshift cluster’s **Network Interfaces** whenever possible. While IPs listed in the **Node IP addresses** section will work, they are also more likely to change. - There will likely be only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will be created for that AZ as well. The NI IP from the original AZ will still work, but the new NI IP can also be added to the Target Group if desired. If adding additional IPs, note that the NLB will need to add the corresponding AZ as well. Once created, the NI(s) shouldn't change (NOTE: this is our observation from testing, but is not officially documented by AWS). - _Redshift Serverless_ + - To find the IP addresses for Redshift Serverless instance locate and copy the endpoint (only the URL listed before the port) in the Workgroup configuration section of the AWS console for the instance. From 435d3e520c1bc8ba40fc374cede2293771e72b9a Mon Sep 17 00:00:00 2001 From: Dave Haworth Date: Mon, 24 Jul 2023 16:03:52 -0500 Subject: [PATCH 260/703] remove unnecessary line --- website/docs/docs/cloud/secure/redshift-privatelink.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index 62fc893156a..f1c526a7963 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -55,10 +55,8 @@ Creating an Interface VPC PrivateLink connection requires creating multiple AWS - Target Type: **IP** - **Notes:** - _Standard Redshift_ - + - Use IP addresses from the Redshift cluster’s **Network Interfaces** whenever possible. While IPs listed in the **Node IP addresses** section will work, they are also more likely to change. From 70eb48598a5febb1d5876033153b2abdd4bfe49e Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 24 Jul 2023 18:36:56 -0400 Subject: [PATCH 261/703] Update website/docs/docs/cloud/secure/redshift-privatelink.md --- website/docs/docs/cloud/secure/redshift-privatelink.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index f1c526a7963..6fd5e77f21f 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -60,7 +60,7 @@ Creating an Interface VPC PrivateLink connection requires creating multiple AWS - Use IP addresses from the Redshift cluster’s **Network Interfaces** whenever possible. While IPs listed in the **Node IP addresses** section will work, they are also more likely to change. - - There will likely be only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will be created for that AZ as well. The NI IP from the original AZ will still work, but the new NI IP can also be added to the Target Group if desired. If adding additional IPs, note that the NLB will need to add the corresponding AZ as well. Once created, the NI(s) shouldn't change (NOTE: this is our observation from testing, but is not officially documented by AWS). + - There will likely be only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will also be created for that AZ. The NI IP from the original AZ will still work, but the new NI IP can also be added to the Target Group. If adding additional IPs, note that the NLB will also need to add the corresponding AZ. Once created, the NI(s) should stay the same (This is our observation from testing, but AWS does not officially document it). _Redshift Serverless_ From 3f53ab57fe37f10b81af216a0c44dc25e5b2eb40 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 24 Jul 2023 18:37:02 -0400 Subject: [PATCH 262/703] Update website/docs/docs/cloud/secure/redshift-privatelink.md --- website/docs/docs/cloud/secure/redshift-privatelink.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index 6fd5e77f21f..56d5dd13a36 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -67,7 +67,7 @@ Creating an Interface VPC PrivateLink connection requires creating multiple AWS - To find the IP addresses for Redshift Serverless instance locate and copy the endpoint (only the URL listed before the port) in the Workgroup configuration section of the AWS console for the instance. - - From a command line run the command `nslookup ` using the endpoint found in the previous step and use the associated IP(s) for the Target Group + - From a command line run the command `nslookup ` using the endpoint found in the previous step and use the associated IP(s) for the Target Group. - Target Group protocol: **TCP** From 677b9023017b488ccc985a0b21bac2898aa71696 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 24 Jul 2023 15:54:39 -0700 Subject: [PATCH 263/703] Update sl-jdbc.md Adding some more color on `metric_time` --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index f050c7bd635..43c1ded7bf5 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -141,6 +141,16 @@ To query metric values, here are the following parameters that are available: |`order` | Order the data returned | `order_by=['-order_gross_profit']` (remove `-` for ascending order) | Optional | | `explain` | If true, returns generated SQL for the data platform but does not execute | `explain=True` | Optional | + +## Note on time dimensions and `metric_time` + +You will notice that in the list of dimensions for all metrics, there is a dimension called `metric_time`'. `Metric_time` is a reserved keyword for the measure-specific aggregation time dimensions. For any time-series metric, the `metric_time` keyword should always be available for use in queries. This is a common dimension across *all* metrics in a semantic graph. + +You can look at a single metric or hundreds of metrics and if you group by `metric_time`, it will always give you the correct time series. + +Additionally, when performing granularity calculations, we recommend you always operate on `metric_time` and you will get the correct answer. Note `metric_time` should be available in addition to any other time dimensions that are available for the metric(s). In the case where you are looking at one metric (or multiple metrics from the same data source), the values in the series for the primary time dimension and `metric_time` are equivalent. + + ## Examples Use the following examples to help you get started with the JDBC API From 89f872c21c25fe22ba2b092fa660ec478abd2891 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 24 Jul 2023 16:08:31 -0700 Subject: [PATCH 264/703] Update sl-jdbc.md a few more edits here --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 43c1ded7bf5..88bc2d9818c 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -146,9 +146,11 @@ To query metric values, here are the following parameters that are available: You will notice that in the list of dimensions for all metrics, there is a dimension called `metric_time`'. `Metric_time` is a reserved keyword for the measure-specific aggregation time dimensions. For any time-series metric, the `metric_time` keyword should always be available for use in queries. This is a common dimension across *all* metrics in a semantic graph. -You can look at a single metric or hundreds of metrics and if you group by `metric_time`, it will always give you the correct time series. +You can look at a single metric or hundreds of metrics, and if you group by `metric_time`, it will always give you the correct time series. -Additionally, when performing granularity calculations, we recommend you always operate on `metric_time` and you will get the correct answer. Note `metric_time` should be available in addition to any other time dimensions that are available for the metric(s). In the case where you are looking at one metric (or multiple metrics from the same data source), the values in the series for the primary time dimension and `metric_time` are equivalent. +Additionally, when performing granularity calculations that are global (not specific to a particular time dimension), we recommend you always operate on `metric_time` and you will get the correct answer. + +Note that `metric_time` should be available in addition to any other time dimensions that are available for the metric(s). In the case where you are looking at one metric (or multiple metrics from the same data source), the values in the series for the primary time dimension and `metric_time` are equivalent. ## Examples From 0363e20d206b09082719fe2f6cf32700b8ba26fa Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Mon, 24 Jul 2023 16:22:04 -0700 Subject: [PATCH 265/703] CI updates phase 2 --- website/docs/docs/deploy/job-settings.md | 45 ++++++++++++++++ website/docs/docs/deploy/job-triggers.md | 68 ------------------------ 2 files changed, 45 insertions(+), 68 deletions(-) delete mode 100644 website/docs/docs/deploy/job-triggers.md diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 3b53880bddf..1f93e103873 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -56,3 +56,48 @@ You can create a job and configure it to run on [scheduled days and times](/docs 7. Select **Save**, then click **Run Now** to run your job. Click the run and watch its progress under **Run history**. + +### Schedule days + +You can schedule which days of the week and specify customized hours or intervals to run your deploy job with the option **Exact intervals** or **Intervals**. + +- **Exact Intervals** — Use this option to set specific times when your job should run. You can enter a comma-separated list of hours (in UTC) when you want the job to run. For example, if you set it to `0,12,23,` the job will run at midnight, noon, and 11 PM UTC. This option is useful if you want your jobs to run at specific times of day and don't need them to run more frequently than once a day. + +- **Intervals** — Use this option to set how often your job runs, in hours. Enter a number between 1 and 23 to represent the interval between job runs. For example, if you set it to **Every 2 hours**, the job will run every 2 hours from midnight UTC. This option is useful if you need to run jobs multiple times per day at regular intervals. + + +:::info + +dbt Cloud uses [Coordinated Universal Time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) (UTC) and does not account for translations to your specific timezone or take into consideration daylight savings time. For example: + +- 0 means 12am (midnight) UTC +- 12 means 12pm (afternoon) UTC +- 23 means 11pm UTC + +::: + +### Custom cron schedule + +You can fully customize the scheduling of your job with the **Enter custom cron schedule** option. Using cron syntax, you can specify the minute, hour, day of the month, month, and day of the week, allowing you to set up complex schedules like running a job on the first Monday of each month. + + + +Use tools such as [crontab.guru](https://crontab.guru/) to generate the correct cron syntax. This tool allows you to input cron snippets and returns their plain English translations. + +Some examples are: + +- `0 * * * *`: Every hour, at minute 0 +- `*/5 * * * *`: Every 5 minutes +- `5 4 * * *`: At exactly 4:05 AM UTC +- `30 */4 * * *`: At minute 30 past every 4th hour (e.g. 4:30AM, 8:30AM, 12:30PM, etc., all UTC) +- `0 0 */2 * *`: At midnight UTC every other day +- `0 0 * * 1`: At midnight UTC every Monday. + + +## Related docs + +- [Artifacts](/docs/deploy/artifacts) +- [Build and view your docs with dbt Cloud](/docs/collaborate/build-and-view-your-docs) +- [Source freshness](/docs/deploy/source-freshness) +- [Job commands](/docs/deploy/job-commands) +- [Webhooks for your jobs](/docs/deploy/webhooks) \ No newline at end of file diff --git a/website/docs/docs/deploy/job-triggers.md b/website/docs/docs/deploy/job-triggers.md deleted file mode 100644 index cb7a1a48088..00000000000 --- a/website/docs/docs/deploy/job-triggers.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: "Job triggers" -id: "job-triggers" -description: "You can configure when and how dbt should run your job" ---- - -In dbt Cloud, you can use the options under **Triggers** to configure when and how dbt should [run your job](/docs/deploy/job-triggers#schedule-job): - -- **Schedule** tab — Use the **Run on schedule** toggle to configure your job to run on either [scheduled days](#schedule-days) or [custom cron-powered schedule](#custom-cron-schedule) -- **Continuous Integration (CI)** tab — Configure [continuous integration](/docs/deploy/continuous-integration) to run when someone opens a new pull request in your dbt repository -- **API** tab — Use the [API](/docs/dbt-cloud-apis/admin-cloud-api) to trigger a job or send events to other systems - - - -## Schedule jobs - -To schedule your job to run at specific days, times, and intervals: -1. Go to the specific job settings, click **Edit**, then go to the **Triggers** section -2. Go to the **Schedule** tab, and toggle **Run on schedule** -3. Use either the [scheduled days](#schedule-days) or the [custom cron-powered schedule](#custom-cron-schedule) method to customize your desired days, times, and intervals. - -### Schedule days - -To set your job's schedule, use the **Schedule Days** option to choose specific days of the week, and select customized hours or intervals. - -Under **Timing**, you can either use customizable hours for jobs that need to run frequently throughout the day or exact intervals for jobs that need to run at specific times: - -- **Every n hours** — Use this option to set how often your job runs, in hours. Enter a number between 1 and 23 to represent the interval between job runs. For example, if you set it to "every 2 hours", the job will run every 2 hours from midnight UTC. This option is useful if you need to run jobs multiple times per day at regular intervals. - -- **At exact intervals** — Use this option to set specific times when your job should run. You can enter a comma-separated list of hours (in UTC) when you want the job to run. For example, if you set it to `0,12,23,` the job will run at midnight, noon, and 11 PM UTC. This option is useful if you want your jobs to run at specific times of day and don't need them to run more frequently than once a day. - -:::info - -dbt Cloud uses [Coordinated Universal Time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) (UTC) and does not account for translations to your specific timezone or take into consideration daylight savings time. For example: - -- 0 means 12am (midnight) UTC -- 12 means 12pm (afternoon) UTC -- 23 means 11pm UTC - -::: - -### Custom cron schedule - -To fully customize the scheduling of your job, choose the **Custom cron schedule** option and use the "cron" syntax. With this syntax, you can specify the minute, hour, day of the month, month, and day of the week, allowing you to set up complex schedules like running a job on the first Monday of each month. - - - - -Use tools such as [crontab.guru](https://crontab.guru/) to generate the correct cron syntax. This tool allows you to input cron snippets and returns their plain English translations. - -Refer to the following example snippets: - - -- `0 * * * *`: Every hour, at minute 0 -- `*/5 * * * *`: Every 5 minutes -- `5 4 * * *`: At exactly 4:05 AM UTC -- `30 */4 * * *`: At minute 30 past every 4th hour (e.g. 4:30AM, 8:30AM, 12:30PM, etc., all UTC) -- `0 0 */2 * *`: At midnight UTC every other day -- `0 0 * * 1`: At midnight UTC every Monday. - - -## Related docs - -- [Artifacts](/docs/deploy/artifacts) -- [Build and view your docs with dbt Cloud](/docs/collaborate/build-and-view-your-docs) -- [Source freshness](/docs/deploy/source-freshness) -- [Job commands](/docs/deploy/job-commands) -- [Webhooks for your jobs](/docs/deploy/webhooks) \ No newline at end of file From c89cb7e4a5f105378ad1ad8e60ca8e42eafd8582 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 24 Jul 2023 16:24:48 -0700 Subject: [PATCH 266/703] Update sl-partner-integration-guide.md a few updates to metric time in the sl integration guide --- .../sl-partner-integration-guide.md | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index 4068c005d2b..968afc1947c 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -35,13 +35,12 @@ The dbt Semantic Layer authenticates with: - `SERVICE_TOKEN`, - `host` -This applies to the dbt Semantic Layer APIs, which all currently use different host names. +This applies to the dbt Semantic Layer APIs, which all currently use different host names. We recommend you provide users with separate input fields with these components (which dbt Cloud provides). For [JDBC](/docs/dbt-cloud-apis/sl-jdbc), you can construct the JDBC URL from these inputs. Or, you could request the full URL string. -If you use both Semantic Layer APIs, users will need to provide different host information for each one. In the future, we want to unify these host names. ## Best practices on exposing metrics: @@ -60,17 +59,19 @@ When working with more governed data, it's essential to establish clear guardrai **Aggregations control**
Users shouldn't generally be allowed to modify aggregations unless they are performing post-processing calculations on data from the Semantic Layer (such as year over year analysis). -**Traceability of metric and dimension changes**
-When users change names of metrics and dimensions for reports, it's crucial to have a traceability mechanism in place to link back to the original source metric name. - -**Time series alignment**
+**Time series alignment and using metric_time**
Make sure users view metrics across the correct time series. When displaying metric graphs, using a non-default time aggregation dimension might lead to misleading interpretations. While users can still group by other time dimensions, they should be careful not to create trend lines with incorrect time axes. -Implementing guardrails in the application might help achieve this. +When looking at one or multiple metrics, users should use `metric_time` as the main time dimension to guarantee they are looking at the right time series for the metric(s). As such, when building an application, we recommend exposing `metric_time` as a special time dimension on its own. This dimension is always going to align with all metrics and be common across them. Other time dimensions can still be looked at and grouped by, but having a clear delineation between the `metric_time` dimension and the rest is clarifying as a way to separate out the primary one. + +Also, when a user requests a time granularity change for the main time series, the query should use `metric_time`. Note that when looking at a single metric, the primary time dimension and `metric_time` are equivalent. **Units consistency**
If units are supported, it's vital to avoid plotting data incorrectly with different units. Ensuring consistency in unit representation will prevent confusion and misinterpretation of the data. +**Traceability of metric and dimension changes**
+When users change names of metrics and dimensions for reports, it's crucial to have a traceability mechanism in place to link back to the original source metric name. + ### Discoverability 1. Consider treating [metrics](/docs/build/metrics-overview) as first-class objects rather than measures. Metrics offer a higher-level and more contextual way to interact with data, reducing the burden on end-users to manually aggregate data. @@ -115,14 +116,15 @@ For better analysis, it's best to have the context of the metrics close to where ### Query flexibility -Allow users to query either one metric without dimensions or one or more metrics with dimensions +Allow users to query either one metric alone without dimensions or multiple metrics with dimensions - Allow toggling between metrics / dimensions seamlessly - Be clear on exposing what dimensions are queryable with what metrics and hide things that don’t apply, and vice versa. - Include Presets for filtering date ranges and calendar for filtering time dimensions * For example, last 30 days, last week etc. - Only expose time granularities (monthly, daily, yearly) that match the available metrics. - * For example, if a dbt model and its resulting semantic model have a monthly granularity, make sure querying data with a 'daily' granularity" isn't available to the user. + * For example, if a dbt model and its resulting semantic model have a monthly granularity, make sure querying data with a 'daily' granularity" isn't available to the user. +- We recommend that granularity is a dimension-specific concept and can be applied to more than just the primary aggregation or `metric_time`. Initially, as a starting point, it makes sense to only support `metric_time` or the primary time dimension, but we recommend expanding that as the solution evolves. ### Example stages of an integration From 0341965d67a7b14a0fde2af75cb5a4a58399c66f Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Mon, 24 Jul 2023 16:28:11 -0700 Subject: [PATCH 267/703] Update sidebar --- website/sidebars.js | 1 - 1 file changed, 1 deletion(-) diff --git a/website/sidebars.js b/website/sidebars.js index c09e7b784c4..e52263c5e65 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -337,7 +337,6 @@ const sidebarSettings = { items: [ "docs/deploy/job-settings", "docs/deploy/job-commands", - "docs/deploy/job-triggers", ], }, { From 0f0bf9a65f6e6068a2709e54064ddd49e0ef7eeb Mon Sep 17 00:00:00 2001 From: Sterling Paramore Date: Mon, 24 Jul 2023 16:50:31 -0700 Subject: [PATCH 268/703] Draft of modeling ragged time-varying hierarchies (#3676) ## What are you changing in this pull request and why? Resolves #3328 ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --------- Co-authored-by: Joel Labes --- ...odeling-ragged-time-varying-hierarchies.md | 448 ++++++++++++++++++ website/blog/authors.yml | 13 +- .../hierarchy.png | Bin 0 -> 41053 bytes .../img/blog/authors/sterling-paramore.png | Bin 0 -> 154035 bytes 4 files changed, 460 insertions(+), 1 deletion(-) create mode 100644 website/blog/2023-05-02-modeling-ragged-time-varying-hierarchies.md create mode 100644 website/static/img/blog/2023-05-02-modeling-ragged-time-varying-hierarchies/hierarchy.png create mode 100644 website/static/img/blog/authors/sterling-paramore.png diff --git a/website/blog/2023-05-02-modeling-ragged-time-varying-hierarchies.md b/website/blog/2023-05-02-modeling-ragged-time-varying-hierarchies.md new file mode 100644 index 00000000000..d436df2628a --- /dev/null +++ b/website/blog/2023-05-02-modeling-ragged-time-varying-hierarchies.md @@ -0,0 +1,448 @@ +--- +title: "Modeling ragged time-varying hierarchies" +description: "Learn how to maximize the utility of complex hierarchical data in your analytics warehouse." +slug: modeling-ragged-time-varying-hierarchies + +authors: [sterling_paramore] + +tags: [analytics craft] +hide_table_of_contents: false + +date: 2023-05-02 +is_featured: true +--- + +This article covers an approach to handling time-varying ragged hierarchies in a dimensional model. These kinds of data structures are commonly found in manufacturing, where components of a product have both parents and children of arbitrary depth and those components may be replaced over the product's lifetime. The strategy described here simplifies many common types of analytical and reporting queries. + +To help visualize this data, we're going to pretend we are a company that manufactures and rents out eBikes in a ride share application. When we build a bike, we keep track of the serial numbers of the components that make up the bike. Any time something breaks and needs to be replaced, we track the old parts that were removed and the new parts that were installed. We also precisely track the mileage accumulated on each of our bikes. Our primary analytical goal is to be able to report on the expected lifetime of each component, so we can prioritize improving that component and reduce costly maintenance. + +## Data model + +Obviously, a real bike could have a hundred or more separate components. To keep things simple for this article, let's just consider the bike, the frame, a wheel, the wheel rim, tire, and tube. Our component hierarchy looks like: + + + +This hierarchy is *ragged* because different paths through the hierarchy terminate at different depths. It is *time-varying* because specific components can be added and removed. + +Now let's take a look at how this data is represented in our source data systems and how it can be transformed to make analytics queries easier. + +### Transactional model + +Our ERP system (Enterprise Resource Planning) contains records that log when a specific component serial number (`component_id`) was installed in or removed from a parent assembly component (`assembly_id`). The top-most assembly component is the eBike itself, which has no parent assembly. So when an eBike (specifically, the eBike with serial number "Bike-1") is originally constructed, the ERP system would contain records that look like the following. + +**`erp_components`:** + +| `assembly_id` | `component_id` | `installed_at` | `removed_at` | +| - | - | - | - | +| | Bike-1 | 2023-01-01 | | +| Bike-1 | Frame-1 | 2023-01-01 | | +| Bike-1 | Wheel-1 | 2023-01-01 | | +| Wheel-1 | Rim-1 | 2023-01-01 | | +| Wheel-1 | Tire-1 | 2023-01-01 | | +| Tire-1 | Tube-1 | 2023-01-01 | | + +Now let's suppose this bike has been ridden for a while, and on June 1, the user of the bike reported a flat tire. A service technician then went to the site, replaced the tube that was in the wheel, and installed a new one. They logged this in the ERP system, causing one record to be updated with a `removed_at` date, and another record to be created with the new tube `component_id`. + + +**`erp_components`:** + +| `assembly_id` | `component_id` | `installed_at` | `removed_at` | +| - | - | - | - | +| ... | ... | ... | ... | +| Tire-1 | Tube-1 | 2023-01-01 | 2023-06-01 | +| Tire-1 | Tube-2 | 2023-06-01 | | +| ... | ... | ... | ... | + +After a few more months, there is a small crash. Don't worry, everyone's OK! However, the wheel (`Wheel-1`)is totally broken and must be replaced (with `Wheel-2`). When the technician updates the ERP, the entire hierarchy under the replaced wheel is also updated, as shown below. + +**`erp_components`:** + +| `assembly_id` | `component_id` | `installed_at` | `removed_at` | +| - | - | - | - | +| Bike-1 | Wheel-1 | 2023-01-01 | 2023-08-01 | +| Wheel-1 | Rim-1 | 2023-01-01 | 2023-08-01 | +| Wheel-1 | Tire-1 | 2023-01-01 | 2023-08-01 | +| Tire-1 | Tube-2 | 2023-06-01 | 2023-08-01 | # Note that this part has different install date +| Bike-1 | Wheel-2 | 2023-08-01 | | +| Wheel-2 | Rim-2 | 2023-08-01 | | +| Wheel-2 | Tire-2 | 2023-08-01 | | +| Tire-2 | Tube-3 | 2023-08-01 | | + + +After all of the above updates and additions, our ERP data looks like the following. + +**`erp_components`:** + +| `assembly_id` | `component_id` | `installed_at` | `removed_at` | +| - | - | - | - | +| | Bike-1 | 2023-01-01 | | +| Bike-1 | Frame-1 | 2023-01-01 | | +| Bike-1 | Wheel-1 | 2023-01-01 | 2023-08-01 | +| Wheel-1 | Rim-1 | 2023-01-01 | 2023-08-01 | +| Wheel-1 | Tire-1 | 2023-01-01 | 2023-08-01 | +| Tire-1 | Tube-1 | 2023-01-01 | 2023-06-01 | +| Tire-1 | Tube-2 | 2023-06-01 | 2023-08-01 | +| Bike-1 | Wheel-2 | 2023-08-01 | | +| Wheel-2 | Rim-2 | 2023-08-01 | | +| Wheel-2 | Tire-2 | 2023-08-01 | | +| Tire-2 | Tube-3 | 2023-08-01 | | + +So that's all fine and good from the perspective of the ERP system. But this data structure can be difficult to work with if we want to generate reports that calculate the total mileage accumulated on various components, or the average mileage of a particular component type, or how one component type might affect the lifetime of another component. + +### Multivalued dimensional model + +In dimensional modeling, we have *fact* tables that contain measurements and *dimension* tables that contain the context for those measurements (attributes). In our eBike data warehouse, we have a fact table that contains one record for each eBike for each day it is ridden and the measured mileage accumulated during rides that day. This fact table contains *surrogate key* columns, indicated by the `_sk` suffix. These are usually system-generated keys used to join to other tables in the database; the specific values of these keys are not important. + +**`fct_daily_mileage`:** + +| `bike_sk` | `component_sk` | `ride_at` | `miles` | +| - | - | - | - | +| bsk1 | csk1 | 2023-01-01 | 3 | +| bsk1 | csk1 | 2023-01-02 | 2 | +| bsk1 | csk1 | 2023-01-03 | 0 | +| bsk1 | csk1 | 2023-01-04 | 0 | +| ... | ... | ... | ... | +| bsk1 | csk3 | 2023-08-01 | 7 | +| bsk1 | csk3 | 2023-08-02 | 8 | +| bsk1 | csk3 | 2023-08-03 | 4 | + +One of the dimension tables is a simple table containing information about the individual bikes we have manufactured. + +**`dim_bikes`:** + +| `bike_sk` | `bike_id` | `color` | `model_name` | +| - | - | - | - | +| bsk1 | Bike-1 | Orange | Wyld Stallyn | + + +There is a simple many-to-one relationship between `fct_daily_mileage` and `dim_bikes`. If we need to calculate the total mileage accumulated for each bike in our entire fleet of eBikes, we just join the two tables and aggregate on the `miles` measurement. + +```sql +select + dim_bikes.bike_id, + sum(fct_daily_mileage.miles) as miles +from + fct_daily_mileage +inner join + dim_bikes + on + fct_daily_mileage.bike_sk = dim_bikes.bike_sk +group by + 1 +``` + +Extending this to determine if orange bikes get more use than red bikes or whether certain models are preferred are similarly straightforward queries. + +Dealing with all of the components is more complicated because there are many components installed on the same day. The relationship between days when the bikes are ridden and the components is thus *multivalued*. In `dim_bikes`, there is one record per bike and surrogate key. In our components dimension will have multiple records with the same surrogate key and will therefore be a *multivalued dimension*. Of course, to make things even more complicated, the components can change from day to day. To construct the multivalued dimension table, we break down the time-varying component hierarchy into distinct ranges of time where all of the components in a particular bike remain constant. At specific points in time where the components are changed, a new surrogate key is created. The final dimension table for our example above looks like the following, where the `valid_from_at` and `valid_to_at` represent the begin and end of a range of time where all the components of an eBike remain unchanged. + + +**`mdim_components`:** + +| `component_sk` | `assembly_id` | `component_id` | `depth` | `installed_at` | `removed_at` | `valid_from_at` | `valid_to_at` | +| - | - | - | - | - | - | - | - | +| csk1 | | Bike-1 | 0 | 2023-01-01 | | 2023-01-01 | 2023-06-01 | +| csk1 | Bike-1 | Frame-1 | 1 | 2023-01-01 | | 2023-01-01 | 2023-06-01 | +| csk1 | Bike-1 | Wheel-1 | 1 | 2023-01-01 | 2023-08-01 | 2023-01-01 | 2023-06-01 | +| csk1 | Wheel-1 | Rim-1 | 2 | 2023-01-01 | 2023-08-01 | 2023-01-01 | 2023-06-01 | +| csk1 | Wheel-1 | Tire-1 | 2 | 2023-01-01 | 2023-08-01 | 2023-01-01 | 2023-06-01 | +| csk1 | Tire-1 | Tube-1 | 3 | 2023-01-01 | 2023-06-01 | 2023-01-01 | 2023-06-01 | +| csk2 | | Bike-1 | 0 | 2023-01-01 | | 2023-06-01 | 2023-08-01 | +| csk2 | Bike-1 | Frame-1 | 1 | 2023-01-01 | | 2023-06-01 | 2023-08-01 | +| csk2 | Bike-1 | Wheel-1 | 1 | 2023-01-01 | 2023-08-01 | 2023-06-01 | 2023-08-01 | +| csk2 | Wheel-1 | Rim-1 | 2 | 2023-01-01 | 2023-08-01 | 2023-06-01 | 2023-08-01 | +| csk2 | Wheel-1 | Tire-1 | 2 | 2023-01-01 | 2023-08-01 | 2023-06-01 | 2023-08-01 | +| csk2 | Tire-1 | Tube-2 | 3 | 2023-06-01 | 2023-08-01 | 2023-06-01 | 2023-08-01 | +| csk3 | | Bike-1 | 0 | 2023-01-01 | | 2023-08-01 | | +| csk3 | Bike-1 | Frame-1 | 1 | 2023-01-01 | | 2023-08-01 | | +| csk3 | Bike-1 | Wheel-2 | 1 | 2023-08-01 | | 2023-08-01 | | +| csk3 | Wheel-2 | Rim-2 | 2 | 2023-08-01 | | 2023-08-01 | | +| csk3 | Wheel-2 | Tire-2 | 2 | 2023-08-01 | | 2023-08-01 | | +| csk3 | Tire-2 | Tube-3 | 3 | 2023-08-01 | | 2023-08-01 | | + +Now, let's look at how this structure can help in writing queries. In a later section of this article, we'll examine the SQL code that can take our ERP table and convert it into this dimensional model. + +### Mileage for a component + +Suppose we wanted to know the total mileage accumulated on "Wheel-1". The SQL code for determining this is very similar to that for determining the mileage for a given bike. + +```sql +select + mdim_components.component_id, + sum(fct_daily_mileage.miles) as miles +from + fct_daily_mileage +inner join + mdim_components + on + fct_daily_mileage.component_sk = mdim_components.component_sk +group by + 1 +where + component_id = 'Wheel-1' +``` + +:::caution + +One thing to be *very cautious* about when working with multivalued dimensions is that you need to be careful interpreting aggregations. For example, suppose we chose to aggregate on `top_assembly_id` (to reduce clutter, this field is not shown in the data model above because it is just "Bike-1" for each record). For this aggregation, we would be over-counting the total mileage on that top assembly because the join would result in a Cartesian product and thus we'd get a ["fan-out" situation](https://community.looker.com/technical-tips-tricks-1021/the-problem-of-sql-fanouts-30232). +::: + +### Bonus: Finding components installed at the same time as other components + +This structure simplifies other kinds of interesting analysis. Suppose we wanted to start exploring how one component affects another, like whether certain brands of tube needed to be replaced more often if they were in a new brand of tire. We can do this by partitioning the data into the segments of time where the components are not changing and looking for other components installed at the same time. For example, to find all of the components that were ever installed at the same time "Tube-3" was installed, we can collect them with a simple window function. We could then use the results of this query in a regression or other type of statistical analysis. + +```sql +select distinct + component_id +from + mdim_components +qualify + sum(iff(component_id = 'Tube-3', 1, 0)) over (partition by valid_from_at, valid_to_at) > 0 +``` + + +## SQL code to build the dimensional model + +Now we get to the fun part! This section shows how to take the ERP source data and turn it into the multivalued dimensional model. This SQL code was written and tested using Snowflake, but should be adaptable to other dialects. + +### Traversing the hierarchy + +The first step will be to traverse the hierarchy of components to find all components that belong to the same top assembly. In our example above, we only had one bike and thus just one top assembly; in a real system, there will be many (and we may even swap components between different top assemblies!). + +The key here is to use a [recursive join](https://docs.snowflake.com/en/sql-reference/constructs/with#recursive-clause) to move from the top of the hierarchy to all children and grandchildren. The top of the hierarchy is easy to identify because they are the only records without any parents. + +```sql +with recursive +-- Contains our source data with records that link a child to a parent +components as ( + select + *, + -- Valid dates start as installed/removed, but may be modified as we traverse the hierarchy below + installed_at as valid_from_at, + removed_at as valid_to_at + from + erp_components +), + +-- Get all the source records that are at the top of hierarchy +top_assemblies as ( + select * from components where assembly_id is null +), + +-- This is where the recursion happens that traverses the hierarchy +traversal as ( + -- Start at the top of hierarchy + select + -- Keep track of the depth as we traverse down + 0 as component_hierarchy_depth, + -- Flag to determine if we've entered a circular relationship + false as is_circular, + -- Define an array that will keep track of all of the ancestors of a component + [component_id] as component_trace, + -- At the top of the hierarchy, the component is the top assembly + component_id as top_assembly_id, + + assembly_id, + component_id, + + installed_at, + removed_at, + valid_from_at, + valid_to_at + from + top_assemblies + + union all + + -- Join the current layer of the hierarchy with the next layer down by linking + -- the current component id to the assembly id of the child + select + traversal.component_hierarchy_depth + 1 as component_hierarchy_depth, + -- Check for any circular dependencies + array_contains(components.component_id::variant, traversal.component_trace) as is_circular, + -- Append trace array + array_append(traversal.component_trace, components.component_id) as component_trace, + -- Keep track of the top of the assembly + traversal.top_assembly_id, + + components.assembly_id, + components.component_id, + + components.installed_at, + components.removed_at, + -- As we recurse down the hierarchy, only want to consider time ranges where both + -- parent and child are installed; so choose the latest "from" timestamp and the earliest "to". + greatest(traversal.valid_from_at, components.valid_from_at) as valid_from_at, + least(traversal.valid_to_at, components.valid_to_at) as valid_to_at + from + traversal + inner join + components + on + traversal.component_id = components.assembly_id + and + -- Exclude component assemblies that weren't installed at the same time + -- This may happen due to source data quality issues + ( + traversal.valid_from_at < components.valid_to_at + and + traversal.valid_to_at >= components.valid_from_at + ) + where + -- Stop if a circular hierarchy is detected + not array_contains(components.component_id::variant, traversal.component_trace) + -- There can be some bad data that might end up in hierarchies that are artificially extremely deep + and traversal.component_hierarchy_depth < 20 +), + +final as ( + -- Note that there may be duplicates at this point (thus "distinct"). + -- Duplicates can happen when a component's parent is moved from one grandparent to another. + -- At this point, we only traced the ancestry of a component, and fixed the valid/from dates + -- so that all child ranges are contained in parent ranges. + + select distinct * + from + traversal + where + -- Prevent zero-time (or less) associations from showing up + valid_from_at < valid_to_at +) + +select * from final +``` + +At the end of the above step, we have a table that looks very much like the `erp_components` that it used as the source, but with a few additional valuable columns: + +* `top_assembly_id` - This is the most important output of the hierarchy traversal. It ties all sub components to a their common parent. We'll use this in the next step to chop up the hierarchy into all the distinct ranges of time where the components that share a common top assembly are constant (and each distict range of time and `top_assembly_id` getting their own surrogate key). +* `component_hierarchy_depth` - Indicates how far removed a component is from the top assembly. +* `component_trace` - Contains an array of all the components linking this component to the top assembly. +* `valid_from_at`/`valid_to_at` - If you have really high-quality source data, these will be identical to `installed_at`/`removed_at`. However, in the real world, we've found cases where the installed and removal dates are not consistent between parent and child, either due to a data entry error or a technician forgetting to note when a component was removed. So for example, we may have a parent assembly that was removed along with all of its children, but only the parent assembly has `removed_at` populated. At this point, the `valid_from_at` and `valid_to_at` tidy up these kinds of scenarios. + +### Temporal range join + +The last step is perform a [temporal range join](https://discourse.getdbt.com/t/joining-snapshot-tables-time-range-based-joins/3226) between the top assembly and all of its descendents. This is what splits out all of the time-varying component changes into distinct ranges of time where the component hierarchy is constant. This range join makes use of [the dbt macro in this gist](https://gist.github.com/gnilrets/48886b4c8945dde1da13547c2373df73), the operation of which is out-of-scope for this article, but you are encouraged to investigate it and the discourse post mentioned earlier. + +```sql +-- Start with all of the assemblies at the top (hierarchy depth = 0) +with l0_assemblies as ( + select + top_assembly_id, + component_id, + -- Prep fields required for temporal range join + {{ dbt_utils.surrogate_key(['component_id', 'valid_from_at']) }} as dbt_scd_id, + valid_from_at as dbt_valid_from, + valid_to_at as dbt_valid_to + from + component_traversal + where + component_hierarchy_depth = 0 +), + +components as ( + select + top_assembly_id, + component_hierarchy_depth, + component_trace, + assembly_id, + component_id, + installed_at, + removed_at, + -- Prep fields required for temporal range join + {{ dbt_utils.surrogate_key(['component_trace', 'valid_from_at'])}} as dbt_scd_id, + valid_from_at as dbt_valid_from, + valid_to_at as dbt_valid_to + from + component_traversal +), + +-- Perform temporal range join +{{ + trange_join( + left_model='l0_assemblies', + left_fields=[ + 'top_assembly_id', + ], + left_primary_key='top_assembly_id', + right_models={ + 'components': { + 'fields': [ + 'component_hierarchy_depth', + 'component_trace', + 'assembly_id', + 'component_id', + 'installed_at', + 'removed_at', + ], + 'left_on': 'component_id', + 'right_on': 'top_assembly_id', + } + } + ) +}} + +select + surrogate_key, + top_assembly_id, + component_hierarchy_depth, + component_trace, + assembly_id, + component_id, + installed_at, + removed_at, + valid_from_at, + valid_to_at +from + trange_final +order by + top_assembly_id, + valid_from_at, + component_hierarchy_depth +``` + +## Bonus: component swap + +Before we go, let's investigate one other interesting scenario. Suppose we have two bikes, "Bike-1" and "Bike-2". While performing service, a technician notices that the color on the rim of "Bike-2" matches with the frame of "Bike-1" and vice-versa. Perhaps there was a mistake made during the initial assembly process? The technician decides to swap the wheels between the two bikes. The ERP system then shows that "Wheel-1" was removed from "Bike-1" on the service date and that "Wheel-1" was installed in "Bike-2" on the same date (similarly for "Wheel-2"). To reduce clutter below, we'll ignore Frames and Tubes. + +**`erp_components`:** + +| `assembly_id` | `component_id` | `installed_at` | `removed_at` | +| - | - | - | - | +| | Bike-1 | 2023-01-01 | | +| Bike-1 | Wheel-1 | 2023-01-01 | 2023-06-01 | +| Wheel-1 | Rim-1 | 2023-01-01 | | +| Wheel-1 | Tire-1 | 2023-01-01 | | +| | Bike-2 | 2023-02-01 | | +| Bike-2 | Wheel-2 | 2023-02-01 | 2023-06-01 | +| Wheel-2 | Rim-2 | 2023-02-01 | | +| Wheel-2 | Tire-2 | 2023-02-01 | | +| Bike-2 | Wheel-1 | 2023-06-01 | | +| Bike-1 | Wheel-2 | 2023-06-01 | | + +When this ERP data gets converted into the multivalued dimension, we get the table below. In the ERP data, only one kind of component assembly, the wheel, was removed/installed, but in the dimensional model all of the child components come along for the ride. In the table below, we see that "Bike-1" and "Bike-2" each have two distinct ranges of valid time, one prior to the wheel swap, and one after. + +**`mdim_components`:** + +| `component_sk` | `top_assembly_id` | `assembly_id` | `component_id` | `valid_from_at` | `valid_to_at` | +| - | - | - | - | - | - | +| sk1 | Bike-1 | | Bike-1 | 2023-01-01 | 2023-06-01 | +| sk1 | Bike-1 | Bike-1 | Wheel-1 | 2023-01-01 | 2023-06-01 | +| sk1 | Bike-1 | Wheel-1 | Rim-1 | 2023-01-01 | 2023-06-01 | +| sk1 | Bike-1 | Wheel-1 | Tire-1 | 2023-01-01 | 2023-06-01 | +| sk2 | Bike-1 | | Bike-1 | 2023-06-01 | | +| sk2 | Bike-1 | Bike-1 | Wheel-2 | 2023-06-01 | | +| sk2 | Bike-1 | Wheel-2 | Rim-2 | 2023-06-01 | | +| sk2 | Bike-1 | Wheel-2 | Tire-2 | 2023-06-01 | | +| sk3 | Bike-2 | | Bike-2 | 2023-02-01 | 2023-06-01 | +| sk3 | Bike-2 | Bike-2 | Wheel-2 | 2023-02-01 | 2023-06-01 | +| sk3 | Bike-2 | Wheel-2 | Rim-2 | 2023-02-01 | 2023-06-01 | +| sk3 | Bike-2 | Wheel-2 | Tire-2 | 2023-02-01 | 2023-06-01 | +| sk4 | Bike-2 | | Bike-2 | 2023-06-01 | | +| sk4 | Bike-2 | Bike-2 | Wheel-1 | 2023-06-01 | | +| sk4 | Bike-2 | Wheel-1 | Rim-1 | 2023-06-01 | | +| sk4 | Bike-2 | Wheel-1 | Tire-1 | 2023-06-01 | | + +## Summary + +In this article, we've explored a strategy for creating a dimensional model for ragged time-varying hierarchies. We used a simple toy system involving one or two eBikes. In the real world, there would be many more individual products, deeper hierarchies, more component attributes, and the install/removal dates would likely be captured with a timestamp component as well. The model described here works very well even in these messier real world cases. + +If you have any questions or comments, please reach out to me by commenting on this post or contacting me on dbt slack (@Sterling Paramore). diff --git a/website/blog/authors.yml b/website/blog/authors.yml index 6d222e8a543..e9b48bd02fc 100644 --- a/website/blog/authors.yml +++ b/website/blog/authors.yml @@ -186,7 +186,7 @@ emily_riederer: url: https://twitter.com/emilyriederer - icon: fa-readme url: https://emilyriederer.com - + grace_goheen: image_url: /img/blog/authors/grace-goheen.jpeg job_title: Analytics Engineer @@ -461,6 +461,17 @@ simon_podhajsky: name: Simon Podhajsky organization: iLife Technologies +sterling_paramore: + description: | + Sterling Paramore started his career in theoretical and computation biophysics and learned that working with data was way more fun than being locked in the ivory tower. He loves solving data engineering and data analytics problems and has been a long time evangelist for dbt. + image_url: /img/blog/authors/sterling-paramore.png + job_title: Sr Staff Data Engineer + links: + - icon: fa-linkedin + url: https://www.linkedin.com/in/sterlingparamore/ + name: Sterling Paramore + organization: Mainspring Energy + sung_chung: image_url: /img/blog/authors/sung.jpeg job_title: Solutions Architect diff --git a/website/static/img/blog/2023-05-02-modeling-ragged-time-varying-hierarchies/hierarchy.png b/website/static/img/blog/2023-05-02-modeling-ragged-time-varying-hierarchies/hierarchy.png new file mode 100644 index 0000000000000000000000000000000000000000..88316f363f2808c39d2f79a3b275f3fbe71bae2a GIT binary patch literal 41053 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
Can I be a contributor to dbt Cloud?
-
Anyone can contribute to the dbt project. And whether it's a dbt package, a plugin, dbt-core, or this documentation site, contributing to the open source code that supports the dbt ecosystem is a great way to level yourself up as a developer, and give back to the community. See Contributing for details on what to expect when contributing to the dbt open source software (OSS).
+
Anyone can contribute to the dbt project. And whether it's a dbt package, a plugin, dbt-core, or this documentation site, contributing to the open-source code that supports the dbt ecosystem is a great way to level yourself up as a developer, and give back to the community. See Contributing for details on what to expect when contributing to the dbt open source software (OSS).
From 8ab0f8c615baa4ad9a0d5902e1decf08b68b3817 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 26 Jul 2023 12:24:52 +0100 Subject: [PATCH 319/703] prep for idev1.2 --- .../dbt-cloud-ide/develop-in-the-cloud.md | 4 +- website/docs/reference/dbt-commands.md | 39 ++++++++++--------- 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md index fd7eefdb4c3..d29f263686f 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md @@ -74,8 +74,8 @@ To stay informed on IDE updates, read [dbt Cloud IDE release notes](/tags/ide), There are three start-up states when using or launching the Cloud IDE: - **Creation start —** This is the state where you are starting the IDE for the first time. You can also view this as a *cold start* (see below), and you can expect this state to take longer because the git repository is being cloned. -- **Cold start —** This is the process of starting a new develop session, which will be available for you for three hours. The environment automatically turns off three hours after the last activity with the rpc server. This includes compile, preview, or any dbt invocation, however, it *does not* include editing and saving a file. --** Hot start —** This is the state of resuming an existing or active develop session within three hours of the last activity. +- **Cold start —** This is the process of starting a new develop session, which will be available for you for three hours. The environment automatically turns off three hours after the last activity. This includes compile, preview, or any dbt invocation, however, it *does not* include editing and saving a file. +- **Hot start —** This is the state of resuming an existing or active develop session within three hours of the last activity. ### Work retention diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index 22cac459f4b..ff9fea4cc00 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -15,24 +15,27 @@ The following sections outline the commands supported by dbt and their relevant Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [CLI](/docs/core/about-the-cli). Use the `dbt` prefix. For example, to run the `test` command, type `dbt test`. -- [build](/reference/commands/build): build and test all selected resources (models, seeds, snapshots, tests) -- [clean](/reference/commands/clean): deletes artifacts present in the dbt project -- [clone](/reference/commands/clone): clone selected models from the specified state (requires dbt 1.6 or higher) -- [compile](/reference/commands/compile): compiles (but does not run) the models in a project -- [debug](/reference/commands/debug): debugs dbt connections and projects -- [deps](/reference/commands/deps): downloads dependencies for a project -- [docs](/reference/commands/cmd-docs) : generates documentation for a project -- [list](/reference/commands/list): lists resources defined in a dbt project -- [parse](/reference/commands/parse): parses a project and writes detailed timing info -- [retry](/reference/commands/retry): retry the last run `dbt` command from the point of failure (requires dbt 1.6 or higher) -- [run](/reference/commands/run): runs the models in a project -- [run-operation](/reference/commands/run-operation): invoke a macro, including running arbitrary maintenance SQL against the database -- [seed](/reference/commands/seed): loads CSV files into the database -- [show](/reference/commands/show): preview table rows post-transformation -- [snapshot](/reference/commands/snapshot): executes "snapshot" jobs defined in a project -- [source](/reference/commands/source): provides tools for working with source data (including validating that sources are "fresh") -- [test](/reference/commands/test): executes tests defined in a project -- [init](/reference/commands/init): initializes a new dbt project (CLI only) +| Command | Description | Version | +| ------- | ----------- | ------- | +| [build](/reference/commands/build) | Build and test all selected resources (models, seeds, snapshots, tests) | All [supported versions](/docs/dbt-versions/core) | +| [clean](/reference/commands/clean) | Deletes artifacts present in the dbt project | All [supported versions](/docs/dbt-versions/core) | +| [clone](/reference/commands/clone) | Clone selected models from the specified state | Requires [dbt v1.6 or higher](/docs/dbt-versions/core) | +| [compile](/reference/commands/compile) | Compiles (but does not run) the models in a project | All [supported versions](/docs/dbt-versions/core) | +| [debug](/reference/commands/debug) | Debugs dbt connections and projects | All [supported versions](/docs/dbt-versions/core) | +| [deps](/reference/commands/deps) | Downloads dependencies for a project | All [supported versions](/docs/dbt-versions/core) | +| [docs](/reference/commands/cmd-docs) | Generates documentation for a project | All [supported versions](/docs/dbt-versions/core) | +| [list](/reference/commands/list) | Lists resources defined in a dbt project | All [supported versions](/docs/dbt-versions/core) | +| [parse](/reference/commands/parse) | Parses a project and writes detailed timing info | All [supported versions](/docs/dbt-versions/core) | +| [retry](/reference/commands/retry) | Retry the last run `dbt` command from the point of failure | Requires [dbt v1.6 or higher](/docs/dbt-versions/core) | +| [run](/reference/commands/run) | Runs the models in a project | All [supported versions](/docs/dbt-versions/core) | +| [run-operation](/reference/commands/run-operation) | Invoke a macro, including running arbitrary maintenance SQL against
the database | All [supported versions](/docs/dbt-versions/core) | +| [seed](/reference/commands/seed) | Loads CSV files into the database | All [supported versions](/docs/dbt-versions/core) | +| [show](/reference/commands/show) | Preview table rows post-transformation | All [supported versions](/docs/dbt-versions/core) | +| [snapshot](/reference/commands/snapshot) | Executes "snapshot" jobs defined in a project | All [supported versions](/docs/dbt-versions/core) | +| [source](/reference/commands/source) | Provides tools for working with source data (including validating that
sources are "fresh") | All [supported versions](/docs/dbt-versions/core) | +| [test](/reference/commands/test) | Executes tests defined in a project | All [supported versions](/docs/dbt-versions/core) | +| [init](/reference/commands/init) | Initializes a new dbt project (CLI only) | All [supported versions](/docs/dbt-versions/core) | + From 01c7afa4125f431888b04432a3f5a8c81400f7ed Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 26 Jul 2023 12:50:20 +0100 Subject: [PATCH 320/703] add it and readonly license --- .../cloud/manage-access/cloud-seats-and-users.md | 3 ++- website/docs/docs/deploy/job-notifications.md | 14 ++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/website/docs/docs/cloud/manage-access/cloud-seats-and-users.md b/website/docs/docs/cloud/manage-access/cloud-seats-and-users.md index baa92b5a98f..cc1ee86b380 100644 --- a/website/docs/docs/cloud/manage-access/cloud-seats-and-users.md +++ b/website/docs/docs/cloud/manage-access/cloud-seats-and-users.md @@ -15,12 +15,13 @@ The user's assigned license determines the specific capabilities they can access | Functionality | Developer User | Read-Only Users | IT Users* | | ------------- | -------------- | --------------- | -------- | -| Use the Developer IDE | ✅ | ❌ | ❌ | +| Use the dbt Cloud IDE | ✅ | ❌ | ❌ | | Use Jobs | ✅ | ❌ | ❌ | | Manage Account | ✅ | ❌ | ✅ | | API Access | ✅ | ❌ | ❌ | | Use [Source Freshness](/docs/deploy/source-freshness) | ✅ | ✅ | ❌ | | Use [Docs](/docs/collaborate/build-and-view-your-docs) | ✅ | ✅ | ❌ | +| Receive [Job notifications](/docs/deploy/job-notifications) | ✅ | ✅ | ✅ | *Available on Enterprise and Team plans only and doesn't count toward seat usage. ## Licenses diff --git a/website/docs/docs/deploy/job-notifications.md b/website/docs/docs/deploy/job-notifications.md index c240ca12183..63af4866f1d 100644 --- a/website/docs/docs/deploy/job-notifications.md +++ b/website/docs/docs/deploy/job-notifications.md @@ -9,13 +9,19 @@ Setting up notifications in dbt Cloud will allow you to receive alerts via Email ### Email -There are two options for setting up email notifications. As a **user**, you can set up email notifications for yourself under your Profile. As an **admin**, you can set up notifications on behalf of your team members. +These are the following options for setting up email notifications: -1. Click the gear in the top right and select **Notification settings**. +- As a **user** — You can set up email notifications for yourself under your Profile. +- As an **admin** — You can set up notifications on behalf of your team members. Refer to [Users and licenses](/docs/cloud/manage-access/seats-and-users) for info on license types eligible for email notifications. -2. **As a user:** Select **Edit** and select the type of Notification (Succeeds, Fails, or Is Cancelled) for each Job for which you would like to be notified, or +To set up job notifications, follow these steps: - **As an admin:** Select one or more users you'd like to set notifications for. If you only see your own name, then you might not have admin privileges. Select **Edit** and select the type of Notification (Succeeds, Fails, or Is Cancelled) for each Job for which they will be notified. +1. Click the gear menu in the top right corner and select **Notification Settings**. + + - **As a user:** Select **Edit** and choose the Notification type (Succeeds, Fails, or Is Cancelled) for each Job you want to receive notifications for. + + - **As an admin:** Use the dropdown to select one or more users you'd like to set notifications for under **Configure notifications for**. If you only see your own name, then you might not have admin privileges. + * Select **Edit** and choose the Notification type (Succeeds, Fails, or Is Cancelled) for each Job you want them to receive notifications for. 3. Click **Save**. From 8df3611389f82a93245738a6d68c1a00cae494c6 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 26 Jul 2023 13:07:29 +0100 Subject: [PATCH 321/703] clarify steps --- website/docs/docs/deploy/job-notifications.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/deploy/job-notifications.md b/website/docs/docs/deploy/job-notifications.md index 63af4866f1d..f7281c90202 100644 --- a/website/docs/docs/deploy/job-notifications.md +++ b/website/docs/docs/deploy/job-notifications.md @@ -18,10 +18,11 @@ To set up job notifications, follow these steps: 1. Click the gear menu in the top right corner and select **Notification Settings**. - - **As a user:** Select **Edit** and choose the Notification type (Succeeds, Fails, or Is Cancelled) for each Job you want to receive notifications for. +2. Select **Edit** to begin editing the **Email Notifications** settings. + - **As a user:** Choose the Notification type (Succeeds, Fails, or Is Cancelled) for each Job you want to receive notifications for. - - **As an admin:** Use the dropdown to select one or more users you'd like to set notifications for under **Configure notifications for**. If you only see your own name, then you might not have admin privileges. - * Select **Edit** and choose the Notification type (Succeeds, Fails, or Is Cancelled) for each Job you want them to receive notifications for. + - **As an admin:** Under **Configure notifications for**, use the dropdown to select one or more users you'd like to set notifications for. If you only see your own name, then you might not have admin privileges.

+ Choose the Notification type (Succeeds, Fails, or Is Cancelled) for each Job you want them to receive notifications for. 3. Click **Save**. From b4c63c8e611a6baf2128dffa1fd7d6e11e853c24 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 26 Jul 2023 13:10:33 +0100 Subject: [PATCH 322/703] fix image size --- website/docs/docs/deploy/job-notifications.md | 3 ++- website/snippets/slack-notifications-config-steps.md | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/website/docs/docs/deploy/job-notifications.md b/website/docs/docs/deploy/job-notifications.md index f7281c90202..72725a1e460 100644 --- a/website/docs/docs/deploy/job-notifications.md +++ b/website/docs/docs/deploy/job-notifications.md @@ -25,7 +25,8 @@ To set up job notifications, follow these steps: Choose the Notification type (Succeeds, Fails, or Is Cancelled) for each Job you want them to receive notifications for. 3. Click **Save**. - + + ### Slack diff --git a/website/snippets/slack-notifications-config-steps.md b/website/snippets/slack-notifications-config-steps.md index e643d4c5644..da63f7afcc9 100644 --- a/website/snippets/slack-notifications-config-steps.md +++ b/website/snippets/slack-notifications-config-steps.md @@ -9,17 +9,17 @@ If there have been changes to the user roles and you need to move ownership, ple 1. Click the gear in the top right and select **Profile**. 2. Click **Integrations** to the left. - + 3. Click **Link your Slack profile** - + 4. Allow dbt Labs to access the Slack workspace. If you are a member of multiple, you can select the appropriate workspace from the dropdown menu in the top right corner. - + ### Configure the notifications 1. Click the gear in the top right and select **Account Settings**. 2. Click **Slack Notifications** to the left and click **Edit** to the right. - + 3. You can find the Slack notification settings at the bottom of the page. ### Disabling the Slack integration From 6f8ce473f7ce21337cc307b904b6752d1fbd9211 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 13:50:48 +0100 Subject: [PATCH 323/703] Update website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md --- website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md index d29f263686f..e4106c0aca6 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md @@ -6,7 +6,7 @@ sidebar_label: Develop in the IDE tags: [IDE] --- -The dbt Cloud integrated development environment (IDE) is a single interface for building, testing, running, and version-controlling dbt projects from your browser. With the Cloud IDE, you can compile dbt code into SQL and run it against your database directly. The IDE leverages the dbt-server, making the IDE faster and more reliable. +The dbt Cloud integrated development environment (IDE) is a single interface for building, testing, running, and version-controlling dbt projects from your browser. With the Cloud IDE, you can compile dbt code into SQL and run it against your database directly. ## Prerequisites From 24736f3c4308f8df4a8f7d976da1ec151019e0bc Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 26 Jul 2023 19:24:39 +0100 Subject: [PATCH 324/703] tweak sl guide --- .../sl-partner-integration-guide.md | 68 ++++++++----------- 1 file changed, 27 insertions(+), 41 deletions(-) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index b431091ffe6..1a7f5ef74a2 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -13,7 +13,7 @@ import NewChanges from '/snippets/_new-sl-changes.md'; To fit your tool within the world of the Semantic Layer, dbt Labs offers some best practice recommendations for how to expose metrics and allow users to interact with them seamlessly. :::note -This is an evolving guide that is meant to provide recommendations based on our experience. If you have any feedback, we'd love to hear it (email?)! +This is an evolving guide that is meant to provide recommendations based on our experience. If you have any feedback, we'd love to hear it! ::: @@ -30,14 +30,9 @@ To build a dbt Semantic Layer integration: ### Connection parameters -The dbt Semantic Layer authenticates with: -- `environmentId`, -- `SERVICE_TOKEN`, -- `host` +The dbt Semantic Layer authenticates with `environmentId`, `SERVICE_TOKEN`, and `host`. -This applies to the dbt Semantic Layer APIs, which all currently use different host names. - -We recommend you provide users with separate input fields with these components (which dbt Cloud provides). +This applies to the dbt Semantic Layer APIs, which all currently use different host names. We recommend you provide users with separate input fields with these components (which dbt Cloud provides). For [JDBC](/docs/dbt-cloud-apis/sl-jdbc), you can construct the JDBC URL from these inputs. Or, you could request the full URL string. @@ -46,43 +41,35 @@ For [JDBC](/docs/dbt-cloud-apis/sl-jdbc), you can construct the JDBC URL from th Best practices for exposing metrics is summarized into five themes: -- [Governance](#governance-and-traceability) — -- [Discoverability](#discoverability) — -- [Organization](#organization) — -- [Context and interpretation](#context-and-interpretation) — -- [Query flexibility](#query-flexibility) — +- [Governance](#governance-and-traceability) — Recommendations on how to establish guardrails for governed data work. +- [Discoverability](#discoverability) — Recommendations on how to make user-friendly data interactions. +- [Organization](#organization) — Organize metrics and dimensions for all audiences. +- [Query flexibility](#query-flexibility) — Allow users to query either one metric alone without dimensions or multiple metrics with dimensions. +- [Context and interpretation](#context-and-interpretation) — Contextualize metrics for better analysis; expose definitions, metadata, lineage, and freshness. ### Governance and traceability When working with more governed data, it's essential to establish clear guardrails. Here are some recommendations: -**Aggregations control**
-Users shouldn't generally be allowed to modify aggregations unless they are performing post-processing calculations on data from the Semantic Layer (such as year over year analysis). - -**Time series alignment and using metric_time**
-Make sure users view metrics across the correct time series. When displaying metric graphs, using a non-default time aggregation dimension might lead to misleading interpretations. While users can still group by other time dimensions, they should be careful not to create trend lines with incorrect time axes. - -When looking at one or multiple metrics, users should use `metric_time` as the main time dimension to guarantee they are looking at the right time series for the metric(s). +- **Aggregations control** — Users shouldn't generally be allowed to modify aggregations unless they are performing post-processing calculations on data from the Semantic Layer (such as year over year analysis). -As such, when building an application, we recommend exposing `metric_time` as a separate, "special" time dimension on its own. This dimension is always going to align with all metrics and be common across them. Other time dimensions can still be looked at and grouped by, but having a clear delineation between the `metric_time` dimension and the other time dimensions is clarifying so that people do not confuse how metrics should be plotted. +- **Time series alignment and using metric_time** — Make sure users view metrics across the correct time series. When displaying metric graphs, using a non-default time aggregation dimension might lead to misleading interpretations. While users can still group by other time dimensions, they should be careful not to create trend lines with incorrect time axes.

When looking at one or multiple metrics, users should use `metric_time` as the main time dimension to guarantee they are looking at the right time series for the metric(s).

As such, when building an application, we recommend exposing `metric_time` as a separate, "special" time dimension on its own. This dimension is always going to align with all metrics and be common across them. Other time dimensions can still be looked at and grouped by, but having a clear delineation between the `metric_time` dimension and the other time dimensions is clarifying so that people do not confuse how metrics should be plotted.

Also, when a user requests a time granularity change for the main time series, the query that your application runs should use `metric_time` as this will always give you the correct slice. Note that when looking at a single metric, the primary time dimension and `metric_time` are equivalent. -Also, when a user requests a time granularity change for the main time series, the query that your application runs should use `metric_time` as this will always give you the correct slice. Note that when looking at a single metric, the primary time dimension and `metric_time` are equivalent. +- **Units consistency** — If units are supported, it's vital to avoid plotting data incorrectly with different units. Ensuring consistency in unit representation will prevent confusion and misinterpretation of the data. -**Units consistency**
-If units are supported, it's vital to avoid plotting data incorrectly with different units. Ensuring consistency in unit representation will prevent confusion and misinterpretation of the data. - -**Traceability of metric and dimension changes**
-When users change names of metrics and dimensions for reports, it's crucial to have a traceability mechanism in place to link back to the original source metric name. +- **Traceability of metric and dimension changes** — When users change names of metrics and dimensions for reports, it's crucial to have a traceability mechanism in place to link back to the original source metric name. ### Discoverability - Consider treating [metrics](/docs/build/metrics-overview) as first-class objects rather than measures. Metrics offer a higher-level and more contextual way to interact with data, reducing the burden on end-users to manually aggregate data. + - Easy metric interactions: Provide users with an intuitive approach to: * Search for Metrics — Users should be able to easily search and find relevant metrics. Metrics can serve as the starting point to lead users into exploring dimensions. * Search for Dimensions — Users should be able to query metrics with associated dimensions, allowing them to gain deeper insights into the data. * Filter by Dimension Values — Expose and enable users to filter metrics based on dimension values, encouraging data analysis and exploration. * Filter additional metadata — Allow users to filter metrics based on other available metadata, such as metric type and default time granularity. + - Suggested Metrics: Ideally, the system should intelligently suggest relevant metrics to users based on their team's activities. This approach encourages user exposure, facilitates learning, and supports collaboration among team members. By implementing these recommendations, the data interaction process becomes more user-friendly, empowering users to gain valuable insights without the need for extensive data manipulation. @@ -91,27 +78,23 @@ By implementing these recommendations, the data interaction process becomes more We recommend organizing metrics and dimensions in ways that a non-technical user can understand the data model, without needing much context: -**Organizing Dimensions** - -To help non-technical users understand the data model better, we recommend organizing dimensions based on the entity they originated from. For example, consider dimensions like `user__country` and `product__category`. - -You can create groups by extracting `user` and `product` and then nest the respective dimensions under each group. This way, dimensions align with the entity or semantic model they belong to and makes them them more user-friendly and accessible. - -**Organizing Metrics** +- **Organizing Dimensions** — To help non-technical users understand the data model better, we recommend organizing dimensions based on the entity they originated from. For example, consider dimensions like `user__country` and `product__category`.

You can create groups by extracting `user` and `product` and then nest the respective dimensions under each group. This way, dimensions align with the entity or semantic model they belong to and makes them them more user-friendly and accessible. -The goal is to organize metrics into a hierarchy in our configurations, instead of presenting them in a long list. - -This hierarchy helps you organize metrics based on a specific criteria, such as business unit or team. By providing this structured organization, users can find and navigate metrics more efficiently, enhancing their overall data analysis experience. +- **Organizing Metrics** — The goal is to organize metrics into a hierarchy in our configurations, instead of presenting them in a long list.

This hierarchy helps you organize metrics based on a specific criteria, such as business unit or team. By providing this structured organization, users can find and navigate metrics more efficiently, enhancing their overall data analysis experience. ### Query flexibility -Allow users to query either one metric alone without dimensions or multiple metrics with dimensions +Allow users to query either one metric alone without dimensions or multiple metrics with dimensions. + +- Allow toggling between metrics / dimensions seamlessly. -- Allow toggling between metrics / dimensions seamlessly - Be clear on exposing what dimensions are queryable with what metrics and hide things that don’t apply, and vice versa. + - Only expose time granularities (monthly, daily, yearly) that match the available metrics. * For example, if a dbt model and its resulting semantic model have a monthly granularity, make sure querying data with a 'daily' granularity isn't available to the user. Our APIs have functionality that will help you surface the correct granularities + - We recommend that time granularity is treated as a general time dimension-specific concept and that it can be applied to more than just the primary aggregation (or `metric_time`). Consider a situation where a user wants to look at `sales` over time by `customer signup month`; in this situation, having the ability able to apply granularities to both time dimensions is crucial. Note: initially, as a starting point, it makes sense to only support `metric_time` or the primary time dimension, but we recommend expanding that as your solution evolves. + - You should allow users to filter on date ranges and expose a calendar and nice presets for filtering these. * For example: last 30 days, last week etc. @@ -119,11 +102,14 @@ Allow users to query either one metric alone without dimensions or multiple metr For better analysis, it's best to have the context of the metrics close to where the analysis is happening. We recommend the following: -- Expose business definitions of the metrics as well as logical definitions -- Expose additional metadata from the Semantic layer (measures, type parameters) +- Expose business definitions of the metrics as well as logical definitions. + +- Expose additional metadata from the Semantic layer (measures, type parameters). + - Use the [Discovery API](/docs/dbt-cloud-apis/discovery-api) to enhance the metric and build confidence in its accuracy: * Check if the metric is fresh and when it was last updated. * Include lineage information to understand the metric's origin. + - Allow for creating other metadata that’s useful for the metric. We can provide some of this information in our configuration (Display name, Default Granularity for View, Default Time range), but there may be other metadata that your tool wants to provide to make the metric richer. ### Example stages of an integration From cd0b4b10e416766aefb9fb4bbeccf0fbfcf90b95 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:10:59 +0100 Subject: [PATCH 325/703] Update website/snippets/_v2-sl-prerequisites.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_v2-sl-prerequisites.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 7dde6f32572..f810d0fee33 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -1,6 +1,8 @@ +To use the Semantic Layer, you must: + - Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America - Have both your production and development environments running dbt version 1.6 or higher - Use Snowflake, BigQuery, Databricks, and Redshift data platform From 13f87bbbcd6c7668499cf247ffc946f16d0b4c4a Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:11:21 +0100 Subject: [PATCH 326/703] Update website/snippets/_v2-sl-prerequisites.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_v2-sl-prerequisites.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index f810d0fee33..cb95a970775 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -6,7 +6,7 @@ To use the Semantic Layer, you must: - Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America - Have both your production and development environments running dbt version 1.6 or higher - Use Snowflake, BigQuery, Databricks, and Redshift data platform -- A successful run in the environment where your Semantic Layer is configured +- Create a successful run in the environment where you configure the Semantic Layer.
* Note — Deployment environment is currently supported (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions From a29545faee6927681ace9dc98dbb928650336d69 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:11:34 +0100 Subject: [PATCH 327/703] Update website/snippets/_v2-sl-prerequisites.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_v2-sl-prerequisites.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index cb95a970775..e4d5b28bde6 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -11,7 +11,7 @@ To use the Semantic Layer, you must: - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions * Developer accounts will be able to query manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you'll need to have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
-- Have an understanding of [MetricFlow's](/docs/build/about-metricflow) key concepts, which powers the revamped dbt Semantic Layer. +- Understand [MetricFlow's](/docs/build/about-metricflow) key concepts, which powers the revamped dbt Semantic Layer.
From 7982c6b50f4e05923fa492ca28eded71f2e65cd6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:13:17 +0100 Subject: [PATCH 328/703] Update website/snippets/_v2-sl-prerequisites.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_v2-sl-prerequisites.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index e4d5b28bde6..88a8e66620a 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -10,7 +10,7 @@ To use the Semantic Layer, you must: * Note — Deployment environment is currently supported (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions - * Developer accounts will be able to query manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you'll need to have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
+**Note:** Developer accounts can only query data manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you must have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
- Understand [MetricFlow's](/docs/build/about-metricflow) key concepts, which powers the revamped dbt Semantic Layer. From c378b506516694af8d1751c30fb88133e12e2eff Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:13:35 +0100 Subject: [PATCH 329/703] Update website/snippets/_v2-sl-prerequisites.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_v2-sl-prerequisites.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 88a8e66620a..359a4aa7551 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -9,7 +9,7 @@ To use the Semantic Layer, you must: - Create a successful run in the environment where you configure the Semantic Layer.
* Note — Deployment environment is currently supported (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. -- Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions +- Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions.
**Note:** Developer accounts can only query data manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you must have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
- Understand [MetricFlow's](/docs/build/about-metricflow) key concepts, which powers the revamped dbt Semantic Layer. From 6a81e23ea29a40a9674c04a1e7098eda81f31d91 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:13:54 +0100 Subject: [PATCH 330/703] Update website/snippets/_v2-sl-prerequisites.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_v2-sl-prerequisites.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 359a4aa7551..2ee9c8257ea 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -7,7 +7,7 @@ To use the Semantic Layer, you must: - Have both your production and development environments running dbt version 1.6 or higher - Use Snowflake, BigQuery, Databricks, and Redshift data platform - Create a successful run in the environment where you configure the Semantic Layer.
- * Note — Deployment environment is currently supported (_development experience coming soon_) + **Note:** Semantic Layer currently supports Deployment environment. (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions.
**Note:** Developer accounts can only query data manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you must have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
From c837cc46050d6370528f7d4d9ef0173dbc41eb15 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:15:11 +0100 Subject: [PATCH 331/703] Update website/snippets/_legacy-sl-callout.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_legacy-sl-callout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_legacy-sl-callout.md b/website/snippets/_legacy-sl-callout.md index 622e8290181..c3a261510e3 100644 --- a/website/snippets/_legacy-sl-callout.md +++ b/website/snippets/_legacy-sl-callout.md @@ -1,4 +1,4 @@ -:::tip Upgrade to access the new dbt Semantic Layer +:::important Upgrade to access the new dbt Semantic Layer The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing a new API, and making it more efficient to define/query metrics. This means the legacy Semantic Layer, available in dbt v1.5 or lower, is no longer supported and won't receive any code fixes. From a368a90573b725cb81ca622ec431f1d6f1cc2817 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:15:40 +0100 Subject: [PATCH 332/703] Update website/snippets/_legacy-sl-callout.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_legacy-sl-callout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_legacy-sl-callout.md b/website/snippets/_legacy-sl-callout.md index c3a261510e3..84c91895f89 100644 --- a/website/snippets/_legacy-sl-callout.md +++ b/website/snippets/_legacy-sl-callout.md @@ -1,6 +1,6 @@ :::important Upgrade to access the new dbt Semantic Layer -The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing a new API, and making it more efficient to define/query metrics. This means the legacy Semantic Layer, available in dbt v1.5 or lower, is no longer supported and won't receive any code fixes. +The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing a new API, and making it more efficient to define and query metrics. The legacy Semantic Layer, available in dbt v1.5 or lower, is no longer supported and won't receive any code fixes. **Who does this affect?** Anyone who uses the legacy Semantic Layer. The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses). You must be on dbt v1.6 or higher to access it. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. From c71d133cf0eb2cdf51f3b82af125ced7661ab47d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:17:00 +0100 Subject: [PATCH 333/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index e36622c1910..398957b32a7 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -14,7 +14,7 @@ import NewSLChanges from '/snippets/_new-sl-changes.md'; -The dbt Semantic Layer, powered by [MetricFlow](/docs/build/about-metricflow), simplifies the process of defining and using critical business metrics, like `revenue` in the modeling layer (your dbt project). By centralizing metric definitions, data teams can ensure consistent self-service access to these metrics in downstream data tools and applications. The dbt Semantic Layer eliminates duplicate coding by allowing you to define metrics on top of existing models and automatically handles data joins. +The dbt Semantic Layer, powered by [MetricFlow](/docs/build/about-metricflow), simplifies the process of defining and using critical business metrics, like `revenue` in the modeling layer (your dbt project). By centralizing metric definitions, data teams can ensure consistent self-service access to these metrics in downstream data tools and applications. The dbt Semantic Layer eliminates duplicate coding by allowing data teams to define metrics on top of existing models and automatically handles data joins. Moving metric definitions out of the BI layer and into the modeling layer allows data teams to feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. From b6df059fd625320ba9b2eb5519aa58752df849be Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:17:50 +0100 Subject: [PATCH 334/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 398957b32a7..45cd421d8bf 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -18,7 +18,7 @@ The dbt Semantic Layer, powered by [MetricFlow](/docs/build/about-metricflow), s Moving metric definitions out of the BI layer and into the modeling layer allows data teams to feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. -To read more about why you need a universal Semantic Layer, read this [blog post](https://www.getdbt.com/blog/universal-semantic-layer/). +To learn more about why you need a universal Semantic Layer, refer to the [Why we need a universal semantic layer](https://www.getdbt.com/blog/universal-semantic-layer/) blog post. ## Explore the dbt Semantic Layer From 7013d7641d6b5e24e86b43f887bec48ea091a39c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:18:26 +0100 Subject: [PATCH 335/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 45cd421d8bf..56d5b3f073d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -43,7 +43,7 @@ instance="hosted in North America" From 5d455397ac62a3d27bfe59c314b2aeb0b49cc875 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:18:47 +0100 Subject: [PATCH 336/703] Update website/docs/docs/dbt-cloud-apis/sl-manifest.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index 6d388c01e44..ce2d9fb38ac 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -1,7 +1,7 @@ --- title: "Semantic manifest" id: sl-manifest -description: "Learn about the semantic manifest.json file and how you can use artifacts to gain insights about your Semantic Layer." +description: "Learn about the semantic manifest.json file and how you can use artifacts to gain insights about your dbt Semantic Layer." tags: [Semantic Layer, APIs] sidebar_label: "Semantic manifest" --- From f2c28cb40040404e21cb0df10bc4fa6b42ee6c50 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:19:18 +0100 Subject: [PATCH 337/703] Update website/snippets/_new-sl-setup.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_new-sl-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 6a01fd8bc86..9147202c664 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -16,7 +16,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 4. In the **Set Up Semantic Layer Configuration** page, enter the credentials you want the Semantic Layer to use specific to your data platform. - * Note: We recommend using a less privileged set of credentials because your Semantic Layer users will be querying it in downstream applications. At a minimum, the Semantic Layer needs to have read access to the schema(s) that contains the dbt models that you used to build your semantic models. +**Note:** We recommend credentials have the least privileges required because your Semantic Layer users will be querying it in downstream applications. At a minimum, the Semantic Layer needs to have read access to the schema(s) that contains the dbt models that you used to build your semantic models. 5. Select the deployment environment you want for the Semantic Layer and click **Save**. From 0b5fc95b6e89c043ac002fe3b1fe451445a4cb24 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:28:06 +0100 Subject: [PATCH 338/703] Update website/snippets/_sl-plan-info.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_sl-plan-info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_sl-plan-info.md b/website/snippets/_sl-plan-info.md index 23d259a346b..b5cc2ea0e4e 100644 --- a/website/snippets/_sl-plan-info.md +++ b/website/snippets/_sl-plan-info.md @@ -1 +1 @@ -During {props.cycle}, the {props.product} is accessible to {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. +During {props.cycle}, you can access {props.product} on {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. From cf0c4c7f0330c81dd6138f76b2a2eafc2ca4da80 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:28:28 +0100 Subject: [PATCH 339/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index b052ba14eda..725b5513bc6 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -10,7 +10,7 @@ meta: This getting started page recommends a workflow to help you create your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you prefer using a sandbox project to follow the guide, you can clone the repo from GitHub. Otherwise, you can create semantic models and metrics for your own dbt project. -Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: +To fully experience the power of a universal dbt Semantic Layer, take the following steps: - [Create a semantic model](#create-a-semantic-model) with MetricFlow - [Define metrics](#define-metrics) with MetricFlow From b65dbd5ee4656fb7cb0091be44c43b0252b48703 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:28:38 +0100 Subject: [PATCH 340/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 725b5513bc6..d55f27f7023 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -17,7 +17,7 @@ To fully experience the power of a universal dbt Semantic Layer, take the follow - [Test and query metrics](#test-and-query-metrics) with MetricFlow - [Run a production job](#run-a-production-job) in dbt Cloud - [Set up dbt Semantic Layer](#set-up-dbt-semantic-layer) in dbt Cloud -- [Connect and query API](#connect-and-query-api) with dbt Cloud +- [Connect to and query the API](#connect-and-query-api) with dbt Cloud ## Prerequisites From 87883aa75c24ed65019ebc1936fc1952c4337dca Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:34:27 +0100 Subject: [PATCH 341/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index d55f27f7023..e14183ed53a 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -48,7 +48,7 @@ Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platfor ## Create a semantic model -This part of the guide will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). +The following steps will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). We highly recommend you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the yaml extension so it's ignored during parsing. We'll be rebuilding it step by step in this example. From 24e27ccdf08e9a5fb1278dd02eab9bbdfb253a8c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:34:48 +0100 Subject: [PATCH 342/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index e14183ed53a..45af1771d51 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -50,7 +50,7 @@ Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platfor The following steps will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). -We highly recommend you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the yaml extension so it's ignored during parsing. We'll be rebuilding it step by step in this example. +It's highly recommended you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the .yaml extension so it's ignored during parsing. You'll be rebuilding it step by step in this example. If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. From 67c51b52d841e55d890f3efa7b460e8fb790b3b4 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:34:56 +0100 Subject: [PATCH 343/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 45af1771d51..208cb6e493e 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -56,7 +56,7 @@ If you're following the guide in your own project, pick a model that you want to 1. Create a new semantic model file, such as `orders.yaml`. -We recommending creating semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name, appropriate metadata, map it to a model in your dbt project, and specify model defaults. For now `default_agg_time_dimension` is the only supported default. +It's best practice to create semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name and appropriate metadata, map it to a model in your dbt project, and specify model defaults. For now, `default_agg_time_dimension` is the only supported default. ```yaml semantic_models: From c68c15b01fc4e2fc29cbe223f3e99314fee4d318 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:35:08 +0100 Subject: [PATCH 344/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 208cb6e493e..e17648b11e1 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -158,7 +158,7 @@ group by metric_time_day, country -- dimensions Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](https://docs.getdbt.com/docs/build/metrics-overview) before getting started. -1. You can define metrics in the same YAML files as your semantic models, or create a new file. If you want to create your metrics in a new file, we recommend creating another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example by data source or business line. +1. You can define metrics in the same YAML files as your semantic models or create a new file. If you want to create your metrics in a new file, create another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example, by data source or business line. 2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recommend deleting the `example_metrics` file, or removing the .yaml extension so it's ignored during parsing. We'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. From f6d3de7a3322ac4878beb7c5e2655984e9b0ee2d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:35:23 +0100 Subject: [PATCH 345/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index e17648b11e1..bc1eec739fb 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -160,7 +160,7 @@ Now that you've created your first semantic model, it's time to define your firs 1. You can define metrics in the same YAML files as your semantic models or create a new file. If you want to create your metrics in a new file, create another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example, by data source or business line. -2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recommend deleting the `example_metrics` file, or removing the .yaml extension so it's ignored during parsing. We'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. +2. The example metric you'll create is a simple metric that refers directly to the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, delete the `example_metrics` file or remove the .yaml extension so it's ignored during parsing. You'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. ```yaml metrics: From 14396a2a89f64ffa845c48a9913ef01c0b0f2244 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:35:36 +0100 Subject: [PATCH 346/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index bc1eec739fb..591202405b4 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -172,7 +172,7 @@ metrics: measure: order_total ``` -3. Save your code and validate your configs (we'll do this in the next step of the guide 😀) before committing them to your repository. +3. Save your code, and in the next section, you'll validate your configs before committing them to your repository. To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. From a1c5274d1759ae28e005eb283be0f3acca71bade Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:35:48 +0100 Subject: [PATCH 347/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 591202405b4..8f7c645d345 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -182,7 +182,7 @@ MetricFlow requires a time spine for certain metric types and join resolution pa ## Test and query metrics -This section will explain how you can test and query metrics locally. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on how to install it and a reference for the CLI commands. +This section will explain how you can test and query metrics locally. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on installing it and a reference for the CLI commands. :::tip - dbt Cloud Team or Enterprise — For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. You can also use the MetricFlow CLI to test and query metrics locally. Alternative, you can test using SQL client tools like DataGrip, DBeaver, or RazorSQL. From 2f1e145d46b5e29edac5e22514746d43bd9d3791 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:35:57 +0100 Subject: [PATCH 348/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 8f7c645d345..c6522099838 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -185,7 +185,7 @@ MetricFlow requires a time spine for certain metric types and join resolution pa This section will explain how you can test and query metrics locally. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on installing it and a reference for the CLI commands. :::tip -- dbt Cloud Team or Enterprise — For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. You can also use the MetricFlow CLI to test and query metrics locally. Alternative, you can test using SQL client tools like DataGrip, DBeaver, or RazorSQL. +- dbt Cloud Team or Enterprise — For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. You can also use the MetricFlow CLI to test and query metrics locally. Alternatively, you can test using SQL client tools like DataGrip, DBeaver, or RazorSQL. - dbt Core or Developer plan — Users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. ::: From ecbf1cb6d528fa1ea51b433829d87a681dc8ce8f Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:36:31 +0100 Subject: [PATCH 349/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index c6522099838..63d27aaf16a 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -205,7 +205,7 @@ MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To Before you begin, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. -Once you’ve defined metrics in your dbt project, you can perform a job run in your dbt Cloud deployment environment to materialize your metrics. The deployment environment is only supported for the dbt Semantic Layer at this moment. +Once you’ve defined metrics in your dbt project, you can perform a job run in your dbt Cloud deployment environment to materialize your metrics. Only the deployment environment is supported for the dbt Semantic Layer at this moment. 1. Go to **Deploy** in the navigation header 2. Select **Jobs** to re-run the job with the most recent code in the deployment environment. From d40c69b2c240455b7aecc83a55eaae4fe502c8c8 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:36:45 +0100 Subject: [PATCH 350/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 63d27aaf16a..0b8bb735e33 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -196,7 +196,7 @@ MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To 1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. -3. Run `mf query --metrics --group-by ` to query the metrics and dimensions. i.e `mf query --metrics order_total --group-by metric_time` +3. Run `mf query --metrics --group-by ` to query the metrics and dimensions. For example, `mf query --metrics order_total --group-by metric_time` 4. Verify that the metric values are what you expect. To further understand how the metric is being generated, you can view the generated SQL if you type `--explain` in the CLI. 5. Run `mf validate-configs` to run validation on your semantic models and metrics. 6. Commit and merge the code changes that contain the metric definitions. From 67a40d3a2f031a763e2704e1f6a736913f807a00 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:38:43 +0100 Subject: [PATCH 351/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 56d5b3f073d..03ffed32c09 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -75,7 +75,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; -The dbt Semantic Layer allows data teams to centrally define essential business metrics like `revenue`, `customer`, and `churn` in the modeling layer (your dbt project) for consistent self-service within downstream data tools like BI and metadata management solutions. The dbt Semantic Layer provides the flexibility to define metrics on top of your existing models and then query those metrics and models in your analysis tools of choice. +The dbt Semantic Layer allows your data teams to centrally define essential business metrics like `revenue`, `customer`, and `churn` in the modeling layer (your dbt project) for consistent self-service within downstream data tools like BI and metadata management solutions. The dbt Semantic Layer provides the flexibility to define metrics on top of your existing models and then query those metrics and models in your analysis tools of choice. The result? You have less duplicate coding for data teams and more consistency for data consumers. From c05e96486952c5338da486334c20cb42fe0c54c1 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:39:32 +0100 Subject: [PATCH 352/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 03ffed32c09..c7729c1c60e 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -77,7 +77,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; The dbt Semantic Layer allows your data teams to centrally define essential business metrics like `revenue`, `customer`, and `churn` in the modeling layer (your dbt project) for consistent self-service within downstream data tools like BI and metadata management solutions. The dbt Semantic Layer provides the flexibility to define metrics on top of your existing models and then query those metrics and models in your analysis tools of choice. -The result? You have less duplicate coding for data teams and more consistency for data consumers. +Resulting in less duplicate coding for data teams and more consistency for data consumers. The dbt Semantic Layer has four main parts: From 6d7c832ccdf3e34b21ed275ab7f0451197e5a7fb Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:41:19 +0100 Subject: [PATCH 353/703] Update website/docs/docs/dbt-cloud-apis/sl-manifest.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index ce2d9fb38ac..470382fac0c 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -14,7 +14,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; -dbt creates an [artifact](/reference/artifacts/dbt-artifacts) file called the "Semantic Manifest" (`semantic_manifest.json`), which MetricFlow requires to build and run metric queries properly for the Semantic Layer. This artifact contains comprehensive information about your Semantic Layer. It is an internal file, that acts as the integration point with MetricFlow. +dbt creates an [artifact](/reference/artifacts/dbt-artifacts) file called the _Semantic Manifest_ (`semantic_manifest.json`), which MetricFlow requires to build and run metric queries properly for the dbt Semantic Layer. This artifact contains comprehensive information about your dbt Semantic Layer. It is an internal file that acts as the integration point with MetricFlow. By using the semantic manifest produced by dbt Core, MetricFlow will instantiate a data flow plan and generate SQL from Semantic Layer query requests. You can it as a valuable reference to understand the structure and details of your data models. From 60910ecaeb20cd45fdb700781734fb007a5fdc4f Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:41:48 +0100 Subject: [PATCH 354/703] Update website/docs/docs/dbt-cloud-apis/sl-manifest.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index 470382fac0c..10b2747acc1 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -16,7 +16,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; dbt creates an [artifact](/reference/artifacts/dbt-artifacts) file called the _Semantic Manifest_ (`semantic_manifest.json`), which MetricFlow requires to build and run metric queries properly for the dbt Semantic Layer. This artifact contains comprehensive information about your dbt Semantic Layer. It is an internal file that acts as the integration point with MetricFlow. -By using the semantic manifest produced by dbt Core, MetricFlow will instantiate a data flow plan and generate SQL from Semantic Layer query requests. You can it as a valuable reference to understand the structure and details of your data models. +By using the semantic manifest produced by dbt Core, MetricFlow will instantiate a data flow plan and generate SQL from Semantic Layer query requests. It's a valuable reference that you can use to understand the structure and details of your data models. Similar to the [`manifest.json` file](/reference/artifacts/manifest-json), the `semantic_manifest.json` also lives in the `/target` directory of your dbt project. This is where dbt stores various artifacts (such as compiled models and tests) generated during the execution of your project. From 01ae2a247f2db5bbe6ddbfdb4e924ee8f2eb4be3 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:42:06 +0100 Subject: [PATCH 355/703] Update website/docs/docs/dbt-cloud-apis/sl-manifest.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index 10b2747acc1..106e228a003 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -31,7 +31,7 @@ QUESTIONS: - HOW DOES IT RELATED TO THE [JSON SCHEMA FILE](https://schemas.getdbt.com/)?
-target/semantic_manifest.json file +Example target/semantic_manifest.json file ```json { From d000eca056e8b5a861dfb7d17a9080d8f5fa59d1 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:43:34 +0100 Subject: [PATCH 356/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index c7729c1c60e..f01f91149ce 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -79,7 +79,7 @@ The dbt Semantic Layer allows your data teams to centrally define essential busi Resulting in less duplicate coding for data teams and more consistency for data consumers. -The dbt Semantic Layer has four main parts: +The dbt Semantic Layer has these main parts: - Define your metrics in version-controlled dbt project code using [MetricFlow](/docs/build/about-metricflow) * dbt_metrics is now deprecated From 98e489c435a9e712ffebed0f9b20bed284716d46 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:44:52 +0100 Subject: [PATCH 357/703] Update website/snippets/_new-sl-setup.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_new-sl-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 9147202c664..aecbde86777 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -23,7 +23,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 6. You should see connection information that allows you to connect to downstream tools. - * If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). +**Note:** If your tool supports JDBC, make sure to save the JDBC URL or individual components (like environment id and host). 7. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. From 0b1e9657e6c3d594d008539eb853e22a3a5e50c9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:45:19 +0100 Subject: [PATCH 358/703] Update website/snippets/_new-sl-setup.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_new-sl-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index aecbde86777..47705f50d32 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -25,7 +25,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 6. You should see connection information that allows you to connect to downstream tools. **Note:** If your tool supports JDBC, make sure to save the JDBC URL or individual components (like environment id and host). -7. Next, go back to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. +7. Return to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. 8. Save and copy your environment ID, service token, and host for inputting into a downstream tool From 909cfa23a3a1210eebc644753eea7a980dc0fdad Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:45:46 +0100 Subject: [PATCH 359/703] Update website/snippets/_new-sl-setup.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_new-sl-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 47705f50d32..45d1cdccef9 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -27,7 +27,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 7. Return to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. -8. Save and copy your environment ID, service token, and host for inputting into a downstream tool +8. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. 9. Great job, you've configured the Semantic Layer 🎉! From 63614309063fda7fba0afd6daee01b285b602d22 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:46:07 +0100 Subject: [PATCH 360/703] Update website/snippets/_new-sl-setup.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_new-sl-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 45d1cdccef9..693e2b80fe6 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -29,5 +29,5 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 8. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. -9. Great job, you've configured the Semantic Layer 🎉! +Great job, you've configured the Semantic Layer 🎉! From f024c3b6797ed4af66d6381e905be014cbc5d541 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:48:40 +0100 Subject: [PATCH 361/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index f01f91149ce..87de4dedf2e 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -83,7 +83,7 @@ The dbt Semantic Layer has these main parts: - Define your metrics in version-controlled dbt project code using [MetricFlow](/docs/build/about-metricflow) * dbt_metrics is now deprecated -- Import your metric definitions via the [Discovery API](/docs/dbt-cloud-apis/discovery-api) +- Import your metric definitions using the [Discovery API](/docs/dbt-cloud-apis/discovery-api) - Query your metric data via the dbt Proxy Server - Explore and analyze dbt metrics in downstream tools From c12015230d23519ccfe9247fe1749322b8d7279a Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 09:50:59 +0100 Subject: [PATCH 362/703] nits --- website/docs/docs/build/sl-getting-started.md | 8 ++++---- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 3 +-- .../docs/docs/use-dbt-semantic-layer/sl-architecture.md | 5 +++++ website/snippets/_sl-plan-info.md | 2 +- 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index b052ba14eda..ccb66697d89 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -10,7 +10,7 @@ meta: This getting started page recommends a workflow to help you create your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you prefer using a sandbox project to follow the guide, you can clone the repo from GitHub. Otherwise, you can create semantic models and metrics for your own dbt project. -Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: +To fully experience the dbt Semantic Layer, including the ability to query dbt metrics via external integrations, you'll need a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). These are the following steps you'll take: - [Create a semantic model](#create-a-semantic-model) with MetricFlow - [Define metrics](#define-metrics) with MetricFlow @@ -22,11 +22,11 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. ## Prerequisites - Have an understanding of key concepts in [MetricFlow](/docs/build/about-metricflow), which powers the revamped dbt Semantic Layer. -- Have both your production and development environments running dbt version 1.6 or higher +- Have both your production and development environments running dbt version 1.6 or higher. Refer to [upgrade in dbt Cloud](/docs/dbt-versions/upgrade-core-in-cloud) for more info. - Use Snowflake, BigQuery, Databricks, or Redshift data platform - A successful run in the environment where your Semantic Layer is configured - To query with dbt Cloud: - * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America + * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America (Other regions coming soon) * Set up the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions. - To query locally: * dbt Core or Developer accounts must manually install the [MetricFlow CLI](/docs/build/metricflow-cli) to test or query their metrics. After installing the package, make sure you run at least one model.
@@ -207,7 +207,7 @@ Before you begin, you must have a dbt Cloud Team or Enterprise [multi-tenant](/d Once you’ve defined metrics in your dbt project, you can perform a job run in your dbt Cloud deployment environment to materialize your metrics. The deployment environment is only supported for the dbt Semantic Layer at this moment. -1. Go to **Deploy** in the navigation header +1. Go to **Deploy** in the menu bar 2. Select **Jobs** to re-run the job with the most recent code in the deployment environment. 3. Your metric should appear as a red node in the dbt Cloud IDE and dbt directed acyclic graphs (DAG). diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index e36622c1910..b01313d16f5 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -1,7 +1,7 @@ --- title: "dbt Semantic Layer" id: dbt-sl -description: "Introducing the improved dbt Semantic Layer, which allows data teams to centrally define and query metrics." +description: "Learn how the dbt Semantic Layer enables data teams to centrally define and query metrics." sidebar_label: "About the dbt Semantic Layer" tags: [Semantic Layer] hide_table_of_contents: true @@ -31,7 +31,6 @@ product="dbt Semantic Layer" plan="dbt Cloud Team and Enterprise" instance="hosted in North America" /> -

diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index da634a87b73..b03023b3ae2 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -6,6 +6,11 @@ sidebar_label: "Architecture" tags: [Semantic Layer] --- +import NewSLChanges from '/snippets/_new-sl-changes.md'; + + + + The dbt Semantic Layer allows you to define metrics and use various interfaces to query them. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). diff --git a/website/snippets/_sl-plan-info.md b/website/snippets/_sl-plan-info.md index 23d259a346b..3a6607e3552 100644 --- a/website/snippets/_sl-plan-info.md +++ b/website/snippets/_sl-plan-info.md @@ -1 +1 @@ -During {props.cycle}, the {props.product} is accessible to {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. +During {props.cycle}, the {props.product} is accessible to {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use the MetricFlow CLI to test metrics locally, but can't dynamically query them with integrated tools. From 1203c5364f33484ddfda56b459f21696cdc621a2 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:52:35 +0100 Subject: [PATCH 363/703] Update website/docs/docs/build/sl-getting-started.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 0b8bb735e33..ad2a8fcd66c 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -8,7 +8,7 @@ meta: api_name: dbt Semantic Layer API --- -This getting started page recommends a workflow to help you create your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you prefer using a sandbox project to follow the guide, you can clone the repo from GitHub. Otherwise, you can create semantic models and metrics for your own dbt project. +This getting started page presents a sample workflow to help you create your first metrics. It uses the [Jaffle shop example](https://github.com/dbt-labs/jaffle-sl-template) as the project data source and is available for you to use. If you prefer, you can create semantic models and metrics for your own dbt project. To fully experience the power of a universal dbt Semantic Layer, take the following steps: From fec7c9e8240827060363c02f838bd588ae2fb8e5 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:55:48 +0100 Subject: [PATCH 364/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index acbbc43c3fb..5ed08ebefbc 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -83,7 +83,7 @@ The dbt Semantic Layer has these main parts: - Define your metrics in version-controlled dbt project code using [MetricFlow](/docs/build/about-metricflow) * dbt_metrics is now deprecated - Import your metric definitions using the [Discovery API](/docs/dbt-cloud-apis/discovery-api) -- Query your metric data via the dbt Proxy Server +- Query your metric data with the dbt Proxy Server - Explore and analyze dbt metrics in downstream tools ### What makes the dbt Semantic Layer different? From cae760a4a107a4cc1b187f3b289e81a28d834654 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:56:04 +0100 Subject: [PATCH 365/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 5ed08ebefbc..5e7c18013dd 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -88,7 +88,7 @@ The dbt Semantic Layer has these main parts: ### What makes the dbt Semantic Layer different? -The dbt Semantic Layer reduces code duplication and inconsistency regarding your business metrics. By moving metric definitions out of the BI layer and into the modeling layer, data teams can feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. You can also use the dbt Semantic Layer to query models and use macros. +The dbt Semantic Layer reduces code duplication and inconsistency regarding your business metrics. By moving metric definitions out of the BI layer and into the modeling layer, your data teams can feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. You can also use the dbt Semantic Layer to query models and use macros. ## Prerequisites From 16dcf4818327f095cab954ab5d3421c6ac3a5346 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:56:19 +0100 Subject: [PATCH 366/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 5e7c18013dd..85f15259166 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -92,7 +92,6 @@ The dbt Semantic Layer reduces code duplication and inconsistency regarding your ## Prerequisites -To use the dbt Semantic Layer, you’ll need to meet the following: From ef5273415c8f03f5a8b90a5ea3829bf7156481d9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:56:44 +0100 Subject: [PATCH 367/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 85f15259166..8524e3e02b5 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -115,7 +115,7 @@ An important business metric should be: - Well-defined (the definition is agreed upon throughout the entire organization) - Time-bound (able to be compared across time) -A great example of this is **revenue** — it can be aggregated on multiple levels (weekly, monthly, etc) and is key for the broader business to understand. +A great example of this is **revenue**. It can be aggregated on multiple levels (weekly, monthly, and so on) and is key for the broader business to understand. - ✅ `Monthly recurring revenue` or `Weekly active users` or `Average order value` - ❌ `1-off experimental metric` From 21be43fa2cb5ea6e1fada6084fb6920369a597d9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:57:07 +0100 Subject: [PATCH 368/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 8524e3e02b5..07fd5091e23 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -123,7 +123,7 @@ A great example of this is **revenue**. It can be aggregated on multiple levels ### Design and define metrics -You can design and define your metrics in a `.yml` files nested under a metrics key in your dbt project, review the following documents:
+You can design and define your metrics in `.yml` files nested under a metrics key in your dbt project. For more information, refer to these docs:
- [dbt metrics](docs/build/metrics) for in-depth detail on attributes, filters, how to define and query your metrics, and [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics) - [dbt Semantic Layer quickstart](/docs/use-dbt-semantic-layer/quickstart-semantic-layer) to get started From 60c74ed27516287b4826b1437d02f59cfe88dc4f Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:57:30 +0100 Subject: [PATCH 369/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 07fd5091e23..1004e17e218 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -140,7 +140,7 @@ You can design and define your metrics in `.yml` files nested under a metrics ke
How are you storing my data?
-
The dbt Semantic Layer does not store, or cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool.
+
The dbt Semantic Layer doesn't store, cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it's never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers to your connecting data tool.
From 0dc028b8ff5ffdd1aa36f225fceedb027efbe2d9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:57:47 +0100 Subject: [PATCH 370/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 1004e17e218..249aa445c20 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -146,7 +146,7 @@ You can design and define your metrics in `.yml` files nested under a metrics ke
Is the dbt Semantic Layer open source?
-
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL-licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open sources.



+
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL-licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open source.



During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



From 49449488e4d35e8d1b8104c6e7c41c87fa576414 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:58:31 +0100 Subject: [PATCH 371/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 249aa445c20..69cdd99dd35 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -148,7 +148,7 @@ You can design and define your metrics in `.yml` files nested under a metrics ke
Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL-licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open source.



-During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



+During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers — Developer, Team, and Enterprise.



  • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. To use the dbt Semantic Layer integrations, users will need to have a dbt Cloud account.


  • From 468c1e29d1f00d25548a3e916b045d73f2eaec00 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:58:53 +0100 Subject: [PATCH 372/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 69cdd99dd35..c7073d7d783 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -151,7 +151,7 @@ You can design and define your metrics in `.yml` files nested under a metrics ke During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers — Developer, Team, and Enterprise.



      -
    • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. To use the dbt Semantic Layer integrations, users will need to have a dbt Cloud account.


    • +
    • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. Using the dbt Semantic Layer integrations requires a dbt Cloud account.
    • Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API.


    • Team and Enterprise accounts will be able to set up the Semantic Layer and Discovery API in the integrated partner tool to import metric definition.
From 18668b707b19e83babd465b079877e2941ac8b47 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:59:11 +0100 Subject: [PATCH 373/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index c7073d7d783..29a0709ca9b 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -159,7 +159,7 @@ During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers &md
Is there a dbt Semantic Layer discussion hub?
-
Yes absolutely! Join the dbt Slack community and #dbt-cloud-semantic-layer slack channel for all things related to the dbt Semantic Layer. +
Yes, absolutely! Join the dbt Slack community and #dbt-cloud-semantic-layer slack channel for all things related to the dbt Semantic Layer.
From f2ca38e88764ba0edc0c57740a4b8684cd382e2a Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 10:28:06 +0100 Subject: [PATCH 374/703] update versions --- .../docs/docs/use-dbt-semantic-layer/dbt-sl.md | 6 +----- website/snippets/_new-sl-setup.md | 2 +- website/snippets/_v2-sl-prerequisites.md | 17 +---------------- 3 files changed, 3 insertions(+), 22 deletions(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 29a0709ca9b..18cd61b6e12 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -150,11 +150,7 @@ You can design and define your metrics in `.yml` files nested under a metrics ke During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers — Developer, Team, and Enterprise.



-
    -
  • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. Using the dbt Semantic Layer integrations requires a dbt Cloud account. -
  • Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API.


  • -
  • Team and Enterprise accounts will be able to set up the Semantic Layer and Discovery API in the integrated partner tool to import metric definition.
  • -
+
Is there a dbt Semantic Layer discussion hub? diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 693e2b80fe6..9b6ac963d62 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -20,7 +20,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 5. Select the deployment environment you want for the Semantic Layer and click **Save**. - + 6. You should see connection information that allows you to connect to downstream tools. **Note:** If your tool supports JDBC, make sure to save the JDBC URL or individual components (like environment id and host). diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 2ee9c8257ea..95d563c9359 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -17,7 +17,7 @@ To use the Semantic Layer, you must: - + - Have a multi-tenant dbt Cloud instance, hosted in North America
- Have both your production and development environments running dbt version 1.3 or higher
@@ -26,20 +26,6 @@ To use the Semantic Layer, you must: * **Note** — After installing the dbt metrics package and updating the `packages.yml` file, make sure you run at least one model. - Set up the Discovery API in the integrated tool to import metric definitions * Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API
-- Recommended - Review the dbt metrics page and Understanding the components of the dbt Semantic Layer blog
- -
- - - -- Have a multi-tenant dbt Cloud instance, hosted in North America
-- Have both your production and development environments running dbt version 1.3 or higher
-- Use Snowflake data platform
-- Install the dbt metrics package version >=1.3.0, <1.4.0 in your dbt project
- * **Note** — After installing the dbt metrics package and updating the `packages.yml` file, make sure you run at least one model. -- Set up the Discovery API in the integrated tool to import metric definitions - * Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API
-- Recommended - Review the dbt metrics page and Understanding the components of the dbt Semantic Layer blog
@@ -52,6 +38,5 @@ To use the Semantic Layer, you must: * **Note** — After installing the dbt metrics package and updating the `packages.yml` file, make sure you run at least one model. - Set up the Discovery API in the integrated tool to import metric definitions * Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API
-- Recommended - Review the dbt metrics page and Understanding the components of the dbt Semantic Layer blog
From a7e1a4e36856d1df6f50389649d23b96a4f27ce5 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 10:29:17 +0100 Subject: [PATCH 375/703] Update package-lock.json --- website/package-lock.json | 88771 ++++++++++++++++++------------------ 1 file changed, 44385 insertions(+), 44386 deletions(-) diff --git a/website/package-lock.json b/website/package-lock.json index 65c5f6ba759..9bb80cad9f9 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -1,44386 +1,44385 @@ -{ - "name": "website", - "version": "0.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "version": "0.0.0", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/plugin-ideal-image": "2.3.1", - "@docusaurus/preset-classic": "2.3.1", - "@docusaurus/theme-search-algolia": "2.3.1", - "@mdx-js/react": "^1.6.21", - "@monaco-editor/react": "^4.4.6", - "@stoplight/elements": "^7.7.17", - "@svgr/webpack": "^6.0.0", - "axios": "^0.27.2", - "build": "^0.1.4", - "classnames": "^2.3.1", - "clsx": "^1.1.1", - "color": "^3.1.2", - "core-js": "^3.20.0", - "feed": "^4.2.2", - "file-loader": "^6.2.0", - "fs": "0.0.2", - "gray-matter": "^4.0.3", - "hast-util-is-element": "^1.1.0", - "js-yaml": "^4.1.0", - "mobx": "^6.3.9", - "node-polyfill-webpack-plugin": "^1.1.4", - "papaparse": "^5.3.2", - "prism-react-renderer": "^1.2.1", - "query-string": "^8.1.0", - "raw-loader": "^4.0.2", - "react": "^17.0.1", - "react-dom": "^17.0.1", - "react-full-screen": "^1.1.1", - "react-is": "^18.1.0", - "react-tooltip": "^4.2.21", - "redoc": "^2.0.0-rc.57", - "rehype-katex": "^5.0.0", - "remark-math": "^3.0.1", - "sanitize-html": "^2.8.0", - "slugify": "^1.6.1", - "styled-components": "5.3.3", - "swiper": "^8.4.3", - "url-loader": "^4.1.1" - }, - "devDependencies": { - "@cypress/react": "^7.0.2", - "@cypress/webpack-dev-server": "^3.2.3", - "@docusaurus/eslint-plugin": "2.3.1", - "@swc/core": "^1.2.174", - "@swc/jest": "^0.2.20", - "@testing-library/jest-dom": "^5.16.2", - "@testing-library/react": "^12.1.3", - "@testing-library/user-event": "^13.5.0", - "@typescript-eslint/eslint-plugin": "^5.54.0", - "@typescript-eslint/parser": "^5.54.0", - "css-loader": "^3.4.2", - "cypress": "^12.6.0", - "dotenv": "^10.0.0", - "eslint": "^8.35.0", - "eslint-config-prettier": "^8.6.0", - "eslint-plugin-markdown": "^3.0.0", - "eslint-plugin-prettier": "^4.2.1", - "husky": "^8.0.3", - "jest": "^27.5.1", - "jest-cli": "^27.5.1", - "lint-staged": "^13.1.2", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "stream-http": "^3.2.0", - "style-loader": "^1.1.3", - "svg-inline-loader": "^0.8.2", - "tty-browserify": "0.0.1", - "webpack": "^5.75.0", - "webpack-dev-server": "^4.11.1" - }, - "optionalDependencies": { - "@dbt-labs/react-dbt-dag": "0.8.7" - } - }, - "node_modules/@adobe/css-tools": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", - "dev": true - }, - "node_modules/@algolia/autocomplete-core": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", - "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", - "dependencies": { - "@algolia/autocomplete-shared": "1.7.4" - } - }, - "node_modules/@algolia/autocomplete-preset-algolia": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", - "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", - "dependencies": { - "@algolia/autocomplete-shared": "1.7.4" - }, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/autocomplete-shared": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", - "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" - }, - "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", - "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", - "dependencies": { - "@algolia/cache-common": "4.16.0" - } - }, - "node_modules/@algolia/cache-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", - "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" - }, - "node_modules/@algolia/cache-in-memory": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", - "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", - "dependencies": { - "@algolia/cache-common": "4.16.0" - } - }, - "node_modules/@algolia/client-account": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", - "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-analytics": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", - "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", - "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", - "dependencies": { - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-personalization": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", - "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-search": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", - "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/events": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", - "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" - }, - "node_modules/@algolia/logger-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", - "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" - }, - "node_modules/@algolia/logger-console": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", - "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", - "dependencies": { - "@algolia/logger-common": "4.16.0" - } - }, - "node_modules/@algolia/requester-browser-xhr": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", - "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", - "dependencies": { - "@algolia/requester-common": "4.16.0" - } - }, - "node_modules/@algolia/requester-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", - "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" - }, - "node_modules/@algolia/requester-node-http": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", - "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", - "dependencies": { - "@algolia/requester-common": "4.16.0" - } - }, - "node_modules/@algolia/transporter": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", - "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", - "dependencies": { - "@algolia/cache-common": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/requester-common": "4.16.0" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", - "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", - "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.0", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.21.0", - "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.0", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.21.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", - "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", - "dependencies": { - "@babel/types": "^7.21.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", - "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", - "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", - "dependencies": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", - "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", - "dependencies": { - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "dependencies": { - "@babel/types": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "dependencies": { - "@babel/types": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "dependencies": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", - "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "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": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "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.21.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", - "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", - "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", - "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", - "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "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==", - "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==", - "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==", - "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==", - "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==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "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==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", - "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", - "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/template": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", - "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", - "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", - "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", - "dependencies": { - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", - "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-constant-elements": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", - "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-display-name": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", - "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", - "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-development": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", - "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", - "dependencies": { - "@babel/plugin-transform-react-jsx": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-pure-annotations": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", - "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "regenerator-transform": "^0.15.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", - "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", - "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-typescript": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", - "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", - "dependencies": { - "@babel/compat-data": "^7.20.1", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-async-generator-functions": "^7.20.1", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.2", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.20.2", - "@babel/plugin-transform-classes": "^7.20.2", - "@babel/plugin-transform-computed-properties": "^7.18.9", - "@babel/plugin-transform-destructuring": "^7.20.2", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.8", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.19.6", - "@babel/plugin-transform-modules-commonjs": "^7.19.6", - "@babel/plugin-transform-modules-systemjs": "^7.19.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.20.1", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.19.0", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-react": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", - "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-react-display-name": "^7.18.6", - "@babel/plugin-transform-react-jsx": "^7.18.6", - "@babel/plugin-transform-react-jsx-development": "^7.18.6", - "@babel/plugin-transform-react-pure-annotations": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", - "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.21.0", - "@babel/plugin-transform-typescript": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" - }, - "node_modules/@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", - "dependencies": { - "regenerator-runtime": "^0.13.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/runtime-corejs3": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", - "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", - "dependencies": { - "core-js-pure": "^3.25.1", - "regenerator-runtime": "^0.13.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", - "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.2", - "@babel/types": "^7.21.2", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", - "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", - "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "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/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@cypress/react": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", - "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", - "dev": true, - "peerDependencies": { - "@types/react": "^16.9.16 || ^17.0.0", - "cypress": "*", - "react": "^=16.x || ^=17.x", - "react-dom": "^=16.x || ^=17.x" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@cypress/request": { - "version": "2.88.11", - "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", - "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", - "dev": true, - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "http-signature": "~1.3.6", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "performance-now": "^2.1.0", - "qs": "~6.10.3", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^8.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@cypress/request/node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/@cypress/webpack-dev-server": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", - "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", - "dev": true, - "dependencies": { - "find-up": "6.3.0", - "fs-extra": "9.1.0", - "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", - "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", - "local-pkg": "0.4.1", - "speed-measure-webpack-plugin": "1.4.2", - "tslib": "^2.3.1", - "webpack-dev-server": "^4.7.4", - "webpack-merge": "^5.4.0" - } - }, - "node_modules/@cypress/xvfb": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", - "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", - "dev": true, - "dependencies": { - "debug": "^3.1.0", - "lodash.once": "^4.1.1" - } - }, - "node_modules/@cypress/xvfb/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/@dabh/diagnostics": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", - "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", - "dependencies": { - "colorspace": "1.1.x", - "enabled": "2.0.x", - "kuler": "^2.0.0" - } - }, - "node_modules/@dbt-labs/react-dbt-dag": { - "version": "0.8.7", - "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", - "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", - "license": "ISC", - "optional": true, - "dependencies": { - "classnames": "^2.3.1", - "dagre": "^0.8.5", - "graphlib": "^2.1.8", - "lodash": "^4.17.21", - "react-flow-renderer": "^10.3.8" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@docsearch/css": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", - "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" - }, - "node_modules/@docsearch/react": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", - "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", - "dependencies": { - "@algolia/autocomplete-core": "1.7.4", - "@algolia/autocomplete-preset-algolia": "1.7.4", - "@docsearch/css": "3.3.3", - "algoliasearch": "^4.0.0" - }, - "peerDependencies": { - "@types/react": ">= 16.8.0 < 19.0.0", - "react": ">= 16.8.0 < 19.0.0", - "react-dom": ">= 16.8.0 < 19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } - } - }, - "node_modules/@docusaurus/core": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", - "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", - "dependencies": { - "@babel/core": "^7.18.6", - "@babel/generator": "^7.18.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-runtime": "^7.18.6", - "@babel/preset-env": "^7.18.6", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@babel/runtime": "^7.18.6", - "@babel/runtime-corejs3": "^7.18.6", - "@babel/traverse": "^7.18.8", - "@docusaurus/cssnano-preset": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@slorber/static-site-generator-webpack-plugin": "^4.0.7", - "@svgr/webpack": "^6.2.1", - "autoprefixer": "^10.4.7", - "babel-loader": "^8.2.5", - "babel-plugin-dynamic-import-node": "^2.3.3", - "boxen": "^6.2.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "clean-css": "^5.3.0", - "cli-table3": "^0.6.2", - "combine-promises": "^1.1.0", - "commander": "^5.1.0", - "copy-webpack-plugin": "^11.0.0", - "core-js": "^3.23.3", - "css-loader": "^6.7.1", - "css-minimizer-webpack-plugin": "^4.0.0", - "cssnano": "^5.1.12", - "del": "^6.1.1", - "detect-port": "^1.3.0", - "escape-html": "^1.0.3", - "eta": "^2.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "html-minifier-terser": "^6.1.0", - "html-tags": "^3.2.0", - "html-webpack-plugin": "^5.5.0", - "import-fresh": "^3.3.0", - "leven": "^3.1.0", - "lodash": "^4.17.21", - "mini-css-extract-plugin": "^2.6.1", - "postcss": "^8.4.14", - "postcss-loader": "^7.0.0", - "prompts": "^2.4.2", - "react-dev-utils": "^12.0.1", - "react-helmet-async": "^1.3.0", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", - "react-loadable-ssr-addon-v5-slorber": "^1.0.1", - "react-router": "^5.3.3", - "react-router-config": "^5.1.1", - "react-router-dom": "^5.3.3", - "rtl-detect": "^1.0.4", - "semver": "^7.3.7", - "serve-handler": "^6.1.3", - "shelljs": "^0.8.5", - "terser-webpack-plugin": "^5.3.3", - "tslib": "^2.4.0", - "update-notifier": "^5.1.0", - "url-loader": "^4.1.1", - "wait-on": "^6.0.1", - "webpack": "^5.73.0", - "webpack-bundle-analyzer": "^4.5.0", - "webpack-dev-server": "^4.9.3", - "webpack-merge": "^5.8.0", - "webpackbar": "^5.0.2" - }, - "bin": { - "docusaurus": "bin/docusaurus.mjs" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/core/node_modules/css-loader": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", - "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/@docusaurus/core/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/core/node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/cssnano-preset": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", - "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", - "dependencies": { - "cssnano-preset-advanced": "^5.3.8", - "postcss": "^8.4.14", - "postcss-sort-media-queries": "^4.2.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/eslint-plugin": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", - "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", - "dev": true, - "dependencies": { - "@typescript-eslint/utils": "^5.30.5", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "eslint": ">=6" - } - }, - "node_modules/@docusaurus/logger": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", - "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", - "dependencies": { - "chalk": "^4.1.2", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/lqip-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", - "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", - "dependencies": { - "@docusaurus/logger": "2.3.1", - "file-loader": "^6.2.0", - "lodash": "^4.17.21", - "sharp": "^0.30.7", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/mdx-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", - "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", - "dependencies": { - "@babel/parser": "^7.18.8", - "@babel/traverse": "^7.18.8", - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@mdx-js/mdx": "^1.6.22", - "escape-html": "^1.0.3", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "image-size": "^1.0.1", - "mdast-util-to-string": "^2.0.0", - "remark-emoji": "^2.2.0", - "stringify-object": "^3.3.0", - "tslib": "^2.4.0", - "unified": "^9.2.2", - "unist-util-visit": "^2.0.3", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/mdx-loader/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/module-type-aliases": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", - "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", - "dependencies": { - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/types": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "@types/react-router-dom": "*", - "react-helmet-async": "*", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@docusaurus/plugin-content-blog": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", - "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "cheerio": "^1.0.0-rc.12", - "feed": "^4.2.2", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "reading-time": "^1.5.0", - "tslib": "^2.4.0", - "unist-util-visit": "^2.0.3", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-content-blog/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-content-docs": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", - "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@types/react-router-config": "^5.0.6", - "combine-promises": "^1.1.0", - "fs-extra": "^10.1.0", - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-content-docs/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-content-pages": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", - "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-content-pages/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-debug": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", - "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "fs-extra": "^10.1.0", - "react-json-view": "^1.21.3", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-debug/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-google-analytics": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", - "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-google-gtag": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", - "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-google-tag-manager": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", - "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-ideal-image": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", - "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/lqip-loader": "2.3.1", - "@docusaurus/responsive-loader": "^1.7.0", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@endiliey/react-ideal-image": "^0.0.11", - "react-waypoint": "^10.3.0", - "sharp": "^0.30.7", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "jimp": "*", - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - }, - "peerDependenciesMeta": { - "jimp": { - "optional": true - } - } - }, - "node_modules/@docusaurus/plugin-sitemap": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", - "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "sitemap": "^7.1.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-sitemap/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/preset-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", - "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/plugin-debug": "2.3.1", - "@docusaurus/plugin-google-analytics": "2.3.1", - "@docusaurus/plugin-google-gtag": "2.3.1", - "@docusaurus/plugin-google-tag-manager": "2.3.1", - "@docusaurus/plugin-sitemap": "2.3.1", - "@docusaurus/theme-classic": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-search-algolia": "2.3.1", - "@docusaurus/types": "2.3.1" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/react-loadable": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": "*" - } - }, - "node_modules/@docusaurus/responsive-loader": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", - "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", - "dependencies": { - "loader-utils": "^2.0.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "jimp": "*", - "sharp": "*" - }, - "peerDependenciesMeta": { - "jimp": { - "optional": true - }, - "sharp": { - "optional": true - } - } - }, - "node_modules/@docusaurus/theme-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", - "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@mdx-js/react": "^1.6.22", - "clsx": "^1.2.1", - "copy-text-to-clipboard": "^3.0.1", - "infima": "0.2.0-alpha.42", - "lodash": "^4.17.21", - "nprogress": "^0.2.0", - "postcss": "^8.4.14", - "prism-react-renderer": "^1.3.5", - "prismjs": "^1.28.0", - "react-router-dom": "^5.3.3", - "rtlcss": "^3.5.0", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/theme-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", - "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", - "dependencies": { - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "clsx": "^1.2.1", - "parse-numeric-range": "^1.3.0", - "prism-react-renderer": "^1.3.5", - "tslib": "^2.4.0", - "use-sync-external-store": "^1.2.0", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/theme-search-algolia": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", - "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", - "dependencies": { - "@docsearch/react": "^3.1.1", - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "algoliasearch": "^4.13.1", - "algoliasearch-helper": "^3.10.0", - "clsx": "^1.2.1", - "eta": "^2.0.0", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/theme-search-algolia/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/theme-translations": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", - "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", - "dependencies": { - "fs-extra": "^10.1.0", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/theme-translations/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/types": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", - "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*", - "commander": "^5.1.0", - "joi": "^17.6.0", - "react-helmet-async": "^1.3.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0", - "webpack-merge": "^5.8.0" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/utils": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", - "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", - "dependencies": { - "@docusaurus/logger": "2.3.1", - "@svgr/webpack": "^6.2.1", - "escape-string-regexp": "^4.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "github-slugger": "^1.4.0", - "globby": "^11.1.0", - "gray-matter": "^4.0.3", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "micromatch": "^4.0.5", - "resolve-pathname": "^3.0.0", - "shelljs": "^0.8.5", - "tslib": "^2.4.0", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "@docusaurus/types": "*" - }, - "peerDependenciesMeta": { - "@docusaurus/types": { - "optional": true - } - } - }, - "node_modules/@docusaurus/utils-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", - "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", - "dependencies": { - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "@docusaurus/types": "*" - }, - "peerDependenciesMeta": { - "@docusaurus/types": { - "optional": true - } - } - }, - "node_modules/@docusaurus/utils-validation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", - "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", - "dependencies": { - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "joi": "^17.6.0", - "js-yaml": "^4.1.0", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/utils/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "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==", - "dependencies": { - "@emotion/memoize": "0.7.4" - } - }, - "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==" - }, - "node_modules/@emotion/stylis": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", - "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" - }, - "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/@endiliey/react-ideal-image": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", - "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", - "engines": { - "node": ">= 8.9.0", - "npm": "> 3" - }, - "peerDependencies": { - "prop-types": ">=15", - "react": ">=0.14.x", - "react-waypoint": ">=9.0.2" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", - "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", - "devOptional": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": 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==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", - "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", - "devOptional": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@exodus/schemasafe": { - "version": "1.0.0-rc.10", - "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", - "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" - }, - "node_modules/@faker-js/faker": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", - "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" - }, - "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", - "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==", - "hasInstallScript": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", - "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.4.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/react-fontawesome": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", - "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", - "dependencies": { - "prop-types": "^15.8.1" - }, - "peerDependencies": { - "@fortawesome/fontawesome-svg-core": "~1 || ~6", - "react": ">=16.3" - } - }, - "node_modules/@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" - }, - "node_modules/@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "devOptional": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "devOptional": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "devOptional": 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/load-nyc-config/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/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@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.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/console/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/console/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", - "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "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/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/core/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/create-cache-key-function": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", - "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", - "dev": true, - "dependencies": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", - "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/fake-timers/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/fake-timers/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", - "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, - "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/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/reporters/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/@jest/reporters/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/@jest/schemas": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", - "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", - "dependencies": { - "@sinclair/typebox": "^0.25.16" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@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.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", - "dev": true, - "dependencies": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/transform/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "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/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/@jsdevtools/ono": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", - "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" - }, - "node_modules/@juggle/resize-observer": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", - "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" - }, - "node_modules/@mdx-js/mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", - "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", - "dependencies": { - "@babel/core": "7.12.9", - "@babel/plugin-syntax-jsx": "7.12.1", - "@babel/plugin-syntax-object-rest-spread": "7.8.3", - "@mdx-js/util": "1.6.22", - "babel-plugin-apply-mdx-type-prop": "1.6.22", - "babel-plugin-extract-import-names": "1.6.22", - "camelcase-css": "2.0.1", - "detab": "2.0.4", - "hast-util-raw": "6.0.1", - "lodash.uniq": "4.5.0", - "mdast-util-to-hast": "10.0.1", - "remark-footnotes": "2.0.0", - "remark-mdx": "1.6.22", - "remark-parse": "8.0.3", - "remark-squeeze-paragraphs": "4.0.0", - "style-to-object": "0.3.0", - "unified": "9.2.0", - "unist-builder": "2.0.3", - "unist-util-visit": "2.0.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/mdx/node_modules/@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@mdx-js/mdx/node_modules/@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@mdx-js/mdx/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@mdx-js/mdx/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@mdx-js/mdx/node_modules/unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/react": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "react": "^16.13.1 || ^17.0.0" - } - }, - "node_modules/@mdx-js/util": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", - "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@monaco-editor/loader": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", - "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", - "dependencies": { - "state-local": "^1.0.6" - }, - "peerDependencies": { - "monaco-editor": ">= 0.21.0 < 1" - } - }, - "node_modules/@monaco-editor/react": { - "version": "4.4.6", - "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", - "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", - "dependencies": { - "@monaco-editor/loader": "^1.3.2", - "prop-types": "^15.7.2" - }, - "peerDependencies": { - "monaco-editor": ">= 0.25.0 < 1", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" - }, - "node_modules/@react-hook/debounce": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", - "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", - "dependencies": { - "@react-hook/latest": "^1.0.2" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/event": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", - "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/latest": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", - "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/passive-layout-effect": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", - "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/resize-observer": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", - "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1", - "@react-hook/latest": "^1.0.2", - "@react-hook/passive-layout-effect": "^1.2.0" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/size": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", - "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", - "dependencies": { - "@react-hook/passive-layout-effect": "^1.2.0", - "@react-hook/resize-observer": "^1.2.1" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/throttle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", - "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", - "dependencies": { - "@react-hook/latest": "^1.0.2" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/window-size": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", - "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", - "dependencies": { - "@react-hook/debounce": "^3.0.0", - "@react-hook/event": "^1.2.1", - "@react-hook/throttle": "^2.2.0" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-types/button": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", - "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", - "dependencies": { - "@react-types/shared": "^3.8.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/checkbox": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", - "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/checkbox/node_modules/@react-types/shared": { - "version": "3.18.1", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", - "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/radio": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", - "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", - "dependencies": { - "@react-types/shared": "^3.8.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/shared": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", - "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/switch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", - "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", - "dependencies": { - "@react-types/checkbox": "^3.2.3", - "@react-types/shared": "^3.8.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/textfield": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", - "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", - "dependencies": { - "@react-types/shared": "^3.9.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@redocly/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", - "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/@redocly/ajv/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==" - }, - "node_modules/@redocly/openapi-core": { - "version": "1.0.0-beta.123", - "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", - "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", - "dependencies": { - "@redocly/ajv": "^8.11.0", - "@types/node": "^14.11.8", - "colorette": "^1.2.0", - "js-levenshtein": "^1.1.6", - "js-yaml": "^4.1.0", - "lodash.isequal": "^4.5.0", - "minimatch": "^5.0.1", - "node-fetch": "^2.6.1", - "pluralize": "^8.0.0", - "yaml-ast-parser": "0.0.43" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@redocly/openapi-core/node_modules/@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" - }, - "node_modules/@redocly/openapi-core/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@redocly/openapi-core/node_modules/colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" - }, - "node_modules/@redocly/openapi-core/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@rehooks/component-size": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", - "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", - "peerDependencies": { - "react": ">=16.8.0" - } - }, - "node_modules/@sentry/browser": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", - "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", - "dependencies": { - "@sentry/core": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/browser/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/core": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", - "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", - "dependencies": { - "@sentry/hub": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/hub": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", - "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", - "dependencies": { - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/hub/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/minimal": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", - "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", - "dependencies": { - "@sentry/hub": "6.19.7", - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/minimal/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/react": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", - "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", - "dependencies": { - "@sentry/browser": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "hoist-non-react-statics": "^3.3.2", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "react": "15.x || 16.x || 17.x || 18.x" - } - }, - "node_modules/@sentry/react/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/types": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", - "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/utils": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", - "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", - "dependencies": { - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/utils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" - }, - "node_modules/@sideway/pinpoint": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" - }, - "node_modules/@sinclair/typebox": { - "version": "0.25.24", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", - "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" - }, - "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/@slorber/static-site-generator-webpack-plugin": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", - "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", - "dependencies": { - "eval": "^0.1.8", - "p-map": "^4.0.0", - "webpack-sources": "^3.2.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@stoplight/elements": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", - "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", - "dependencies": { - "@stoplight/elements-core": "~7.7.17", - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "file-saver": "^2.0.5", - "lodash": "^4.17.19", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0" - }, - "engines": { - "node": ">=14.13" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/elements-core": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", - "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", - "dependencies": { - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-ref-parser": "^9.0.5", - "@stoplight/json-schema-sampler": "0.2.3", - "@stoplight/json-schema-viewer": "^4.9.0", - "@stoplight/markdown-viewer": "^5.6.0", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/mosaic-code-editor": "^1.33.0", - "@stoplight/mosaic-code-viewer": "^1.33.0", - "@stoplight/path": "^1.3.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "httpsnippet-lite": "^3.0.1", - "jotai": "1.3.9", - "json-schema": "^0.4.0", - "lodash": "^4.17.19", - "nanoid": "^3.1.32", - "prop-types": "^15.7.2", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0", - "react-router-hash-link": "^2.1.0", - "tslib": "^2.1.0", - "urijs": "^1.19.11", - "util": "^0.12.4", - "xml-formatter": "^2.6.1" - }, - "engines": { - "node": ">=14.13" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/http-spec": { - "version": "5.9.4", - "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", - "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", - "dependencies": { - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-generator": "1.0.2", - "@stoplight/types": "^13.15.0", - "@types/json-schema": "7.0.11", - "@types/swagger-schema-official": "~2.0.22", - "@types/type-is": "^1.6.3", - "fnv-plus": "^1.3.1", - "lodash.isequalwith": "^4.4.0", - "lodash.pick": "^4.4.0", - "lodash.pickby": "^4.6.0", - "openapi3-ts": "^2.0.2", - "postman-collection": "^4.1.2", - "tslib": "^2.3.1", - "type-is": "^1.6.18" - }, - "engines": { - "node": ">=14.13" - } - }, - "node_modules/@stoplight/json": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", - "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", - "dependencies": { - "@stoplight/ordered-object-literal": "^1.0.3", - "@stoplight/path": "^1.3.2", - "@stoplight/types": "^13.6.0", - "jsonc-parser": "~2.2.1", - "lodash": "^4.17.21", - "safe-stable-stringify": "^1.1" - }, - "engines": { - "node": ">=8.3.0" - } - }, - "node_modules/@stoplight/json-schema-generator": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", - "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", - "dependencies": { - "cross-fetch": "^3.1.5", - "json-promise": "1.1.x", - "minimist": "1.2.6", - "mkdirp": "0.5.x", - "pretty-data": "0.40.x" - }, - "bin": { - "json-schema-generator": "bin/cli.js" - } - }, - "node_modules/@stoplight/json-schema-generator/node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - }, - "node_modules/@stoplight/json-schema-merge-allof": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", - "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", - "dependencies": { - "compute-lcm": "^1.1.0", - "json-schema-compare": "^0.2.2", - "lodash": "^4.17.4" - } - }, - "node_modules/@stoplight/json-schema-ref-parser": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", - "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", - "dependencies": { - "@jsdevtools/ono": "^7.1.3", - "@stoplight/path": "^1.3.2", - "@stoplight/yaml": "^4.0.2", - "call-me-maybe": "^1.0.1", - "fastestsmallesttextencoderdecoder": "^1.0.22", - "isomorphic-fetch": "^3.0.0", - "node-abort-controller": "^3.0.1" - } - }, - "node_modules/@stoplight/json-schema-sampler": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", - "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", - "dependencies": { - "@types/json-schema": "^7.0.7", - "json-pointer": "^0.6.1" - } - }, - "node_modules/@stoplight/json-schema-tree": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", - "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", - "dependencies": { - "@stoplight/json": "^3.12.0", - "@stoplight/json-schema-merge-allof": "^0.7.8", - "@stoplight/lifecycle": "^2.3.2", - "@types/json-schema": "^7.0.7", - "magic-error": "0.0.1" - }, - "engines": { - "node": ">=10.18" - } - }, - "node_modules/@stoplight/json-schema-viewer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", - "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", - "dependencies": { - "@stoplight/json": "^3.20.1", - "@stoplight/json-schema-tree": "^2.2.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@types/json-schema": "^7.0.7", - "classnames": "^2.2.6", - "fnv-plus": "^1.3.1", - "jotai": "^1.4.5", - "lodash": "^4.17.19" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@stoplight/markdown-viewer": "^5", - "@stoplight/mosaic": "^1.32", - "@stoplight/mosaic-code-viewer": "^1.32", - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/json-schema-viewer/node_modules/jotai": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", - "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", - "engines": { - "node": ">=12.20.0" - }, - "peerDependencies": { - "@babel/core": "*", - "@babel/template": "*", - "jotai-devtools": "*", - "jotai-immer": "*", - "jotai-optics": "*", - "jotai-redux": "*", - "jotai-tanstack-query": "*", - "jotai-urql": "*", - "jotai-valtio": "*", - "jotai-xstate": "*", - "jotai-zustand": "*", - "react": ">=16.8" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@babel/template": { - "optional": true - }, - "jotai-devtools": { - "optional": true - }, - "jotai-immer": { - "optional": true - }, - "jotai-optics": { - "optional": true - }, - "jotai-redux": { - "optional": true - }, - "jotai-tanstack-query": { - "optional": true - }, - "jotai-urql": { - "optional": true - }, - "jotai-valtio": { - "optional": true - }, - "jotai-xstate": { - "optional": true - }, - "jotai-zustand": { - "optional": true - } - } - }, - "node_modules/@stoplight/json/node_modules/jsonc-parser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", - "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" - }, - "node_modules/@stoplight/lifecycle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", - "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", - "dependencies": { - "tslib": "^2.3.1", - "wolfy87-eventemitter": "~5.2.8" - }, - "engines": { - "node": ">=8.3.0" - } - }, - "node_modules/@stoplight/markdown": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", - "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", - "dependencies": { - "@stoplight/types": "^12.3.0", - "@stoplight/yaml": "^4.2.2", - "github-slugger": "^1.3.0", - "hast-util-whitespace": "^2.0.0", - "lodash": "^4.17.21", - "mdast-util-to-string": "^3.1.0", - "remark-frontmatter": "^3.0.0", - "remark-gfm": "^1.0.0", - "remark-parse": "^9.0.0", - "remark-stringify": "^9.0.1", - "tslib": "^2.3.0", - "unified": "^9.2.1", - "unist-util-select": "^4.0.0", - "unist-util-visit": "^3.1.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@stoplight/markdown-viewer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", - "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", - "dependencies": { - "@rehooks/component-size": "^1.0.3", - "@stoplight/markdown": "^3.1.3", - "@stoplight/react-error-boundary": "^2.0.0", - "deepmerge": "^4.2.2", - "hast-to-hyperscript": "^10.0.1", - "hast-util-raw": "7.0.0", - "hast-util-sanitize": "^4.0.0", - "hastscript": "^7.0.2", - "mdast-util-to-hast": "^11.1.1", - "remark-parse": "^9.0.0", - "unified": "^9.2.1", - "unist-builder": "^3.0.0", - "unist-util-select": "^4.0.1", - "unist-util-visit": "^3.1.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "@stoplight/mosaic": "^1.24.4", - "@stoplight/mosaic-code-viewer": "^1.24.4", - "react": ">=16.14", - "react-dom": ">=16.14" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/@types/parse5": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", - "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" - }, - "node_modules/@stoplight/markdown-viewer/node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-to-hyperscript": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", - "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-object": "^0.4.1", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", - "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", - "dependencies": { - "@types/hast": "^2.0.0", - "@types/unist": "^2.0.0", - "hastscript": "^7.0.0", - "property-information": "^6.0.0", - "vfile": "^5.0.0", - "vfile-location": "^4.0.0", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5/node_modules/vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-parse-selector": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", - "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", - "dependencies": { - "@types/hast": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-raw": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", - "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", - "dependencies": { - "@types/hast": "^2.0.0", - "@types/parse5": "^6.0.0", - "@types/unist": "^2.0.3", - "hast-util-from-parse5": "^7.0.0", - "hast-util-to-parse5": "^7.0.0", - "html-void-elements": "^2.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-to-parse5": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", - "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hastscript": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", - "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^3.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/html-void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", - "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", - "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", - "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", - "dependencies": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "@types/mdurl": "^1.0.0", - "mdast-util-definitions": "^5.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^3.0.0", - "unist-util-generated": "^2.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/@stoplight/markdown-viewer/node_modules/property-information": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", - "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "dependencies": { - "mdast-util-from-markdown": "^0.8.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/style-to-object": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", - "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", - "dependencies": { - "inline-style-parser": "0.1.1" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-builder": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", - "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-generated": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", - "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-position": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", - "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-stringify-position": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", - "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", - "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", - "dependencies": { - "@types/unist": "^2.0.0", - "vfile": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location/node_modules/vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/web-namespaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", - "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown/node_modules/@stoplight/types": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", - "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", - "dependencies": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/markdown/node_modules/mdast-util-to-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", - "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", - "dependencies": { - "@types/mdast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "dependencies": { - "mdast-util-from-markdown": "^0.8.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/mosaic": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", - "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", - "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/button": "3.4.1", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@react-types/textfield": "3.3.0", - "@stoplight/types": "^13.7.0", - "@types/react": "^17.0.3", - "@types/react-dom": "^17.0.3", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "peerDependencies": { - "react": ">= 16.14" - } - }, - "node_modules/@stoplight/mosaic-code-editor": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", - "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", - "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/mosaic-code-viewer": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "peerDependencies": { - "react": ">= 16.14" - } - }, - "node_modules/@stoplight/mosaic-code-editor/node_modules/use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1" - }, - "peerDependencies": { - "react": "16.8.0 - 18", - "react-dom": "16.8.0 - 18" - } - }, - "node_modules/@stoplight/mosaic-code-viewer": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", - "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", - "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "peerDependencies": { - "react": ">= 16.14" - } - }, - "node_modules/@stoplight/mosaic-code-viewer/node_modules/use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1" - }, - "peerDependencies": { - "react": "16.8.0 - 18", - "react-dom": "16.8.0 - 18" - } - }, - "node_modules/@stoplight/mosaic/node_modules/use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1" - }, - "peerDependencies": { - "react": "16.8.0 - 18", - "react-dom": "16.8.0 - 18" - } - }, - "node_modules/@stoplight/ordered-object-literal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", - "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/path": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", - "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/react-error-boundary": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", - "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", - "dependencies": { - "@sentry/react": "^6.13.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/types": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", - "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", - "dependencies": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - }, - "engines": { - "node": "^12.20 || >=14.13" - } - }, - "node_modules/@stoplight/yaml": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", - "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", - "dependencies": { - "@stoplight/ordered-object-literal": "^1.0.1", - "@stoplight/types": "^13.0.0", - "@stoplight/yaml-ast-parser": "0.0.48", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=10.8" - } - }, - "node_modules/@stoplight/yaml-ast-parser": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", - "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" - }, - "node_modules/@svgr/babel-plugin-add-jsx-attribute": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", - "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", - "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", - "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", - "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-svg-dynamic-title": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", - "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-svg-em-dimensions": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", - "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-transform-react-native-svg": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", - "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-transform-svg-component": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", - "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-preset": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", - "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", - "dependencies": { - "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", - "@svgr/babel-plugin-remove-jsx-attribute": "*", - "@svgr/babel-plugin-remove-jsx-empty-expression": "*", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", - "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", - "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", - "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", - "@svgr/babel-plugin-transform-svg-component": "^6.5.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/core": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", - "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", - "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/hast-util-to-babel-ast": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", - "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", - "dependencies": { - "@babel/types": "^7.20.0", - "entities": "^4.4.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/plugin-jsx": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", - "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", - "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/hast-util-to-babel-ast": "^6.5.1", - "svg-parser": "^2.0.4" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@svgr/core": "^6.0.0" - } - }, - "node_modules/@svgr/plugin-svgo": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", - "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", - "dependencies": { - "cosmiconfig": "^7.0.1", - "deepmerge": "^4.2.2", - "svgo": "^2.8.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@svgr/core": "*" - } - }, - "node_modules/@svgr/webpack": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", - "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", - "dependencies": { - "@babel/core": "^7.19.6", - "@babel/plugin-transform-react-constant-elements": "^7.18.12", - "@babel/preset-env": "^7.19.4", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@svgr/core": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "@svgr/plugin-svgo": "^6.5.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@swc/core": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", - "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", - "dev": true, - "hasInstallScript": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/swc" - }, - "optionalDependencies": { - "@swc/core-darwin-arm64": "1.3.37", - "@swc/core-darwin-x64": "1.3.37", - "@swc/core-linux-arm-gnueabihf": "1.3.37", - "@swc/core-linux-arm64-gnu": "1.3.37", - "@swc/core-linux-arm64-musl": "1.3.37", - "@swc/core-linux-x64-gnu": "1.3.37", - "@swc/core-linux-x64-musl": "1.3.37", - "@swc/core-win32-arm64-msvc": "1.3.37", - "@swc/core-win32-ia32-msvc": "1.3.37", - "@swc/core-win32-x64-msvc": "1.3.37" - } - }, - "node_modules/@swc/core-darwin-arm64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", - "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-darwin-x64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", - "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", - "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", - "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", - "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", - "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", - "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", - "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", - "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", - "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/jest": { - "version": "0.2.24", - "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", - "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", - "dev": true, - "dependencies": { - "@jest/create-cache-key-function": "^27.4.2", - "jsonc-parser": "^3.2.0" - }, - "engines": { - "npm": ">= 7.0.0" - }, - "peerDependencies": { - "@swc/core": "*" - } - }, - "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dependencies": { - "defer-to-connect": "^1.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@testing-library/dom": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", - "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@testing-library/jest-dom": { - "version": "5.16.5", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", - "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", - "dev": true, - "dependencies": { - "@adobe/css-tools": "^4.0.1", - "@babel/runtime": "^7.9.2", - "@types/testing-library__jest-dom": "^5.9.1", - "aria-query": "^5.0.0", - "chalk": "^3.0.0", - "css.escape": "^1.5.1", - "dom-accessibility-api": "^0.5.6", - "lodash": "^4.17.15", - "redent": "^3.0.0" - }, - "engines": { - "node": ">=8", - "npm": ">=6", - "yarn": ">=1" - } - }, - "node_modules/@testing-library/jest-dom/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/@testing-library/react": { - "version": "12.1.5", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", - "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^8.0.0", - "@types/react-dom": "<18.0.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "react": "<18.0.0", - "react-dom": "<18.0.0" - } - }, - "node_modules/@testing-library/react/node_modules/@testing-library/dom": { - "version": "8.20.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", - "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@testing-library/user-event": { - "version": "13.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", - "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5" - }, - "engines": { - "node": ">=10", - "npm": ">=6" - }, - "peerDependencies": { - "@testing-library/dom": ">=7.21.4" - } - }, - "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/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@types/aria-query": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", - "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", - "dev": true - }, - "node_modules/@types/babel__core": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", - "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", - "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.18.3", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", - "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.3.0" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/d3": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", - "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", - "optional": true, - "dependencies": { - "@types/d3-array": "*", - "@types/d3-axis": "*", - "@types/d3-brush": "*", - "@types/d3-chord": "*", - "@types/d3-color": "*", - "@types/d3-contour": "*", - "@types/d3-delaunay": "*", - "@types/d3-dispatch": "*", - "@types/d3-drag": "*", - "@types/d3-dsv": "*", - "@types/d3-ease": "*", - "@types/d3-fetch": "*", - "@types/d3-force": "*", - "@types/d3-format": "*", - "@types/d3-geo": "*", - "@types/d3-hierarchy": "*", - "@types/d3-interpolate": "*", - "@types/d3-path": "*", - "@types/d3-polygon": "*", - "@types/d3-quadtree": "*", - "@types/d3-random": "*", - "@types/d3-scale": "*", - "@types/d3-scale-chromatic": "*", - "@types/d3-selection": "*", - "@types/d3-shape": "*", - "@types/d3-time": "*", - "@types/d3-time-format": "*", - "@types/d3-timer": "*", - "@types/d3-transition": "*", - "@types/d3-zoom": "*" - } - }, - "node_modules/@types/d3-array": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", - "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", - "optional": true - }, - "node_modules/@types/d3-axis": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", - "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-brush": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", - "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-chord": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", - "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", - "optional": true - }, - "node_modules/@types/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", - "optional": true - }, - "node_modules/@types/d3-contour": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", - "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", - "optional": true, - "dependencies": { - "@types/d3-array": "*", - "@types/geojson": "*" - } - }, - "node_modules/@types/d3-delaunay": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", - "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", - "optional": true - }, - "node_modules/@types/d3-dispatch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", - "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", - "optional": true - }, - "node_modules/@types/d3-drag": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", - "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", - "optional": true - }, - "node_modules/@types/d3-ease": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", - "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", - "optional": true - }, - "node_modules/@types/d3-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", - "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", - "optional": true, - "dependencies": { - "@types/d3-dsv": "*" - } - }, - "node_modules/@types/d3-force": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", - "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", - "optional": true - }, - "node_modules/@types/d3-format": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", - "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", - "optional": true - }, - "node_modules/@types/d3-geo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", - "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", - "optional": true, - "dependencies": { - "@types/geojson": "*" - } - }, - "node_modules/@types/d3-hierarchy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", - "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", - "optional": true - }, - "node_modules/@types/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", - "optional": true, - "dependencies": { - "@types/d3-color": "*" - } - }, - "node_modules/@types/d3-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", - "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", - "optional": true - }, - "node_modules/@types/d3-polygon": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", - "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", - "optional": true - }, - "node_modules/@types/d3-quadtree": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", - "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", - "optional": true - }, - "node_modules/@types/d3-random": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", - "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", - "optional": true - }, - "node_modules/@types/d3-scale": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", - "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", - "optional": true, - "dependencies": { - "@types/d3-time": "*" - } - }, - "node_modules/@types/d3-scale-chromatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", - "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", - "optional": true - }, - "node_modules/@types/d3-selection": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", - "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", - "optional": true - }, - "node_modules/@types/d3-shape": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", - "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", - "optional": true, - "dependencies": { - "@types/d3-path": "*" - } - }, - "node_modules/@types/d3-time": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", - "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", - "optional": true - }, - "node_modules/@types/d3-time-format": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", - "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", - "optional": true - }, - "node_modules/@types/d3-timer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", - "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", - "optional": true - }, - "node_modules/@types/d3-transition": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", - "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-zoom": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", - "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", - "optional": true, - "dependencies": { - "@types/d3-interpolate": "*", - "@types/d3-selection": "*" - } - }, - "node_modules/@types/eslint": { - "version": "8.21.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", - "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" - }, - "node_modules/@types/express": { - "version": "4.17.17", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", - "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.33", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", - "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/geojson": { - "version": "7946.0.10", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", - "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", - "optional": true - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/har-format": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", - "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" - }, - "node_modules/@types/hast": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", - "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/history": { - "version": "4.7.11", - "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", - "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" - }, - "node_modules/@types/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" - }, - "node_modules/@types/http-proxy": { - "version": "1.17.10", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", - "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" - }, - "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==", - "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==", - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.4.0", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", - "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/jest/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/@types/jest/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@types/js-cookie": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", - "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" - }, - "node_modules/@types/katex": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", - "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" - }, - "node_modules/@types/mdast": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", - "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/mdurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", - "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" - }, - "node_modules/@types/node": { - "version": "18.14.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", - "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" - }, - "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/parse5": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", - "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" - }, - "node_modules/@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", - "dev": true - }, - "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "node_modules/@types/react": { - "version": "17.0.53", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", - "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "17.0.19", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", - "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", - "dependencies": { - "@types/react": "^17" - } - }, - "node_modules/@types/react-router": { - "version": "5.1.20", - "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", - "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*" - } - }, - "node_modules/@types/react-router-config": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", - "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "node_modules/@types/react-router-dom": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", - "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "node_modules/@types/resize-observer-browser": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", - "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", - "optional": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" - }, - "node_modules/@types/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", - "dependencies": { - "@types/node": "*" - } - }, - "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/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", - "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", - "dev": true - }, - "node_modules/@types/sizzle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", - "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", - "dev": true - }, - "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, - "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/swagger-schema-official": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", - "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" - }, - "node_modules/@types/tapable": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", - "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", - "dev": true - }, - "node_modules/@types/testing-library__jest-dom": { - "version": "5.14.5", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", - "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", - "dev": true, - "dependencies": { - "@types/jest": "*" - } - }, - "node_modules/@types/triple-beam": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", - "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" - }, - "node_modules/@types/type-is": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", - "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/uglify-js": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", - "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", - "dev": true, - "dependencies": { - "source-map": "^0.6.1" - } - }, - "node_modules/@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" - }, - "node_modules/@types/webpack": { - "version": "4.41.33", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", - "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/@types/webpack-sources": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", - "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - } - }, - "node_modules/@types/webpack-sources/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@types/ws": { - "version": "8.5.4", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", - "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" - }, - "node_modules/@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", - "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/type-utils": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", - "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", - "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", - "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", - "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", - "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", - "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", - "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.54.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "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==", - "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==" - }, - "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==" - }, - "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==" - }, - "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==", - "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==" - }, - "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==", - "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==", - "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==", - "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==" - }, - "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==", - "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==", - "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==", - "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==", - "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==", - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xobotyi/scrollbar-width": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", - "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" - }, - "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==" - }, - "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==" - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "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-globals/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-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "peerDependencies": { - "acorn": "^8" - } - }, - "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==", - "devOptional": 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/address": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", - "engines": { - "node": ">= 10.0.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/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "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-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/ajv-formats/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==" - }, - "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==", - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/algoliasearch": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", - "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", - "dependencies": { - "@algolia/cache-browser-local-storage": "4.16.0", - "@algolia/cache-common": "4.16.0", - "@algolia/cache-in-memory": "4.16.0", - "@algolia/client-account": "4.16.0", - "@algolia/client-analytics": "4.16.0", - "@algolia/client-common": "4.16.0", - "@algolia/client-personalization": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/logger-console": "4.16.0", - "@algolia/requester-browser-xhr": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/requester-node-http": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/algoliasearch-helper": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", - "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", - "dependencies": { - "@algolia/events": "^4.0.1" - }, - "peerDependencies": { - "algoliasearch": ">= 3.1 < 6" - } - }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dependencies": { - "string-width": "^4.1.0" - } - }, - "node_modules/ansi-align/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==" - }, - "node_modules/ansi-align/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "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-escapes/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/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "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==", - "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.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "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/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "dependencies": { - "deep-equal": "^2.0.5" - } - }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.reduce": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", - "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" - }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "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/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - } - }, - "node_modules/babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", - "dev": true, - "dependencies": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "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.3.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" - } - }, - "node_modules/babel-plugin-apply-mdx-type-prop": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", - "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4", - "@mdx-js/util": "1.6.22" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "@babel/core": "^7.11.6" - } - }, - "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "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==", - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-extract-import-names": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", - "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "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": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", - "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-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-styled-components": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", - "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.0", - "@babel/helper-module-imports": "^7.16.0", - "babel-plugin-syntax-jsx": "^6.18.0", - "lodash": "^4.17.11", - "picomatch": "^2.3.0" - }, - "peerDependencies": { - "styled-components": ">= 2" - } - }, - "node_modules/babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" - }, - "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.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", - "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "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/bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==" - }, - "node_modules/base16": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", - "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" - }, - "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/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" - }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", - "engines": { - "node": ">=0.6" - } - }, - "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==", - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/blob-util": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", - "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", - "dev": true - }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" - }, - "node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/bonjour-service": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", - "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", - "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" - }, - "node_modules/boxen": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", - "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", - "dependencies": { - "ansi-align": "^3.0.1", - "camelcase": "^6.2.0", - "chalk": "^4.1.2", - "cli-boxes": "^3.0.0", - "string-width": "^5.0.1", - "type-fest": "^2.5.0", - "widest-line": "^4.0.1", - "wrap-ansi": "^8.0.1" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "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==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/broadcast-channel": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", - "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "detect-node": "^2.1.0", - "js-sha3": "0.8.0", - "microseconds": "0.2.0", - "nano-time": "1.0.0", - "oblivious-set": "1.0.0", - "rimraf": "3.0.2", - "unload": "2.2.0" - } - }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" - }, - "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/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dependencies": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "node_modules/browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dependencies": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "dependencies": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "node_modules/browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dependencies": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "node_modules/browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dependencies": { - "pako": "~1.0.5" - } - }, - "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "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-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" - }, - "node_modules/build": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/build/-/build-0.1.4.tgz", - "integrity": "sha512-KwbDJ/zrsU8KZRRMfoURG14cKIAStUlS8D5jBDvtrZbwO5FEkYqc3oB8HIhRiyD64A48w1lc+sOmQ+mmBw5U/Q==", - "dependencies": { - "cssmin": "0.3.x", - "jsmin": "1.x", - "jxLoader": "*", - "moo-server": "*", - "promised-io": "*", - "timespan": "2.x", - "uglify-js": "1.x", - "walker": "1.x", - "winston": "*", - "wrench": "1.3.x" - }, - "engines": { - "node": ">v0.4.12" - } - }, - "node_modules/builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" - }, - "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cachedir": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", - "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "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/call-me-maybe": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", - "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" - }, - "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/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/camelize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", - "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001470", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", - "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "node_modules/ccount": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", - "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "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/character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/charset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", - "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/check-more-types": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", - "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "dependencies": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - }, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/cheeriojs/cheerio?sponsor=1" - } - }, - "node_modules/cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "dependencies": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "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==", - "engines": { - "node": ">=6.0" - } - }, - "node_modules/ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "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/classcat": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", - "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", - "optional": true - }, - "node_modules/classnames": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", - "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" - }, - "node_modules/clean-css": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", - "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 10.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-boxes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", - "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-table3": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", - "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", - "dependencies": { - "string-width": "^4.2.0" - }, - "engines": { - "node": "10.* || >= 12.*" - }, - "optionalDependencies": { - "@colors/colors": "1.5.0" - } - }, - "node_modules/cli-table3/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==" - }, - "node_modules/cli-table3/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-truncate/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/cli-truncate/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "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/cliui/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/cliui/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/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/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==", - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/clone-deep/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==", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/clone-response/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "dependencies": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" - } - }, - "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==", - "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==" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "node_modules/color/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/color/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" - }, - "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" - }, - "node_modules/colorspace": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", - "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", - "dependencies": { - "color": "^3.1.3", - "text-hex": "1.0.x" - } - }, - "node_modules/combine-promises": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", - "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==", - "engines": { - "node": ">=10" - } - }, - "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==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/common-tags": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", - "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", - "dev": true, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/compression/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/compute-gcd": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", - "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", - "dependencies": { - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "node_modules/compute-lcm": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", - "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", - "dependencies": { - "compute-gcd": "^1.2.1", - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/consola": { - "version": "2.15.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", - "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" - }, - "node_modules/console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" - }, - "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/constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" - }, - "node_modules/content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" - }, - "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "node_modules/copy-text-to-clipboard": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", - "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-to-clipboard": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", - "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", - "dependencies": { - "toggle-selection": "^1.0.6" - } - }, - "node_modules/copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dependencies": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/copy-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/copy-webpack-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/globby": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", - "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-webpack-plugin/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==" - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/copy-webpack-plugin/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/core-js": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", - "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==", - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", - "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", - "dependencies": { - "browserslist": "^4.21.5" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-pure": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", - "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==", - "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": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - } - }, - "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "dependencies": { - "node-fetch": "2.6.7" - } - }, - "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==", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dependencies": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - }, - "engines": { - "node": "*" - } - }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", - "engines": { - "node": ">=4" - } - }, - "node_modules/css-declaration-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", - "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.0.9" - } - }, - "node_modules/css-in-js-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", - "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", - "dependencies": { - "hyphenate-style-name": "^1.0.3" - } - }, - "node_modules/css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/css-loader/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/css-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/css-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/css-loader/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/css-loader/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/css-loader/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/css-minimizer-webpack-plugin": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", - "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", - "dependencies": { - "cssnano": "^5.1.8", - "jest-worker": "^29.1.2", - "postcss": "^8.4.17", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "@parcel/css": { - "optional": true - }, - "@swc/css": { - "optional": true - }, - "clean-css": { - "optional": true - }, - "csso": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "lightningcss": { - "optional": true - } - } - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/css-minimizer-webpack-plugin/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==" - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-selector-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", - "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" - }, - "node_modules/css-to-react-native": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", - "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", - "dependencies": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^4.0.2" - } - }, - "node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", - "dev": true - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssmin": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/cssmin/-/cssmin-0.3.2.tgz", - "integrity": "sha512-bynxGIAJ8ybrnFobjsQotIjA8HFDDgPwbeUWNXXXfR+B4f9kkxdcUyagJoQCSUOfMV+ZZ6bMn8bvbozlCzUGwQ==", - "bin": { - "cssmin": "bin/cssmin" - } - }, - "node_modules/cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", - "dependencies": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-preset-advanced": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", - "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", - "dependencies": { - "autoprefixer": "^10.4.12", - "cssnano-preset-default": "^5.2.14", - "postcss-discard-unused": "^5.1.0", - "postcss-merge-idents": "^5.1.1", - "postcss-reduce-idents": "^5.2.0", - "postcss-zindex": "^5.1.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" - }, - "node_modules/cypress": { - "version": "12.7.0", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", - "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "@cypress/request": "^2.88.10", - "@cypress/xvfb": "^1.2.4", - "@types/node": "^14.14.31", - "@types/sinonjs__fake-timers": "8.1.1", - "@types/sizzle": "^2.3.2", - "arch": "^2.2.0", - "blob-util": "^2.0.2", - "bluebird": "^3.7.2", - "buffer": "^5.6.0", - "cachedir": "^2.3.0", - "chalk": "^4.1.0", - "check-more-types": "^2.24.0", - "cli-cursor": "^3.1.0", - "cli-table3": "~0.6.1", - "commander": "^5.1.0", - "common-tags": "^1.8.0", - "dayjs": "^1.10.4", - "debug": "^4.3.4", - "enquirer": "^2.3.6", - "eventemitter2": "6.4.7", - "execa": "4.1.0", - "executable": "^4.1.1", - "extract-zip": "2.0.1", - "figures": "^3.2.0", - "fs-extra": "^9.1.0", - "getos": "^3.2.1", - "is-ci": "^3.0.0", - "is-installed-globally": "~0.4.0", - "lazy-ass": "^1.6.0", - "listr2": "^3.8.3", - "lodash": "^4.17.21", - "log-symbols": "^4.0.0", - "minimist": "^1.2.6", - "ospath": "^1.2.2", - "pretty-bytes": "^5.6.0", - "proxy-from-env": "1.0.0", - "request-progress": "^3.0.0", - "semver": "^7.3.2", - "supports-color": "^8.1.1", - "tmp": "~0.2.1", - "untildify": "^4.0.0", - "yauzl": "^2.10.0" - }, - "bin": { - "cypress": "bin/cypress" - }, - "engines": { - "node": "^14.0.0 || ^16.0.0 || >=18.0.0" - } - }, - "node_modules/cypress/node_modules/@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", - "dev": true - }, - "node_modules/cypress/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/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dispatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", - "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-drag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", - "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", - "optional": true, - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-selection": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-ease": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", - "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "optional": true, - "dependencies": { - "d3-color": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-selection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", - "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-timer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", - "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-transition": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", - "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", - "optional": true, - "dependencies": { - "d3-color": "1 - 3", - "d3-dispatch": "1 - 3", - "d3-ease": "1 - 3", - "d3-interpolate": "1 - 3", - "d3-timer": "1 - 3" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "d3-selection": "2 - 3" - } - }, - "node_modules/d3-zoom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", - "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", - "optional": true, - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "2 - 3", - "d3-transition": "2 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/dagre": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", - "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", - "optional": true, - "dependencies": { - "graphlib": "^2.1.8", - "lodash": "^4.17.15" - } - }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "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/dayjs": { - "version": "1.11.7", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", - "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", - "dev": true - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "node_modules/decko": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", - "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" - }, - "node_modules/decode-uri-component": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", - "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==", - "engines": { - "node": ">=14.16" - } - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/deep-equal": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", - "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "devOptional": true - }, - "node_modules/deepmerge": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", - "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/default-gateway/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "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/default-gateway/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-gateway/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==", - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", - "dependencies": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detab": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", - "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", - "dependencies": { - "repeat-string": "^1.5.4" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", - "engines": { - "node": ">=8" - } - }, - "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/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" - }, - "node_modules/detect-port": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", - "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", - "dependencies": { - "address": "^1.0.1", - "debug": "4" - }, - "bin": { - "detect": "bin/detect-port.js", - "detect-port": "bin/detect-port.js" - } - }, - "node_modules/detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" - }, - "engines": { - "node": ">= 4.2.1" - } - }, - "node_modules/detect-port-alt/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/detect-port-alt/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/diff-sequences": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", - "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dependencies": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "node_modules/diffie-hellman/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" - }, - "node_modules/dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "devOptional": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", - "dev": true - }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dependencies": { - "utila": "~0.4" - } - }, - "node_modules/dom-helpers": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", - "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", - "dependencies": { - "@babel/runtime": "^7.1.2" - } - }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/dom7": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", - "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", - "dependencies": { - "ssr-window": "^4.0.0" - } - }, - "node_modules/domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "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/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/dompurify": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", - "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" - }, - "node_modules/domutils": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", - "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dot-prop/node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" - }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" - }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "node_modules/electron-to-chromium": { - "version": "1.4.315", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", - "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" - }, - "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "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==" - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/emoticon": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", - "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/enabled": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", - "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", - "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/entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "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/error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", - "dependencies": { - "stackframe": "^1.3.4" - } - }, - "node_modules/es-abstract": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", - "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, - "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "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==", - "dev": true, - "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/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" - }, - "node_modules/es6-promise": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "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.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "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": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true, - "engines": { - "node": ">= 0.8.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": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/eslint": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", - "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", - "devOptional": true, - "dependencies": { - "@eslint/eslintrc": "^2.0.0", - "@eslint/js": "8.35.0", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-prettier": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", - "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", - "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-plugin-markdown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", - "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", - "dev": true, - "dependencies": { - "mdast-util-from-markdown": "^0.8.5" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-prettier": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", - "dev": true, - "dependencies": { - "prettier-linter-helpers": "^1.0.0" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "eslint": ">=7.28.0", - "prettier": ">=2.0.0" - }, - "peerDependenciesMeta": { - "eslint-config-prettier": { - "optional": true - } - } - }, - "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==", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "devOptional": true, - "dependencies": { - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" - } - }, - "node_modules/eslint-utils/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==", - "devOptional": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "devOptional": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "devOptional": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "devOptional": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "devOptional": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "devOptional": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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==", - "devOptional": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "devOptional": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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==", - "devOptional": true, - "engines": { - "node": ">=8" - } - }, - "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==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", - "devOptional": true, - "dependencies": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "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==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "devOptional": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": 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==", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "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==", - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eta": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", - "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==", - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "url": "https://github.com/eta-dev/eta?sponsor=1" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eval": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", - "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", - "dependencies": { - "@types/node": "*", - "require-like": ">= 0.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/eventemitter2": { - "version": "6.4.7", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", - "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", - "dev": true - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/executable": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", - "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", - "dev": true, - "dependencies": { - "pify": "^2.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/expect": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", - "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", - "dev": true, - "dependencies": { - "@jest/expect-utils": "^29.4.3", - "jest-get-type": "^29.4.3", - "jest-matcher-utils": "^29.4.3", - "jest-message-util": "^29.4.3", - "jest-util": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "node_modules/express/node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" - }, - "node_modules/express/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/express/node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - }, - "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" - } - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true, - "engines": [ - "node >=0.6.0" - ] - }, - "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==" - }, - "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "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==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "devOptional": true - }, - "node_modules/fast-loops": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", - "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" - }, - "node_modules/fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "node_modules/fast-shallow-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", - "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" - }, - "node_modules/fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", - "dependencies": { - "punycode": "^1.3.2" - } - }, - "node_modules/fast-url-parser/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" - }, - "node_modules/fastest-stable-stringify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", - "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" - }, - "node_modules/fastestsmallesttextencoderdecoder": { - "version": "1.0.22", - "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", - "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "dependencies": { - "format": "^0.2.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fbemitter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", - "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", - "dependencies": { - "fbjs": "^3.0.0" - } - }, - "node_modules/fbjs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", - "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", - "dependencies": { - "cross-fetch": "^3.1.5", - "fbjs-css-vars": "^1.0.0", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.30" - } - }, - "node_modules/fbjs-css-vars": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", - "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/fecha": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" - }, - "node_modules/feed": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", - "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", - "dependencies": { - "xml-js": "^1.6.11" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/figures/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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "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==", - "devOptional": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/file-loader": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", - "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/file-loader/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==", - "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/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/file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/filesize": { - "version": "8.0.7", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", - "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", - "engines": { - "node": ">= 0.4.0" - } - }, - "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==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/filter-obj": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", - "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "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-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "devOptional": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "devOptional": true - }, - "node_modules/flux": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", - "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", - "dependencies": { - "fbemitter": "^3.0.0", - "fbjs": "^3.0.1" - }, - "peerDependencies": { - "react": "^15.0.2 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/fn.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", - "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" - }, - "node_modules/fnv-plus": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", - "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" - }, - "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreach": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", - "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/fork-ts-checker-webpack-plugin": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", - "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", - "dependencies": { - "@babel/code-frame": "^7.8.3", - "@types/json-schema": "^7.0.5", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "cosmiconfig": "^6.0.0", - "deepmerge": "^4.2.2", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "memfs": "^3.1.2", - "minimatch": "^3.0.4", - "schema-utils": "2.7.0", - "semver": "^7.3.2", - "tapable": "^1.0.0" - }, - "engines": { - "node": ">=10", - "yarn": ">=1.0.0" - }, - "peerDependencies": { - "eslint": ">= 6", - "typescript": ">= 2.7", - "vue-template-compiler": "*", - "webpack": ">= 4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - } - } - }, - "node_modules/fork-ts-checker-webpack-plugin/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/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", - "dependencies": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "dependencies": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" - }, - "engines": { - "node": ">= 12.20" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", - "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" - }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fscreen": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", - "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "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.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "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==", - "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.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" - }, - "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": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/getos": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", - "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", - "dev": true, - "dependencies": { - "async": "^3.2.0" - } - }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - } - }, - "node_modules/github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" - }, - "node_modules/github-slugger": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", - "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "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==", - "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==" - }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "dependencies": { - "ini": "2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dependencies": { - "global-prefix": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "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==", - "engines": { - "node": ">=4" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/got/node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/got/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/got/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "devOptional": true - }, - "node_modules/graphlib": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", - "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", - "optional": true, - "dependencies": { - "lodash": "^4.17.15" - } - }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/gray-matter/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/gray-matter/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==", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "dependencies": { - "duplexer": "^0.1.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hast-to-hyperscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", - "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", - "dependencies": { - "@types/unist": "^2.0.3", - "comma-separated-tokens": "^1.0.0", - "property-information": "^5.3.0", - "space-separated-tokens": "^1.0.0", - "style-to-object": "^0.3.0", - "unist-util-is": "^4.0.0", - "web-namespaces": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", - "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", - "dependencies": { - "@types/parse5": "^5.0.0", - "hastscript": "^6.0.0", - "property-information": "^5.0.0", - "vfile": "^4.0.0", - "vfile-location": "^3.2.0", - "web-namespaces": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-is-element": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", - "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", - "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", - "dependencies": { - "@types/hast": "^2.0.0", - "hast-util-from-parse5": "^6.0.0", - "hast-util-to-parse5": "^6.0.0", - "html-void-elements": "^1.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/hast-util-sanitize": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", - "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", - "dependencies": { - "@types/hast": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-parse5": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", - "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", - "dependencies": { - "hast-to-hyperscript": "^9.0.0", - "property-information": "^5.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-text": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", - "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", - "dependencies": { - "hast-util-is-element": "^1.0.0", - "repeat-string": "^1.0.0", - "unist-util-find-after": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", - "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "bin": { - "he": "bin/he" - } - }, - "node_modules/history": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", - "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", - "dependencies": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^3.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^1.0.1" - } - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "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/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "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/hpack.js/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/hpack.js/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/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-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" - }, - "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/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", - "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/html-minifier-terser/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "engines": { - "node": ">= 12" - } - }, - "node_modules/html-tags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", - "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/html-void-elements": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", - "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/html-webpack-plugin": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/html-webpack-plugin" - }, - "peerDependencies": { - "webpack": "^5.20.0" - } - }, - "node_modules/html-webpack-plugin-4": { - "name": "html-webpack-plugin", - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "dependencies": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - }, - "engines": { - "node": ">=6.9" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/@types/html-minifier-terser": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", - "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", - "dev": true - }, - "node_modules/html-webpack-plugin-4/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "dependencies": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, - "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/terser": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/terser/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/html-webpack-plugin-5": { - "name": "html-webpack-plugin", - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "dev": true, - "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/html-webpack-plugin" - }, - "peerDependencies": { - "webpack": "^5.20.0" - } - }, - "node_modules/htmlparser2": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", - "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "entities": "^4.3.0" - } - }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/http-reasons": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", - "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" - }, - "node_modules/http-signature": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", - "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^2.0.2", - "sshpk": "^1.14.1" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/http2-client": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", - "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" - }, - "node_modules/https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/httpsnippet-lite": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", - "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", - "dependencies": { - "@types/har-format": "^1.2.10", - "formdata-node": "^4.4.1", - "stringify-object": "3.3.0" - }, - "engines": { - "node": ">=14.13" - } - }, - "node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true, - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/husky": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", - "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", - "dev": true, - "bin": { - "husky": "lib/bin.js" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/typicode" - } - }, - "node_modules/hyphenate-style-name": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", - "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" - }, - "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==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "dependencies": { - "postcss": "^7.0.14" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/icss-utils/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/icss-utils/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "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": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/image-size": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", - "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", - "dependencies": { - "queue": "6.0.2" - }, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/immer": { - "version": "9.0.19", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", - "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" - } - }, - "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-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "engines": { - "node": ">=4" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/infima": { - "version": "0.2.0-alpha.42", - "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", - "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==", - "engines": { - "node": ">=12" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "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/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" - }, - "node_modules/inline-style-prefixer": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", - "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", - "dependencies": { - "css-in-js-utils": "^3.1.0", - "fast-loops": "^1.1.3" - } - }, - "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dependencies": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "dependencies": { - "ci-info": "^3.2.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "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==", - "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-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "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-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "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==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isomorphic-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", - "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", - "dependencies": { - "node-fetch": "^2.6.1", - "whatwg-fetch": "^3.4.1" - } - }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/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/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.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", - "dev": true, - "dependencies": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - }, - "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.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "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-changed-files/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/jest-changed-files/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/jest-changed-files/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/jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-circus/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", - "dev": true, - "dependencies": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "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-cli/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "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-config/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-config/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-diff": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", - "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-diff/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/jest-diff/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", - "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.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-each/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-each/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-jsdom/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-node/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-get-type": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", - "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-haste-map/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-haste-map/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-haste-map/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/jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-jasmine2/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-leak-detector/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-matcher-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", - "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils/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/jest-matcher-utils/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", - "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.4.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.4.3", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/node_modules/@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/node_modules/@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/jest-message-util/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/jest-message-util/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.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.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-resolve/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", - "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-runner/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-runner/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/jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-runtime/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-snapshot/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", - "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", - "dependencies": { - "@jest/types": "^29.4.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-util/node_modules/@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "dependencies": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-util/node_modules/@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-validate/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", - "dev": true, - "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-watcher/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-worker": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", - "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", - "dependencies": { - "@types/node": "*", - "jest-util": "^29.4.3", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.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==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/joi": { - "version": "17.8.3", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", - "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", - "dependencies": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" - } - }, - "node_modules/jotai": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", - "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", - "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "@babel/core": "*", - "@babel/template": "*", - "@urql/core": "*", - "immer": "*", - "optics-ts": "*", - "react": ">=16.8", - "react-query": "*", - "valtio": "*", - "wonka": "*", - "xstate": "*" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@babel/template": { - "optional": true - }, - "@urql/core": { - "optional": true - }, - "immer": { - "optional": true - }, - "optics-ts": { - "optional": true - }, - "react-query": { - "optional": true - }, - "valtio": { - "optional": true - }, - "wonka": { - "optional": true - }, - "xstate": { - "optional": true - } - } - }, - "node_modules/js-cookie": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", - "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" - }, - "node_modules/js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", - "devOptional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, - "node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, - "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": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "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.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/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/jsdom/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/jsdom/node_modules/tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsdom/node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jsmin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/jsmin/-/jsmin-1.0.1.tgz", - "integrity": "sha512-OPuL5X/bFKgVdMvEIX3hnpx3jbVpFCrEM8pKPXjFkZUqg521r41ijdyTz7vACOhW6o1neVlcLyd+wkbK5fNHRg==", - "bin": { - "jsmin": "bin/jsmin" - }, - "engines": { - "node": ">=0.1.93" - } - }, - "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" - }, - "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-pointer": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", - "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", - "dependencies": { - "foreach": "^2.0.4" - } - }, - "node_modules/json-promise": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", - "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", - "dependencies": { - "bluebird": "*" - } - }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" - }, - "node_modules/json-schema-compare": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", - "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", - "dependencies": { - "lodash": "^4.17.4" - } - }, - "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==" - }, - "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "devOptional": true - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsprim": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", - "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "node_modules/jxLoader": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jxLoader/-/jxLoader-0.1.1.tgz", - "integrity": "sha512-ClEvAj3K68y8uKhub3RgTmcRPo5DfIWvtxqrKQdDPyZ1UVHIIKvVvjrAsJFSVL5wjv0rt5iH9SMCZ0XRKNzeUA==", - "dependencies": { - "js-yaml": "0.3.x", - "moo-server": "1.3.x", - "promised-io": "*", - "walker": "1.x" - }, - "engines": { - "node": ">v0.4.10" - } - }, - "node_modules/jxLoader/node_modules/js-yaml": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-0.3.7.tgz", - "integrity": "sha512-/7PsVDNP2tVe2Z1cF9kTEkjamIwz4aooDpRKmN1+g/9eePCgcxsv4QDvEbxO0EH+gdDD7MLyDoR6BASo3hH51g==", - "engines": { - "node": "> 0.4.11" - } - }, - "node_modules/katex": { - "version": "0.13.24", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", - "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", - "funding": [ - "https://opencollective.com/katex", - "https://github.com/sponsors/katex" - ], - "dependencies": { - "commander": "^8.0.0" - }, - "bin": { - "katex": "cli.js" - } - }, - "node_modules/katex/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "engines": { - "node": ">= 12" - } - }, - "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dependencies": { - "json-buffer": "3.0.0" - } - }, - "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==", - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/kuler": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", - "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" - }, - "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dependencies": { - "package-json": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lazy-ass": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", - "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", - "dev": true, - "engines": { - "node": "> 0.8" - } - }, - "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==", - "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==", - "devOptional": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", - "engines": { - "node": ">=10" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "node_modules/lint-staged": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", - "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", - "dev": true, - "dependencies": { - "cli-truncate": "^3.1.0", - "colorette": "^2.0.19", - "commander": "^9.4.1", - "debug": "^4.3.4", - "execa": "^6.1.0", - "lilconfig": "2.0.6", - "listr2": "^5.0.5", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-inspect": "^1.12.2", - "pidtree": "^0.6.0", - "string-argv": "^0.3.1", - "yaml": "^2.1.3" - }, - "bin": { - "lint-staged": "bin/lint-staged.js" - }, - "engines": { - "node": "^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/lint-staged" - } - }, - "node_modules/lint-staged/node_modules/cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", - "dev": true, - "dependencies": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || >=14" - } - }, - "node_modules/lint-staged/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/lint-staged/node_modules/execa": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", - "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^3.0.1", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/lint-staged/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/lint-staged/node_modules/human-signals": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", - "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", - "dev": true, - "engines": { - "node": ">=12.20.0" - } - }, - "node_modules/lint-staged/node_modules/is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/listr2": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", - "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", - "dev": true, - "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.19", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.8.0", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": "^14.13.1 || >=16.0.0" - }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" - }, - "peerDependenciesMeta": { - "enquirer": { - "optional": true - } - } - }, - "node_modules/lint-staged/node_modules/listr2/node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/listr2/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/lint-staged/node_modules/listr2/node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lint-staged/node_modules/listr2/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lint-staged/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/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/lint-staged/node_modules/wrap-ansi/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/lint-staged/node_modules/wrap-ansi/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lint-staged/node_modules/yaml": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", - "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, - "node_modules/liquid-json": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", - "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/listr2": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", - "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", - "dev": true, - "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.16", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.5.1", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" - }, - "peerDependenciesMeta": { - "enquirer": { - "optional": true - } - } - }, - "node_modules/listr2/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/listr2/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/listr2/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/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/local-pkg": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", - "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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.curry": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", - "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" - }, - "node_modules/lodash.flow": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", - "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" - }, - "node_modules/lodash.isequalwith": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", - "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" - }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" - }, - "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==", - "devOptional": true - }, - "node_modules/lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", - "dev": true - }, - "node_modules/lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" - }, - "node_modules/lodash.pickby": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", - "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" - }, - "node_modules/lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update/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/log-update/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/log-update/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-update/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/logform": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.5.1.tgz", - "integrity": "sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==", - "dependencies": { - "@colors/colors": "1.5.0", - "@types/triple-beam": "^1.3.2", - "fecha": "^4.2.0", - "ms": "^2.1.1", - "safe-stable-stringify": "^2.3.1", - "triple-beam": "^1.3.0" - } - }, - "node_modules/logform/node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", - "engines": { - "node": ">=10" - } - }, - "node_modules/longest-streak": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", - "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dependencies": { - "tslib": "^2.0.3" - } - }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" - }, - "node_modules/lz-string": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", - "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", - "dev": true, - "bin": { - "lz-string": "bin/bin.js" - } - }, - "node_modules/magic-error": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", - "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==", - "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==", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" - }, - "node_modules/markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "dependencies": { - "repeat-string": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/marked": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", - "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==", - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/match-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", - "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "remove-accents": "0.4.2" - } - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/mdast-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", - "dependencies": { - "unist-util-remove": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-definitions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", - "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-find-and-replace": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", - "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", - "dependencies": { - "escape-string-regexp": "^4.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-from-markdown": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", - "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", - "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-string": "^2.0.0", - "micromark": "~2.11.0", - "parse-entities": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-frontmatter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", - "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", - "dependencies": { - "micromark-extension-frontmatter": "^0.2.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", - "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", - "dependencies": { - "mdast-util-gfm-autolink-literal": "^0.1.0", - "mdast-util-gfm-strikethrough": "^0.2.0", - "mdast-util-gfm-table": "^0.1.0", - "mdast-util-gfm-task-list-item": "^0.1.0", - "mdast-util-to-markdown": "^0.6.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-autolink-literal": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", - "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", - "dependencies": { - "ccount": "^1.0.0", - "mdast-util-find-and-replace": "^1.1.0", - "micromark": "^2.11.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-strikethrough": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", - "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", - "dependencies": { - "mdast-util-to-markdown": "^0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-table": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", - "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", - "dependencies": { - "markdown-table": "^2.0.0", - "mdast-util-to-markdown": "~0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", - "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", - "dependencies": { - "mdast-util-to-markdown": "~0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", - "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "mdast-util-definitions": "^4.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^2.0.0", - "unist-util-generated": "^1.0.0", - "unist-util-position": "^3.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", - "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "longest-streak": "^2.0.0", - "mdast-util-to-string": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" - }, - "node_modules/mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", - "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", - "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, - "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==" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromark": { - "version": "2.11.4", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", - "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "debug": "^4.0.0", - "parse-entities": "^2.0.0" - } - }, - "node_modules/micromark-extension-frontmatter": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", - "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", - "dependencies": { - "fault": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", - "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", - "dependencies": { - "micromark": "~2.11.0", - "micromark-extension-gfm-autolink-literal": "~0.5.0", - "micromark-extension-gfm-strikethrough": "~0.6.5", - "micromark-extension-gfm-table": "~0.4.0", - "micromark-extension-gfm-tagfilter": "~0.3.0", - "micromark-extension-gfm-task-list-item": "~0.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", - "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", - "dependencies": { - "micromark": "~2.11.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", - "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", - "dependencies": { - "micromark": "~2.11.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-table": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", - "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", - "dependencies": { - "micromark": "~2.11.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", - "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", - "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", - "dependencies": { - "micromark": "~2.11.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/microseconds": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", - "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" - }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" - } - }, - "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-format": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", - "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", - "dependencies": { - "charset": "^1.0.0" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", - "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/mini-css-extract-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/mini-css-extract-plugin/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==" - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" - }, - "node_modules/mobx": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", - "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - } - }, - "node_modules/mobx-react": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", - "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", - "dependencies": { - "mobx-react-lite": "^3.4.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - }, - "peerDependencies": { - "mobx": "^6.1.0", - "react": "^16.8.0 || ^17 || ^18" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/mobx-react-lite": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", - "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - }, - "peerDependencies": { - "mobx": "^6.1.0", - "react": "^16.8.0 || ^17 || ^18" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/monaco-editor": { - "version": "0.36.1", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", - "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", - "peer": true - }, - "node_modules/moo-server": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/moo-server/-/moo-server-1.3.0.tgz", - "integrity": "sha512-9A8/eor2DXwpv1+a4pZAAydqLFVrWoKoO1fzdzqLUhYVXAO1Kgd1FR2gFZi7YdHzF0s4W8cDNwCfKJQrvLqxDw==", - "engines": { - "node": ">v0.4.10" - } - }, - "node_modules/mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", - "engines": { - "node": ">=10" - } - }, - "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==" - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, - "node_modules/nano-memoize": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", - "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" - }, - "node_modules/nano-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", - "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", - "dependencies": { - "big-integer": "^1.6.16" - } - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "devOptional": true - }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "engines": { - "node": ">= 0.6" - } - }, - "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==" - }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node_modules/node-abi": { - "version": "3.33.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", - "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", - "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" - }, - "node_modules/node-addon-api": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", - "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" - }, - "node_modules/node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "github", - "url": "https://paypal.me/jimmywarting" - } - ], - "engines": { - "node": ">=10.5.0" - } - }, - "node_modules/node-emoji": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", - "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", - "dependencies": { - "lodash": "^4.17.21" - } - }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-fetch-h2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", - "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", - "dependencies": { - "http2-client": "^1.2.5" - }, - "engines": { - "node": "4.x || >=6.0.0" - } - }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-polyfill-webpack-plugin": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", - "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", - "dependencies": { - "assert": "^2.0.0", - "browserify-zlib": "^0.2.0", - "buffer": "^6.0.3", - "console-browserify": "^1.2.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.12.0", - "domain-browser": "^4.19.0", - "events": "^3.3.0", - "filter-obj": "^2.0.2", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "punycode": "^2.1.1", - "querystring-es3": "^0.2.1", - "readable-stream": "^3.6.0", - "stream-browserify": "^3.0.0", - "stream-http": "^3.2.0", - "string_decoder": "^1.3.0", - "timers-browserify": "^2.0.12", - "tty-browserify": "^0.0.1", - "url": "^0.11.0", - "util": "^0.12.4", - "vm-browserify": "^1.1.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "webpack": ">=5" - } - }, - "node_modules/node-polyfill-webpack-plugin/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "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.2.1" - } - }, - "node_modules/node-readfiles": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", - "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", - "dependencies": { - "es6-promise": "^3.2.1" - } - }, - "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" - }, - "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==", - "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": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nprogress": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", - "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/nwsapi": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", - "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", - "dev": true - }, - "node_modules/oas-kit-common": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", - "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", - "dependencies": { - "fast-safe-stringify": "^2.0.7" - } - }, - "node_modules/oas-linter": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", - "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", - "dependencies": { - "@exodus/schemasafe": "^1.0.0-rc.2", - "should": "^13.2.1", - "yaml": "^1.10.0" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/oas-resolver": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", - "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", - "dependencies": { - "node-fetch-h2": "^2.3.0", - "oas-kit-common": "^1.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "bin": { - "resolve": "resolve.js" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/oas-resolver/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/oas-resolver/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==" - }, - "node_modules/oas-resolver/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/oas-resolver/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==", - "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/oas-resolver/node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/oas-resolver/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "engines": { - "node": ">=12" - } - }, - "node_modules/oas-schema-walker": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", - "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==", - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/oas-validator": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", - "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", - "dependencies": { - "call-me-maybe": "^1.0.1", - "oas-kit-common": "^1.0.8", - "oas-linter": "^3.2.2", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "reftools": "^1.1.9", - "should": "^13.2.1", - "yaml": "^1.10.0" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "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.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", - "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", - "dev": true, - "dependencies": { - "array.prototype.reduce": "^1.0.5", - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/oblivious-set": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", - "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/one-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", - "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", - "dependencies": { - "fn.name": "1.x.x" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/openapi-sampler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", - "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", - "dependencies": { - "@types/json-schema": "^7.0.7", - "json-pointer": "0.6.2" - } - }, - "node_modules/openapi3-ts": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", - "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", - "dependencies": { - "yaml": "^1.10.2" - } - }, - "node_modules/opener": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "bin": { - "opener": "bin/opener-bin.js" - } - }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "devOptional": 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/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" - }, - "node_modules/ospath": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", - "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", - "dev": true - }, - "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "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/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/package-json/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "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/papaparse": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", - "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" - }, - "node_modules/param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "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-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/parse-numeric-range": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" - }, - "node_modules/parse-srcset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", - "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" - }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "dependencies": { - "entities": "^4.4.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "dependencies": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" - }, - "node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "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": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" - }, - "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==", - "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-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dependencies": { - "isarray": "0.0.1" - } - }, - "node_modules/path-to-regexp/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - }, - "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/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/perfect-scrollbar": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", - "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pidtree": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", - "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", - "dev": true, - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "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==", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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/pkg-dir/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==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/polished": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", - "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", - "dependencies": { - "@babel/runtime": "^7.17.8" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", - "dependencies": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" - }, - "peerDependencies": { - "postcss": "^8.2.2" - } - }, - "node_modules/postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-unused": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", - "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-loader": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", - "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", - "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.8" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" - } - }, - "node_modules/postcss-merge-idents": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", - "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", - "dependencies": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", - "dependencies": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", - "dependencies": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", - "dependencies": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-extract-imports/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-extract-imports/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "dependencies": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-local-by-default/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-local-by-default/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-scope/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-scope/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "dependencies": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "node_modules/postcss-modules-values/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-values/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", - "dependencies": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", - "dependencies": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-idents": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", - "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sort-media-queries": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", - "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", - "dependencies": { - "sort-css-media-queries": "2.1.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.4.16" - } - }, - "node_modules/postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", - "dependencies": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, - "node_modules/postcss-zindex": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", - "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postman-collection": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", - "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", - "dependencies": { - "@faker-js/faker": "5.5.3", - "file-type": "3.9.0", - "http-reasons": "0.1.0", - "iconv-lite": "0.6.3", - "liquid-json": "0.3.1", - "lodash": "4.17.21", - "mime-format": "2.0.1", - "mime-types": "2.1.35", - "postman-url-encoder": "3.0.5", - "semver": "7.3.8", - "uuid": "8.3.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/postman-collection/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/postman-url-encoder": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", - "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "dependencies": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=10" - } - }, - "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==", - "devOptional": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/prettier": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", - "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", - "dev": true, - "peer": true, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dev": true, - "dependencies": { - "fast-diff": "^1.1.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==", - "engines": { - "node": "*" - } - }, - "node_modules/pretty-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", - "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, - "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1", - "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/pretty-format/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==", - "dev": true - }, - "node_modules/pretty-time": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", - "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/prism-react-renderer": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", - "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", - "peerDependencies": { - "react": ">=0.14.9" - } - }, - "node_modules/prismjs": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", - "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", - "engines": { - "node": ">=6" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "engines": { - "node": ">= 0.6.0" - } - }, - "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/promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dependencies": { - "asap": "~2.0.3" - } - }, - "node_modules/promised-io": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/promised-io/-/promised-io-0.3.6.tgz", - "integrity": "sha512-bNwZusuNIW4m0SPR8jooSyndD35ggirHlxVl/UhIaZD/F0OBv9ebfc6tNmbpZts3QXHggkjIBH8lvtnzhtcz0A==" - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "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/property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "dependencies": { - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", - "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", - "dev": true - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dependencies": { - "escape-goat": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pure-color": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", - "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" - }, - "node_modules/qs": { - "version": "6.10.4", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", - "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/query-string": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", - "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", - "dependencies": { - "decode-uri-component": "^0.4.1", - "filter-obj": "^5.1.0", - "split-on-first": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/query-string/node_modules/filter-obj": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", - "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, - "node_modules/queue": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", - "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", - "dependencies": { - "inherits": "~2.0.3" - } - }, - "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==", - "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==", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-body/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", - "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/raw-loader/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==", - "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/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "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/react-base16-styling": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", - "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", - "dependencies": { - "base16": "^1.0.0", - "lodash.curry": "^4.0.1", - "lodash.flow": "^3.3.0", - "pure-color": "^1.2.0" - } - }, - "node_modules/react-dev-utils": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", - "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", - "dependencies": { - "@babel/code-frame": "^7.16.0", - "address": "^1.1.2", - "browserslist": "^4.18.1", - "chalk": "^4.1.2", - "cross-spawn": "^7.0.3", - "detect-port-alt": "^1.1.6", - "escape-string-regexp": "^4.0.0", - "filesize": "^8.0.6", - "find-up": "^5.0.0", - "fork-ts-checker-webpack-plugin": "^6.5.0", - "global-modules": "^2.0.0", - "globby": "^11.0.4", - "gzip-size": "^6.0.0", - "immer": "^9.0.7", - "is-root": "^2.1.0", - "loader-utils": "^3.2.0", - "open": "^8.4.0", - "pkg-up": "^3.1.0", - "prompts": "^2.4.2", - "react-error-overlay": "^6.0.11", - "recursive-readdir": "^2.2.2", - "shell-quote": "^1.7.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/react-dev-utils/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/node_modules/loader-utils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", - "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/react-dev-utils/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/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==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/react-dev-utils/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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-error-overlay": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", - "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" - }, - "node_modules/react-fast-compare": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", - "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" - }, - "node_modules/react-flow-renderer": { - "version": "10.3.17", - "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", - "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", - "deprecated": "react-flow-renderer has been renamed to reactflow, please use this package from now on https://reactflow.dev/docs/guides/migrate-to-v11/", - "optional": true, - "dependencies": { - "@babel/runtime": "^7.18.9", - "@types/d3": "^7.4.0", - "@types/resize-observer-browser": "^0.1.7", - "classcat": "^5.0.3", - "d3-drag": "^3.0.0", - "d3-selection": "^3.0.0", - "d3-zoom": "^3.0.0", - "zustand": "^3.7.2" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "react": "16 || 17 || 18", - "react-dom": "16 || 17 || 18" - } - }, - "node_modules/react-full-screen": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", - "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", - "dependencies": { - "fscreen": "^1.0.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">= 16.8.0" - } - }, - "node_modules/react-helmet-async": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", - "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "invariant": "^2.2.4", - "prop-types": "^15.7.2", - "react-fast-compare": "^3.2.0", - "shallowequal": "^1.1.0" - }, - "peerDependencies": { - "react": "^16.6.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.6.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" - }, - "node_modules/react-json-view": { - "version": "1.21.3", - "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", - "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", - "dependencies": { - "flux": "^4.0.1", - "react-base16-styling": "^0.6.0", - "react-lifecycles-compat": "^3.0.4", - "react-textarea-autosize": "^8.3.2" - }, - "peerDependencies": { - "react": "^17.0.0 || ^16.3.0 || ^15.5.4", - "react-dom": "^17.0.0 || ^16.3.0 || ^15.5.4" - } - }, - "node_modules/react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" - }, - "node_modules/react-loadable": { - "name": "@docusaurus/react-loadable", - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": "*" - } - }, - "node_modules/react-loadable-ssr-addon-v5-slorber": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", - "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", - "dependencies": { - "@babel/runtime": "^7.10.3" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "react-loadable": "*", - "webpack": ">=4.41.1 || 5.x" - } - }, - "node_modules/react-overflow-list": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", - "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", - "dependencies": { - "react-use": "^17.3.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">=16" - } - }, - "node_modules/react-overflow-list/node_modules/react-use": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", - "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", - "dependencies": { - "@types/js-cookie": "^2.2.6", - "@xobotyi/scrollbar-width": "^1.9.5", - "copy-to-clipboard": "^3.3.1", - "fast-deep-equal": "^3.1.3", - "fast-shallow-equal": "^1.0.0", - "js-cookie": "^2.2.1", - "nano-css": "^5.3.1", - "react-universal-interface": "^0.6.2", - "resize-observer-polyfill": "^1.5.1", - "screenfull": "^5.1.0", - "set-harmonic-interval": "^1.0.1", - "throttle-debounce": "^3.0.1", - "ts-easing": "^0.2.0", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-overflow-list/node_modules/react-use/node_modules/nano-css": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", - "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", - "dependencies": { - "css-tree": "^1.1.2", - "csstype": "^3.0.6", - "fastest-stable-stringify": "^2.0.2", - "inline-style-prefixer": "^6.0.0", - "rtl-css-js": "^1.14.0", - "sourcemap-codec": "^1.4.8", - "stacktrace-js": "^2.0.2", - "stylis": "^4.0.6" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/react-query": { - "version": "3.39.3", - "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", - "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", - "dependencies": { - "@babel/runtime": "^7.5.5", - "broadcast-channel": "^3.4.1", - "match-sorter": "^6.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/react-router": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", - "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", - "dependencies": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "hoist-non-react-statics": "^3.1.0", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.7.0", - "prop-types": "^15.6.2", - "react-is": "^16.6.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - }, - "peerDependencies": { - "react": ">=15" - } - }, - "node_modules/react-router-config": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", - "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", - "dependencies": { - "@babel/runtime": "^7.1.2" - }, - "peerDependencies": { - "react": ">=15", - "react-router": ">=5" - } - }, - "node_modules/react-router-dom": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", - "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", - "dependencies": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.2", - "react-router": "5.3.4", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - }, - "peerDependencies": { - "react": ">=15" - } - }, - "node_modules/react-router-hash-link": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", - "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", - "dependencies": { - "prop-types": "^15.7.2" - }, - "peerDependencies": { - "react": ">=15", - "react-router-dom": ">=4" - } - }, - "node_modules/react-router/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/react-tabs": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", - "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", - "dependencies": { - "clsx": "^1.1.0", - "prop-types": "^15.5.0" - }, - "peerDependencies": { - "react": "^16.3.0 || ^17.0.0-0" - } - }, - "node_modules/react-textarea-autosize": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", - "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", - "dependencies": { - "@babel/runtime": "^7.20.13", - "use-composed-ref": "^1.3.0", - "use-latest": "^1.2.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-tooltip": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", - "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", - "dependencies": { - "prop-types": "^15.8.1", - "uuid": "^7.0.3" - }, - "engines": { - "npm": ">=6.13" - }, - "peerDependencies": { - "react": ">=16.0.0", - "react-dom": ">=16.0.0" - } - }, - "node_modules/react-tooltip/node_modules/uuid": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", - "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/react-universal-interface": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", - "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", - "peerDependencies": { - "react": "*", - "tslib": "*" - } - }, - "node_modules/react-waypoint": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", - "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "consolidated-events": "^1.1.0 || ^2.0.0", - "prop-types": "^15.0.0", - "react-is": "^17.0.1 || ^18.0.0" - }, - "peerDependencies": { - "react": "^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/readable-stream": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", - "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reading-time": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", - "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" - }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/recursive-readdir": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", - "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", - "dependencies": { - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/redoc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", - "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", - "dependencies": { - "@redocly/openapi-core": "^1.0.0-beta.104", - "classnames": "^2.3.1", - "decko": "^1.2.0", - "dompurify": "^2.2.8", - "eventemitter3": "^4.0.7", - "json-pointer": "^0.6.2", - "lunr": "^2.3.9", - "mark.js": "^8.11.1", - "marked": "^4.0.15", - "mobx-react": "^7.2.0", - "openapi-sampler": "^1.3.0", - "path-browserify": "^1.0.1", - "perfect-scrollbar": "^1.5.5", - "polished": "^4.1.3", - "prismjs": "^1.27.0", - "prop-types": "^15.7.2", - "react-tabs": "^3.2.2", - "slugify": "~1.4.7", - "stickyfill": "^1.1.1", - "style-loader": "^3.3.1", - "swagger2openapi": "^7.0.6", - "url-template": "^2.0.8" - }, - "engines": { - "node": ">=6.9", - "npm": ">=3.0.0" - }, - "peerDependencies": { - "core-js": "^3.1.4", - "mobx": "^6.0.4", - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0", - "styled-components": "^4.1.1 || ^5.1.1" - } - }, - "node_modules/redoc/node_modules/slugify": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", - "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/redoc/node_modules/style-loader": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", - "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/reftools": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", - "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==", - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "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==" - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "node_modules/regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - }, - "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==", - "devOptional": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/regexpu-core": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", - "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", - "dependencies": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "dependencies": { - "rc": "1.2.8" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dependencies": { - "rc": "^1.2.8" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "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": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/rehype-katex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", - "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", - "dependencies": { - "@types/katex": "^0.11.0", - "hast-util-to-text": "^2.0.0", - "katex": "^0.13.0", - "rehype-parse": "^7.0.0", - "unified": "^9.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-parse": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", - "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", - "dependencies": { - "hast-util-from-parse5": "^6.0.0", - "parse5": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-parse/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/remark-emoji": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", - "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", - "dependencies": { - "emoticon": "^3.2.0", - "node-emoji": "^1.10.0", - "unist-util-visit": "^2.0.3" - } - }, - "node_modules/remark-footnotes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", - "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-frontmatter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", - "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", - "dependencies": { - "mdast-util-frontmatter": "^0.2.0", - "micromark-extension-frontmatter": "^0.2.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-gfm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", - "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", - "dependencies": { - "mdast-util-gfm": "^0.1.0", - "micromark-extension-gfm": "^0.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-math": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", - "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", - "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", - "dependencies": { - "@babel/core": "7.12.9", - "@babel/helper-plugin-utils": "7.10.4", - "@babel/plugin-proposal-object-rest-spread": "7.12.1", - "@babel/plugin-syntax-jsx": "7.12.1", - "@mdx-js/util": "1.6.22", - "is-alphabetical": "1.0.4", - "remark-parse": "8.0.3", - "unified": "9.2.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx/node_modules/@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/remark-mdx/node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", - "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.12.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/remark-mdx/node_modules/@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/remark-mdx/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/remark-mdx/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/remark-mdx/node_modules/unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "dependencies": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", - "dependencies": { - "mdast-squeeze-paragraphs": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-stringify": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", - "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", - "dependencies": { - "mdast-util-to-markdown": "^0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remove-accents": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", - "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" - }, - "node_modules/renderkid": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", - "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", - "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^6.0.1" - } - }, - "node_modules/renderkid/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/renderkid/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/request-progress": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", - "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", - "dev": true, - "dependencies": { - "throttleit": "^1.0.0" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-like": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", - "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==", - "engines": { - "node": "*" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, - "node_modules/resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" - }, - "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "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-cwd/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/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/resolve-pathname": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", - "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" - }, - "node_modules/resolve.exports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", - "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dependencies": { - "lowercase-keys": "^1.0.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/rtl-css-js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", - "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", - "dependencies": { - "@babel/runtime": "^7.1.2" - } - }, - "node_modules/rtl-detect": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", - "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" - }, - "node_modules/rtlcss": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", - "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", - "dependencies": { - "find-up": "^5.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.3.11", - "strip-json-comments": "^3.1.1" - }, - "bin": { - "rtlcss": "bin/rtlcss.js" - } - }, - "node_modules/rtlcss/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/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==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/rtlcss/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "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/rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "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/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-stable-stringify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", - "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" - }, - "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/sanitize-html": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", - "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", - "dependencies": { - "deepmerge": "^4.2.2", - "escape-string-regexp": "^4.0.0", - "htmlparser2": "^8.0.0", - "is-plain-object": "^5.0.0", - "parse-srcset": "^1.0.2", - "postcss": "^8.3.11" - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "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==", - "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/screenfull": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", - "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==", - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" - }, - "node_modules/selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", - "dependencies": { - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dependencies": { - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/semver-diff/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/semver/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==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/send/node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-handler": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", - "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", - "dependencies": { - "bytes": "3.0.0", - "content-disposition": "0.5.2", - "fast-url-parser": "1.1.3", - "mime-types": "2.1.18", - "minimatch": "3.1.2", - "path-is-inside": "1.0.2", - "path-to-regexp": "2.2.1", - "range-parser": "1.2.0" - } - }, - "node_modules/serve-handler/node_modules/mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "dependencies": { - "mime-db": "~1.33.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/path-to-regexp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", - "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" - }, - "node_modules/serve-index/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-harmonic-interval": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", - "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==", - "engines": { - "node": ">=6.9" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "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==", - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" - }, - "node_modules/sharp": { - "version": "0.30.7", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", - "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", - "hasInstallScript": true, - "dependencies": { - "color": "^4.2.3", - "detect-libc": "^2.0.1", - "node-addon-api": "^5.0.0", - "prebuild-install": "^7.1.1", - "semver": "^7.3.7", - "simple-get": "^4.0.1", - "tar-fs": "^2.1.1", - "tunnel-agent": "^0.6.0" - }, - "engines": { - "node": ">=12.13.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/sharp/node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, - "engines": { - "node": ">=12.5.0" - } - }, - "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==", - "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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/shell-quote": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", - "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/should": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", - "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", - "dependencies": { - "should-equal": "^2.0.0", - "should-format": "^3.0.3", - "should-type": "^1.4.0", - "should-type-adaptors": "^1.0.1", - "should-util": "^1.0.0" - } - }, - "node_modules/should-equal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", - "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", - "dependencies": { - "should-type": "^1.4.0" - } - }, - "node_modules/should-format": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", - "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", - "dependencies": { - "should-type": "^1.3.0", - "should-type-adaptors": "^1.0.1" - } - }, - "node_modules/should-type": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", - "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" - }, - "node_modules/should-type-adaptors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", - "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", - "dependencies": { - "should-type": "^1.3.0", - "should-util": "^1.0.0" - } - }, - "node_modules/should-util": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", - "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" - }, - "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==", - "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.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "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/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "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": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/simple-html-tokenizer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", - "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", - "dev": true - }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" - }, - "node_modules/sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", - "dependencies": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" - }, - "node_modules/sitemap": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", - "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", - "dependencies": { - "@types/node": "^17.0.5", - "@types/sax": "^1.2.1", - "arg": "^5.0.0", - "sax": "^1.2.4" - }, - "bin": { - "sitemap": "dist/cli.js" - }, - "engines": { - "node": ">=12.0.0", - "npm": ">=5.6.0" - } - }, - "node_modules/sitemap/node_modules/@types/node": { - "version": "17.0.45", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", - "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/slugify": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", - "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/sort-css-media-queries": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", - "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==", - "engines": { - "node": ">= 6.3.0" - } - }, - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "deprecated": "Please use @jridgewell/sourcemap-codec instead" - }, - "node_modules/space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/speed-measure-webpack-plugin": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", - "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "peerDependencies": { - "webpack": "^1 || ^2 || ^3 || ^4 || ^5" - } - }, - "node_modules/split-on-first": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", - "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" - }, - "node_modules/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ssr-window": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", - "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" - }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" - }, - "node_modules/stack-generator": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", - "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", - "dependencies": { - "stackframe": "^1.3.4" - } - }, - "node_modules/stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", - "engines": { - "node": "*" - } - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "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/stackframe": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" - }, - "node_modules/stacktrace-gps": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", - "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", - "dependencies": { - "source-map": "0.5.6", - "stackframe": "^1.3.4" - } - }, - "node_modules/stacktrace-gps/node_modules/source-map": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stacktrace-js": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", - "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", - "dependencies": { - "error-stack-parser": "^2.0.6", - "stack-generator": "^2.0.5", - "stacktrace-gps": "^3.0.4" - } - }, - "node_modules/state-local": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", - "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" - }, - "node_modules/state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/std-env": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", - "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" - }, - "node_modules/stickyfill": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", - "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" - }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "dependencies": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "node_modules/stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string-argv": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", - "dev": true, - "engines": { - "node": ">=0.6.19" - } - }, - "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": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/stringify-object": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", - "dependencies": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "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-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", - "dependencies": { - "inline-style-parser": "0.1.1" - } - }, - "node_modules/styled-components": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", - "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", - "dependencies": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/traverse": "^7.4.5", - "@emotion/is-prop-valid": "^0.8.8", - "@emotion/stylis": "^0.8.4", - "@emotion/unitless": "^0.7.4", - "babel-plugin-styled-components": ">= 1.12.0", - "css-to-react-native": "^3.0.0", - "hoist-non-react-statics": "^3.0.0", - "shallowequal": "^1.1.0", - "supports-color": "^5.5.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/styled-components" - }, - "peerDependencies": { - "react": ">= 16.8.0", - "react-dom": ">= 16.8.0", - "react-is": ">= 16.8.0" - } - }, - "node_modules/styled-components/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/styled-components/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/stylehacks": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" - }, - "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==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-inline-loader": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", - "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", - "dev": true, - "dependencies": { - "loader-utils": "^1.1.0", - "object-assign": "^4.0.1", - "simple-html-tokenizer": "^0.1.1" - } - }, - "node_modules/svg-inline-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/svg-inline-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/svg-parser": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", - "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" - }, - "node_modules/svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/svgo/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==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/svgo/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/svgo/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/svgo/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/swagger2openapi": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", - "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", - "dependencies": { - "call-me-maybe": "^1.0.1", - "node-fetch": "^2.6.1", - "node-fetch-h2": "^2.3.0", - "node-readfiles": "^0.2.0", - "oas-kit-common": "^1.0.8", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "oas-validator": "^5.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "bin": { - "boast": "boast.js", - "oas-validate": "oas-validate.js", - "swagger2openapi": "swagger2openapi.js" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/swagger2openapi/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/swagger2openapi/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==" - }, - "node_modules/swagger2openapi/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/swagger2openapi/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==", - "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/swagger2openapi/node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/swagger2openapi/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "engines": { - "node": ">=12" - } - }, - "node_modules/swiper": { - "version": "8.4.7", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", - "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", - "funding": [ - { - "type": "patreon", - "url": "https://www.patreon.com/swiperjs" - }, - { - "type": "open_collective", - "url": "http://opencollective.com/swiper" - } - ], - "hasInstallScript": true, - "dependencies": { - "dom7": "^4.0.4", - "ssr-window": "^4.0.2" - }, - "engines": { - "node": ">= 4.7.0" - } - }, - "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/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "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.16.5", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", - "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "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==", - "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/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/terser/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==" - }, - "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-hex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", - "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" - }, - "node_modules/throat": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", - "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", - "dev": true - }, - "node_modules/throttle-debounce": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", - "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==", - "engines": { - "node": ">=10" - } - }, - "node_modules/throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" - }, - "node_modules/timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "dependencies": { - "setimmediate": "^1.0.4" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/timespan": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", - "integrity": "sha512-0Jq9+58T2wbOyLth0EU+AUb6JMGCLaTWIykJFa7hyAybjVH9gpVMTfUAwo5fWAvtFt2Tjh/Elg8JtgNpnMnM8g==", - "engines": { - "node": ">= 0.2.0" - } - }, - "node_modules/tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" - }, - "node_modules/tiny-warning": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" - }, - "node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" - }, - "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "engines": { - "node": ">=4" - } - }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "engines": { - "node": ">=6" - } - }, - "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==", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "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/trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==", - "deprecated": "Use String.prototype.trim() instead" - }, - "node_modules/trim-trailing-lines": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", - "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/triple-beam": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", - "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/ts-easing": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", - "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" - }, - "node_modules/ts-keycode-enum": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", - "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" - }, - "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "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==", - "devOptional": 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": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", - "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/uglify-js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz", - "integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ==", - "bin": { - "uglifyjs": "bin/uglifyjs" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "dependencies": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "engines": { - "node": ">=4" - } - }, - "node_modules/unified": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", - "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/unist-builder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", - "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-find-after": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", - "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", - "dependencies": { - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-generated": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", - "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-is": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", - "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", - "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", - "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", - "dependencies": { - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-select": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", - "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", - "dependencies": { - "@types/unist": "^2.0.0", - "css-selector-parser": "^1.0.0", - "nth-check": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-select/node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "dependencies": { - "@types/unist": "^2.0.2" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/unload": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", - "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "detect-node": "^2.0.4" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/yeoman/update-notifier?sponsor=1" - } - }, - "node_modules/update-notifier/node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/update-notifier/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" - }, - "node_modules/update-notifier/node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/update-notifier/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==" - }, - "node_modules/update-notifier/node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/update-notifier/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/update-notifier/node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/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==", - "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/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/urijs": { - "version": "1.19.11", - "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", - "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" - }, - "node_modules/url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, - "node_modules/url-loader": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", - "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", - "dependencies": { - "loader-utils": "^2.0.0", - "mime-types": "^2.1.27", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "file-loader": "*", - "webpack": "^4.0.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "file-loader": { - "optional": true - } - } - }, - "node_modules/url-loader/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==", - "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/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/url-template": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", - "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" - }, - "node_modules/url/node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" - }, - "node_modules/use-composed-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", - "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/use-isomorphic-layout-effect": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", - "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-latest": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", - "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", - "dependencies": { - "use-isomorphic-layout-effect": "^1.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "node_modules/utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" - }, - "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/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "engines": { - "node": ">= 0.4.0" - } - }, - "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-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", - "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.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/validate.io-array": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", - "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" - }, - "node_modules/validate.io-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", - "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" - }, - "node_modules/validate.io-integer": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", - "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", - "dependencies": { - "validate.io-number": "^1.0.3" - } - }, - "node_modules/validate.io-integer-array": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", - "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", - "dependencies": { - "validate.io-array": "^1.0.3", - "validate.io-integer": "^1.0.4" - } - }, - "node_modules/validate.io-number": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", - "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" - }, - "node_modules/value-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", - "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-location": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", - "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" - }, - "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==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", - "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/wait-on": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", - "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", - "dependencies": { - "axios": "^0.25.0", - "joi": "^17.6.0", - "lodash": "^4.17.21", - "minimist": "^1.2.5", - "rxjs": "^7.5.4" - }, - "bin": { - "wait-on": "bin/wait-on" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/wait-on/node_modules/axios": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", - "dependencies": { - "follow-redirects": "^1.14.7" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/web-namespaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", - "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", - "engines": { - "node": ">= 14" - } - }, - "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.75.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", - "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "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-bundle-analyzer": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", - "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", - "dependencies": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "gzip-size": "^6.0.0", - "lodash": "^4.17.20", - "opener": "^1.5.2", - "sirv": "^1.0.7", - "ws": "^7.3.1" - }, - "bin": { - "webpack-bundle-analyzer": "lib/bin/analyzer.js" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/webpack-bundle-analyzer/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==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/webpack-dev-middleware/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-middleware/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==" - }, - "node_modules/webpack-dev-middleware/node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", - "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/webpack-dev-server/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-server/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==" - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", - "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "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==", - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "engines": { - "node": ">=10.13.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==", - "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/webpackbar": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", - "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", - "dependencies": { - "chalk": "^4.1.0", - "consola": "^2.15.3", - "pretty-time": "^1.1.0", - "std-env": "^3.0.1" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "webpack": "3 || 4 || 5" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "engines": { - "node": ">=0.8.0" - } - }, - "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-fetch": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", - "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" - }, - "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/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "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==", - "dev": true, - "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-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/widest-line": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", - "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", - "dependencies": { - "string-width": "^5.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" - }, - "node_modules/winston": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.10.0.tgz", - "integrity": "sha512-nT6SIDaE9B7ZRO0u3UvdrimG0HkB7dSTAgInQnNR2SOPJ4bvq5q79+pXLftKmP52lJGW15+H5MCK0nM9D3KB/g==", - "dependencies": { - "@colors/colors": "1.5.0", - "@dabh/diagnostics": "^2.0.2", - "async": "^3.2.3", - "is-stream": "^2.0.0", - "logform": "^2.4.0", - "one-time": "^1.0.0", - "readable-stream": "^3.4.0", - "safe-stable-stringify": "^2.3.1", - "stack-trace": "0.0.x", - "triple-beam": "^1.3.0", - "winston-transport": "^4.5.0" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/winston-transport": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz", - "integrity": "sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==", - "dependencies": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", - "triple-beam": "^1.3.0" - }, - "engines": { - "node": ">= 6.4.0" - } - }, - "node_modules/winston/node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", - "engines": { - "node": ">=10" - } - }, - "node_modules/wolfy87-eventemitter": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", - "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" - }, - "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==", - "devOptional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/wrench": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/wrench/-/wrench-1.3.9.tgz", - "integrity": "sha512-srTJQmLTP5YtW+F5zDuqjMEZqLLr/eJOZfDI5ibfPfRMeDh3oBUefAscuH0q5wBKE339ptH/S/0D18ZkfOfmKQ==", - "deprecated": "wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.", - "engines": { - "node": ">=0.1.97" - } - }, - "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==", - "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.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "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/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/xml-formatter": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", - "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", - "dependencies": { - "xml-parser-xo": "^3.2.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/xml-js": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", - "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", - "dependencies": { - "sax": "^1.2.4" - }, - "bin": { - "xml-js": "bin/cli.js" - } - }, - "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/xml-parser-xo": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", - "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==", - "engines": { - "node": ">= 10" - } - }, - "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/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "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/yaml-ast-parser": { - "version": "0.0.43", - "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", - "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" - }, - "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/yargs/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/yargs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zustand": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", - "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", - "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "react": ">=16.8" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - } - } - }, - "node_modules/zwitch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", - "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - } - }, - "dependencies": { - "@adobe/css-tools": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", - "dev": true - }, - "@algolia/autocomplete-core": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", - "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", - "requires": { - "@algolia/autocomplete-shared": "1.7.4" - } - }, - "@algolia/autocomplete-preset-algolia": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", - "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", - "requires": { - "@algolia/autocomplete-shared": "1.7.4" - } - }, - "@algolia/autocomplete-shared": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", - "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" - }, - "@algolia/cache-browser-local-storage": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", - "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", - "requires": { - "@algolia/cache-common": "4.16.0" - } - }, - "@algolia/cache-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", - "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" - }, - "@algolia/cache-in-memory": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", - "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", - "requires": { - "@algolia/cache-common": "4.16.0" - } - }, - "@algolia/client-account": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", - "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-analytics": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", - "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", - "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", - "requires": { - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-personalization": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", - "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-search": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", - "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/events": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", - "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" - }, - "@algolia/logger-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", - "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" - }, - "@algolia/logger-console": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", - "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", - "requires": { - "@algolia/logger-common": "4.16.0" - } - }, - "@algolia/requester-browser-xhr": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", - "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", - "requires": { - "@algolia/requester-common": "4.16.0" - } - }, - "@algolia/requester-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", - "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" - }, - "@algolia/requester-node-http": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", - "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", - "requires": { - "@algolia/requester-common": "4.16.0" - } - }, - "@algolia/transporter": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", - "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", - "requires": { - "@algolia/cache-common": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/requester-common": "4.16.0" - } - }, - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", - "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==" - }, - "@babel/core": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", - "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.0", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.21.0", - "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.0", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/generator": { - "version": "7.21.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", - "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", - "requires": { - "@babel/types": "^7.21.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", - "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", - "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", - "requires": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", - "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", - "requires": { - "@babel/types": "^7.21.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" - } - }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "requires": { - "@babel/types": "^7.20.2" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "requires": { - "@babel/types": "^7.20.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" - }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" - }, - "@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==" - }, - "@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "requires": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - } - }, - "@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", - "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "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.21.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", - "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==" - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", - "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", - "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", - "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@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==", - "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==", - "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==", - "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==", - "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==", - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.19.0" - } - }, - "@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==", - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", - "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", - "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.19.0" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/template": "^7.20.7" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", - "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", - "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "requires": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", - "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", - "requires": { - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", - "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-react-constant-elements": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", - "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-react-display-name": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", - "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-react-jsx": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", - "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.21.0" - } - }, - "@babel/plugin-transform-react-jsx-development": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", - "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", - "requires": { - "@babel/plugin-transform-react-jsx": "^7.18.6" - } - }, - "@babel/plugin-transform-react-pure-annotations": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", - "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "regenerator-transform": "^0.15.1" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", - "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", - "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-typescript": "^7.20.0" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/preset-env": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", - "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", - "requires": { - "@babel/compat-data": "^7.20.1", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-async-generator-functions": "^7.20.1", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.2", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.20.2", - "@babel/plugin-transform-classes": "^7.20.2", - "@babel/plugin-transform-computed-properties": "^7.18.9", - "@babel/plugin-transform-destructuring": "^7.20.2", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.8", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.19.6", - "@babel/plugin-transform-modules-commonjs": "^7.19.6", - "@babel/plugin-transform-modules-systemjs": "^7.19.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.20.1", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.19.0", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "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.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", - "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-react-display-name": "^7.18.6", - "@babel/plugin-transform-react-jsx": "^7.18.6", - "@babel/plugin-transform-react-jsx-development": "^7.18.6", - "@babel/plugin-transform-react-pure-annotations": "^7.18.6" - } - }, - "@babel/preset-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", - "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.21.0", - "@babel/plugin-transform-typescript": "^7.21.0" - } - }, - "@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" - }, - "@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", - "requires": { - "regenerator-runtime": "^0.13.11" - } - }, - "@babel/runtime-corejs3": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", - "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", - "requires": { - "core-js-pure": "^3.25.1", - "regenerator-runtime": "^0.13.11" - } - }, - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - }, - "@babel/traverse": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", - "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.2", - "@babel/types": "^7.21.2", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", - "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", - "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "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 - }, - "@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==" - }, - "@cypress/react": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", - "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", - "dev": true, - "requires": {} - }, - "@cypress/request": { - "version": "2.88.11", - "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", - "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "http-signature": "~1.3.6", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "performance-now": "^2.1.0", - "qs": "~6.10.3", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^8.3.2" - }, - "dependencies": { - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - } - } - }, - "@cypress/webpack-dev-server": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", - "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", - "dev": true, - "requires": { - "find-up": "6.3.0", - "fs-extra": "9.1.0", - "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", - "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", - "local-pkg": "0.4.1", - "speed-measure-webpack-plugin": "1.4.2", - "tslib": "^2.3.1", - "webpack-dev-server": "^4.7.4", - "webpack-merge": "^5.4.0" - } - }, - "@cypress/xvfb": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", - "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "lodash.once": "^4.1.1" - }, - "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" - } - } - } - }, - "@dabh/diagnostics": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", - "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", - "requires": { - "colorspace": "1.1.x", - "enabled": "2.0.x", - "kuler": "^2.0.0" - } - }, - "@dbt-labs/react-dbt-dag": { - "version": "0.8.7", - "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", - "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", - "optional": true, - "requires": { - "classnames": "^2.3.1", - "dagre": "^0.8.5", - "graphlib": "^2.1.8", - "lodash": "^4.17.21", - "react-flow-renderer": "^10.3.8" - } - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==" - }, - "@docsearch/css": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", - "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" - }, - "@docsearch/react": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", - "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", - "requires": { - "@algolia/autocomplete-core": "1.7.4", - "@algolia/autocomplete-preset-algolia": "1.7.4", - "@docsearch/css": "3.3.3", - "algoliasearch": "^4.0.0" - } - }, - "@docusaurus/core": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", - "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", - "requires": { - "@babel/core": "^7.18.6", - "@babel/generator": "^7.18.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-runtime": "^7.18.6", - "@babel/preset-env": "^7.18.6", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@babel/runtime": "^7.18.6", - "@babel/runtime-corejs3": "^7.18.6", - "@babel/traverse": "^7.18.8", - "@docusaurus/cssnano-preset": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@slorber/static-site-generator-webpack-plugin": "^4.0.7", - "@svgr/webpack": "^6.2.1", - "autoprefixer": "^10.4.7", - "babel-loader": "^8.2.5", - "babel-plugin-dynamic-import-node": "^2.3.3", - "boxen": "^6.2.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "clean-css": "^5.3.0", - "cli-table3": "^0.6.2", - "combine-promises": "^1.1.0", - "commander": "^5.1.0", - "copy-webpack-plugin": "^11.0.0", - "core-js": "^3.23.3", - "css-loader": "^6.7.1", - "css-minimizer-webpack-plugin": "^4.0.0", - "cssnano": "^5.1.12", - "del": "^6.1.1", - "detect-port": "^1.3.0", - "escape-html": "^1.0.3", - "eta": "^2.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "html-minifier-terser": "^6.1.0", - "html-tags": "^3.2.0", - "html-webpack-plugin": "^5.5.0", - "import-fresh": "^3.3.0", - "leven": "^3.1.0", - "lodash": "^4.17.21", - "mini-css-extract-plugin": "^2.6.1", - "postcss": "^8.4.14", - "postcss-loader": "^7.0.0", - "prompts": "^2.4.2", - "react-dev-utils": "^12.0.1", - "react-helmet-async": "^1.3.0", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", - "react-loadable-ssr-addon-v5-slorber": "^1.0.1", - "react-router": "^5.3.3", - "react-router-config": "^5.1.1", - "react-router-dom": "^5.3.3", - "rtl-detect": "^1.0.4", - "semver": "^7.3.7", - "serve-handler": "^6.1.3", - "shelljs": "^0.8.5", - "terser-webpack-plugin": "^5.3.3", - "tslib": "^2.4.0", - "update-notifier": "^5.1.0", - "url-loader": "^4.1.1", - "wait-on": "^6.0.1", - "webpack": "^5.73.0", - "webpack-bundle-analyzer": "^4.5.0", - "webpack-dev-server": "^4.9.3", - "webpack-merge": "^5.8.0", - "webpackbar": "^5.0.2" - }, - "dependencies": { - "css-loader": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", - "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" - } - }, - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "requires": {} - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "requires": { - "icss-utils": "^5.0.0" - } - } - } - }, - "@docusaurus/cssnano-preset": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", - "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", - "requires": { - "cssnano-preset-advanced": "^5.3.8", - "postcss": "^8.4.14", - "postcss-sort-media-queries": "^4.2.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/eslint-plugin": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", - "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", - "dev": true, - "requires": { - "@typescript-eslint/utils": "^5.30.5", - "tslib": "^2.4.0" - } - }, - "@docusaurus/logger": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", - "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", - "requires": { - "chalk": "^4.1.2", - "tslib": "^2.4.0" - } - }, - "@docusaurus/lqip-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", - "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", - "requires": { - "@docusaurus/logger": "2.3.1", - "file-loader": "^6.2.0", - "lodash": "^4.17.21", - "sharp": "^0.30.7", - "tslib": "^2.4.0" - } - }, - "@docusaurus/mdx-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", - "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", - "requires": { - "@babel/parser": "^7.18.8", - "@babel/traverse": "^7.18.8", - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@mdx-js/mdx": "^1.6.22", - "escape-html": "^1.0.3", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "image-size": "^1.0.1", - "mdast-util-to-string": "^2.0.0", - "remark-emoji": "^2.2.0", - "stringify-object": "^3.3.0", - "tslib": "^2.4.0", - "unified": "^9.2.2", - "unist-util-visit": "^2.0.3", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/module-type-aliases": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", - "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", - "requires": { - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/types": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "@types/react-router-dom": "*", - "react-helmet-async": "*", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" - } - }, - "@docusaurus/plugin-content-blog": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", - "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "cheerio": "^1.0.0-rc.12", - "feed": "^4.2.2", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "reading-time": "^1.5.0", - "tslib": "^2.4.0", - "unist-util-visit": "^2.0.3", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-content-docs": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", - "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@types/react-router-config": "^5.0.6", - "combine-promises": "^1.1.0", - "fs-extra": "^10.1.0", - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-content-pages": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", - "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-debug": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", - "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "fs-extra": "^10.1.0", - "react-json-view": "^1.21.3", - "tslib": "^2.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-google-analytics": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", - "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/plugin-google-gtag": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", - "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/plugin-google-tag-manager": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", - "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/plugin-ideal-image": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", - "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/lqip-loader": "2.3.1", - "@docusaurus/responsive-loader": "^1.7.0", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@endiliey/react-ideal-image": "^0.0.11", - "react-waypoint": "^10.3.0", - "sharp": "^0.30.7", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - } - }, - "@docusaurus/plugin-sitemap": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", - "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "sitemap": "^7.1.1", - "tslib": "^2.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/preset-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", - "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/plugin-debug": "2.3.1", - "@docusaurus/plugin-google-analytics": "2.3.1", - "@docusaurus/plugin-google-gtag": "2.3.1", - "@docusaurus/plugin-google-tag-manager": "2.3.1", - "@docusaurus/plugin-sitemap": "2.3.1", - "@docusaurus/theme-classic": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-search-algolia": "2.3.1", - "@docusaurus/types": "2.3.1" - } - }, - "@docusaurus/react-loadable": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "requires": { - "@types/react": "*", - "prop-types": "^15.6.2" - } - }, - "@docusaurus/responsive-loader": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", - "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", - "requires": { - "loader-utils": "^2.0.0" - } - }, - "@docusaurus/theme-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", - "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@mdx-js/react": "^1.6.22", - "clsx": "^1.2.1", - "copy-text-to-clipboard": "^3.0.1", - "infima": "0.2.0-alpha.42", - "lodash": "^4.17.21", - "nprogress": "^0.2.0", - "postcss": "^8.4.14", - "prism-react-renderer": "^1.3.5", - "prismjs": "^1.28.0", - "react-router-dom": "^5.3.3", - "rtlcss": "^3.5.0", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - } - }, - "@docusaurus/theme-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", - "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", - "requires": { - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "clsx": "^1.2.1", - "parse-numeric-range": "^1.3.0", - "prism-react-renderer": "^1.3.5", - "tslib": "^2.4.0", - "use-sync-external-store": "^1.2.0", - "utility-types": "^3.10.0" - } - }, - "@docusaurus/theme-search-algolia": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", - "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", - "requires": { - "@docsearch/react": "^3.1.1", - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "algoliasearch": "^4.13.1", - "algoliasearch-helper": "^3.10.0", - "clsx": "^1.2.1", - "eta": "^2.0.0", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/theme-translations": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", - "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", - "requires": { - "fs-extra": "^10.1.0", - "tslib": "^2.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/types": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", - "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*", - "commander": "^5.1.0", - "joi": "^17.6.0", - "react-helmet-async": "^1.3.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0", - "webpack-merge": "^5.8.0" - } - }, - "@docusaurus/utils": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", - "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", - "requires": { - "@docusaurus/logger": "2.3.1", - "@svgr/webpack": "^6.2.1", - "escape-string-regexp": "^4.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "github-slugger": "^1.4.0", - "globby": "^11.1.0", - "gray-matter": "^4.0.3", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "micromatch": "^4.0.5", - "resolve-pathname": "^3.0.0", - "shelljs": "^0.8.5", - "tslib": "^2.4.0", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/utils-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", - "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", - "requires": { - "tslib": "^2.4.0" - } - }, - "@docusaurus/utils-validation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", - "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", - "requires": { - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "joi": "^17.6.0", - "js-yaml": "^4.1.0", - "tslib": "^2.4.0" - } - }, - "@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==", - "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==" - }, - "@emotion/stylis": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", - "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" - }, - "@emotion/unitless": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", - "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" - }, - "@endiliey/react-ideal-image": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", - "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", - "requires": {} - }, - "@eslint/eslintrc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", - "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", - "devOptional": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": 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==", - "devOptional": true - } - } - }, - "@eslint/js": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", - "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", - "devOptional": true - }, - "@exodus/schemasafe": { - "version": "1.0.0-rc.10", - "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", - "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" - }, - "@faker-js/faker": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", - "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" - }, - "@fortawesome/fontawesome-common-types": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", - "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==" - }, - "@fortawesome/fontawesome-svg-core": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", - "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.4.0" - } - }, - "@fortawesome/react-fontawesome": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", - "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", - "requires": { - "prop-types": "^15.8.1" - } - }, - "@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" - }, - "@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "devOptional": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "devOptional": true - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "devOptional": 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" - }, - "dependencies": { - "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" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "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" - } - }, - "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" - } - }, - "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" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "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" - } - }, - "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 - }, - "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 - } - } - }, - "@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.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/create-cache-key-function": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", - "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1" - } - }, - "@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", - "dev": true, - "requires": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - } - }, - "@jest/expect-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", - "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", - "dev": true, - "requires": { - "jest-get-type": "^29.4.3" - } - }, - "@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - } - } - }, - "@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } - }, - "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" - } - } - } - }, - "@jest/schemas": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", - "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", - "requires": { - "@sinclair/typebox": "^0.25.16" - } - }, - "@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - } - }, - "@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - } - }, - "@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "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" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "@jsdevtools/ono": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", - "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" - }, - "@juggle/resize-observer": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", - "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" - }, - "@mdx-js/mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", - "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", - "requires": { - "@babel/core": "7.12.9", - "@babel/plugin-syntax-jsx": "7.12.1", - "@babel/plugin-syntax-object-rest-spread": "7.8.3", - "@mdx-js/util": "1.6.22", - "babel-plugin-apply-mdx-type-prop": "1.6.22", - "babel-plugin-extract-import-names": "1.6.22", - "camelcase-css": "2.0.1", - "detab": "2.0.4", - "hast-util-raw": "6.0.1", - "lodash.uniq": "4.5.0", - "mdast-util-to-hast": "10.0.1", - "remark-footnotes": "2.0.0", - "remark-mdx": "1.6.22", - "remark-parse": "8.0.3", - "remark-squeeze-paragraphs": "4.0.0", - "style-to-object": "0.3.0", - "unified": "9.2.0", - "unist-builder": "2.0.3", - "unist-util-visit": "2.0.3" - }, - "dependencies": { - "@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" - }, - "unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - } - } - }, - "@mdx-js/react": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", - "requires": {} - }, - "@mdx-js/util": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", - "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==" - }, - "@monaco-editor/loader": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", - "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", - "requires": { - "state-local": "^1.0.6" - } - }, - "@monaco-editor/react": { - "version": "4.4.6", - "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", - "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", - "requires": { - "@monaco-editor/loader": "^1.3.2", - "prop-types": "^15.7.2" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" - }, - "@react-hook/debounce": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", - "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", - "requires": { - "@react-hook/latest": "^1.0.2" - } - }, - "@react-hook/event": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", - "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", - "requires": {} - }, - "@react-hook/latest": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", - "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", - "requires": {} - }, - "@react-hook/passive-layout-effect": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", - "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", - "requires": {} - }, - "@react-hook/resize-observer": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", - "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", - "requires": { - "@juggle/resize-observer": "^3.3.1", - "@react-hook/latest": "^1.0.2", - "@react-hook/passive-layout-effect": "^1.2.0" - } - }, - "@react-hook/size": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", - "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", - "requires": { - "@react-hook/passive-layout-effect": "^1.2.0", - "@react-hook/resize-observer": "^1.2.1" - } - }, - "@react-hook/throttle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", - "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", - "requires": { - "@react-hook/latest": "^1.0.2" - } - }, - "@react-hook/window-size": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", - "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", - "requires": { - "@react-hook/debounce": "^3.0.0", - "@react-hook/event": "^1.2.1", - "@react-hook/throttle": "^2.2.0" - } - }, - "@react-types/button": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", - "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", - "requires": { - "@react-types/shared": "^3.8.0" - } - }, - "@react-types/checkbox": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", - "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", - "requires": { - "@react-types/shared": "^3.18.1" - }, - "dependencies": { - "@react-types/shared": { - "version": "3.18.1", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", - "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", - "requires": {} - } - } - }, - "@react-types/radio": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", - "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", - "requires": { - "@react-types/shared": "^3.8.0" - } - }, - "@react-types/shared": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", - "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", - "requires": {} - }, - "@react-types/switch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", - "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", - "requires": { - "@react-types/checkbox": "^3.2.3", - "@react-types/shared": "^3.8.0" - } - }, - "@react-types/textfield": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", - "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", - "requires": { - "@react-types/shared": "^3.9.0" - } - }, - "@redocly/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "dependencies": { - "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==" - } - } - }, - "@redocly/openapi-core": { - "version": "1.0.0-beta.123", - "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", - "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", - "requires": { - "@redocly/ajv": "^8.11.0", - "@types/node": "^14.11.8", - "colorette": "^1.2.0", - "js-levenshtein": "^1.1.6", - "js-yaml": "^4.1.0", - "lodash.isequal": "^4.5.0", - "minimatch": "^5.0.1", - "node-fetch": "^2.6.1", - "pluralize": "^8.0.0", - "yaml-ast-parser": "0.0.43" - }, - "dependencies": { - "@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" - }, - "minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "@rehooks/component-size": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", - "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", - "requires": {} - }, - "@sentry/browser": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", - "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", - "requires": { - "@sentry/core": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/core": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", - "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", - "requires": { - "@sentry/hub": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/hub": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", - "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", - "requires": { - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/minimal": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", - "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", - "requires": { - "@sentry/hub": "6.19.7", - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/react": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", - "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", - "requires": { - "@sentry/browser": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "hoist-non-react-statics": "^3.3.2", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/types": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", - "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==" - }, - "@sentry/utils": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", - "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", - "requires": { - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" - }, - "@sideway/pinpoint": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" - }, - "@sinclair/typebox": { - "version": "0.25.24", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", - "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" - }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" - }, - "@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@slorber/static-site-generator-webpack-plugin": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", - "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", - "requires": { - "eval": "^0.1.8", - "p-map": "^4.0.0", - "webpack-sources": "^3.2.2" - } - }, - "@stoplight/elements": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", - "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", - "requires": { - "@stoplight/elements-core": "~7.7.17", - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "file-saver": "^2.0.5", - "lodash": "^4.17.19", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0" - } - }, - "@stoplight/elements-core": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", - "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", - "requires": { - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-ref-parser": "^9.0.5", - "@stoplight/json-schema-sampler": "0.2.3", - "@stoplight/json-schema-viewer": "^4.9.0", - "@stoplight/markdown-viewer": "^5.6.0", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/mosaic-code-editor": "^1.33.0", - "@stoplight/mosaic-code-viewer": "^1.33.0", - "@stoplight/path": "^1.3.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "httpsnippet-lite": "^3.0.1", - "jotai": "1.3.9", - "json-schema": "^0.4.0", - "lodash": "^4.17.19", - "nanoid": "^3.1.32", - "prop-types": "^15.7.2", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0", - "react-router-hash-link": "^2.1.0", - "tslib": "^2.1.0", - "urijs": "^1.19.11", - "util": "^0.12.4", - "xml-formatter": "^2.6.1" - } - }, - "@stoplight/http-spec": { - "version": "5.9.4", - "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", - "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", - "requires": { - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-generator": "1.0.2", - "@stoplight/types": "^13.15.0", - "@types/json-schema": "7.0.11", - "@types/swagger-schema-official": "~2.0.22", - "@types/type-is": "^1.6.3", - "fnv-plus": "^1.3.1", - "lodash.isequalwith": "^4.4.0", - "lodash.pick": "^4.4.0", - "lodash.pickby": "^4.6.0", - "openapi3-ts": "^2.0.2", - "postman-collection": "^4.1.2", - "tslib": "^2.3.1", - "type-is": "^1.6.18" - } - }, - "@stoplight/json": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", - "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", - "requires": { - "@stoplight/ordered-object-literal": "^1.0.3", - "@stoplight/path": "^1.3.2", - "@stoplight/types": "^13.6.0", - "jsonc-parser": "~2.2.1", - "lodash": "^4.17.21", - "safe-stable-stringify": "^1.1" - }, - "dependencies": { - "jsonc-parser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", - "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" - } - } - }, - "@stoplight/json-schema-generator": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", - "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", - "requires": { - "cross-fetch": "^3.1.5", - "json-promise": "1.1.x", - "minimist": "1.2.6", - "mkdirp": "0.5.x", - "pretty-data": "0.40.x" - }, - "dependencies": { - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - } - } - }, - "@stoplight/json-schema-merge-allof": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", - "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", - "requires": { - "compute-lcm": "^1.1.0", - "json-schema-compare": "^0.2.2", - "lodash": "^4.17.4" - } - }, - "@stoplight/json-schema-ref-parser": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", - "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", - "requires": { - "@jsdevtools/ono": "^7.1.3", - "@stoplight/path": "^1.3.2", - "@stoplight/yaml": "^4.0.2", - "call-me-maybe": "^1.0.1", - "fastestsmallesttextencoderdecoder": "^1.0.22", - "isomorphic-fetch": "^3.0.0", - "node-abort-controller": "^3.0.1" - } - }, - "@stoplight/json-schema-sampler": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", - "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", - "requires": { - "@types/json-schema": "^7.0.7", - "json-pointer": "^0.6.1" - } - }, - "@stoplight/json-schema-tree": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", - "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", - "requires": { - "@stoplight/json": "^3.12.0", - "@stoplight/json-schema-merge-allof": "^0.7.8", - "@stoplight/lifecycle": "^2.3.2", - "@types/json-schema": "^7.0.7", - "magic-error": "0.0.1" - } - }, - "@stoplight/json-schema-viewer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", - "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", - "requires": { - "@stoplight/json": "^3.20.1", - "@stoplight/json-schema-tree": "^2.2.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@types/json-schema": "^7.0.7", - "classnames": "^2.2.6", - "fnv-plus": "^1.3.1", - "jotai": "^1.4.5", - "lodash": "^4.17.19" - }, - "dependencies": { - "jotai": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", - "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", - "requires": {} - } - } - }, - "@stoplight/lifecycle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", - "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", - "requires": { - "tslib": "^2.3.1", - "wolfy87-eventemitter": "~5.2.8" - } - }, - "@stoplight/markdown": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", - "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", - "requires": { - "@stoplight/types": "^12.3.0", - "@stoplight/yaml": "^4.2.2", - "github-slugger": "^1.3.0", - "hast-util-whitespace": "^2.0.0", - "lodash": "^4.17.21", - "mdast-util-to-string": "^3.1.0", - "remark-frontmatter": "^3.0.0", - "remark-gfm": "^1.0.0", - "remark-parse": "^9.0.0", - "remark-stringify": "^9.0.1", - "tslib": "^2.3.0", - "unified": "^9.2.1", - "unist-util-select": "^4.0.0", - "unist-util-visit": "^3.1.0" - }, - "dependencies": { - "@stoplight/types": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", - "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", - "requires": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - } - }, - "mdast-util-to-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", - "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", - "requires": { - "@types/mdast": "^3.0.0" - } - }, - "remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "requires": { - "mdast-util-from-markdown": "^0.8.0" - } - }, - "unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - } - }, - "unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - } - } - }, - "@stoplight/markdown-viewer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", - "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", - "requires": { - "@rehooks/component-size": "^1.0.3", - "@stoplight/markdown": "^3.1.3", - "@stoplight/react-error-boundary": "^2.0.0", - "deepmerge": "^4.2.2", - "hast-to-hyperscript": "^10.0.1", - "hast-util-raw": "7.0.0", - "hast-util-sanitize": "^4.0.0", - "hastscript": "^7.0.2", - "mdast-util-to-hast": "^11.1.1", - "remark-parse": "^9.0.0", - "unified": "^9.2.1", - "unist-builder": "^3.0.0", - "unist-util-select": "^4.0.1", - "unist-util-visit": "^3.1.0" - }, - "dependencies": { - "@types/parse5": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", - "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" - }, - "comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==" - }, - "hast-to-hyperscript": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", - "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", - "requires": { - "@types/unist": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-object": "^0.4.1", - "web-namespaces": "^2.0.0" - } - }, - "hast-util-from-parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", - "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", - "requires": { - "@types/hast": "^2.0.0", - "@types/unist": "^2.0.0", - "hastscript": "^7.0.0", - "property-information": "^6.0.0", - "vfile": "^5.0.0", - "vfile-location": "^4.0.0", - "web-namespaces": "^2.0.0" - }, - "dependencies": { - "vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "requires": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - } - } - } - }, - "hast-util-parse-selector": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", - "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", - "requires": { - "@types/hast": "^2.0.0" - } - }, - "hast-util-raw": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", - "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", - "requires": { - "@types/hast": "^2.0.0", - "@types/parse5": "^6.0.0", - "@types/unist": "^2.0.3", - "hast-util-from-parse5": "^7.0.0", - "hast-util-to-parse5": "^7.0.0", - "html-void-elements": "^2.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - } - }, - "hast-util-to-parse5": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", - "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - } - }, - "hastscript": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", - "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^3.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0" - } - }, - "html-void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", - "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==" - }, - "mdast-util-definitions": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", - "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", - "requires": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" - }, - "dependencies": { - "unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - } - }, - "unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - } - } - }, - "mdast-util-to-hast": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", - "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", - "requires": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "@types/mdurl": "^1.0.0", - "mdast-util-definitions": "^5.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^3.0.0", - "unist-util-generated": "^2.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^4.0.0" - }, - "dependencies": { - "unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - } - }, - "unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - } - } - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "property-information": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", - "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==" - }, - "remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "requires": { - "mdast-util-from-markdown": "^0.8.0" - } - }, - "space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==" - }, - "style-to-object": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", - "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", - "requires": { - "inline-style-parser": "0.1.1" - } - }, - "unist-builder": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", - "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-generated": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", - "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==" - }, - "unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-position": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", - "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-stringify-position": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", - "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - } - }, - "unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - }, - "vfile-location": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", - "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", - "requires": { - "@types/unist": "^2.0.0", - "vfile": "^5.0.0" - }, - "dependencies": { - "vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "requires": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - } - } - } - }, - "vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - } - }, - "web-namespaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", - "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==" - }, - "zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" - } - } - }, - "@stoplight/mosaic": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", - "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", - "requires": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/button": "3.4.1", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@react-types/textfield": "3.3.0", - "@stoplight/types": "^13.7.0", - "@types/react": "^17.0.3", - "@types/react-dom": "^17.0.3", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "dependencies": { - "use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "requires": { - "@juggle/resize-observer": "^3.3.1" - } - } - } - }, - "@stoplight/mosaic-code-editor": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", - "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", - "requires": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/mosaic-code-viewer": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "dependencies": { - "use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "requires": { - "@juggle/resize-observer": "^3.3.1" - } - } - } - }, - "@stoplight/mosaic-code-viewer": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", - "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", - "requires": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "dependencies": { - "use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "requires": { - "@juggle/resize-observer": "^3.3.1" - } - } - } - }, - "@stoplight/ordered-object-literal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", - "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==" - }, - "@stoplight/path": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", - "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==" - }, - "@stoplight/react-error-boundary": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", - "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", - "requires": { - "@sentry/react": "^6.13.2" - } - }, - "@stoplight/types": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", - "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", - "requires": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - } - }, - "@stoplight/yaml": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", - "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", - "requires": { - "@stoplight/ordered-object-literal": "^1.0.1", - "@stoplight/types": "^13.0.0", - "@stoplight/yaml-ast-parser": "0.0.48", - "tslib": "^2.2.0" - } - }, - "@stoplight/yaml-ast-parser": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", - "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" - }, - "@svgr/babel-plugin-add-jsx-attribute": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", - "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", - "requires": {} - }, - "@svgr/babel-plugin-remove-jsx-attribute": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", - "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", - "requires": {} - }, - "@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", - "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", - "requires": {} - }, - "@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", - "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", - "requires": {} - }, - "@svgr/babel-plugin-svg-dynamic-title": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", - "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", - "requires": {} - }, - "@svgr/babel-plugin-svg-em-dimensions": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", - "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", - "requires": {} - }, - "@svgr/babel-plugin-transform-react-native-svg": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", - "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", - "requires": {} - }, - "@svgr/babel-plugin-transform-svg-component": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", - "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", - "requires": {} - }, - "@svgr/babel-preset": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", - "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", - "requires": { - "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", - "@svgr/babel-plugin-remove-jsx-attribute": "*", - "@svgr/babel-plugin-remove-jsx-empty-expression": "*", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", - "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", - "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", - "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", - "@svgr/babel-plugin-transform-svg-component": "^6.5.1" - } - }, - "@svgr/core": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", - "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", - "requires": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.1" - } - }, - "@svgr/hast-util-to-babel-ast": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", - "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", - "requires": { - "@babel/types": "^7.20.0", - "entities": "^4.4.0" - } - }, - "@svgr/plugin-jsx": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", - "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", - "requires": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/hast-util-to-babel-ast": "^6.5.1", - "svg-parser": "^2.0.4" - } - }, - "@svgr/plugin-svgo": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", - "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", - "requires": { - "cosmiconfig": "^7.0.1", - "deepmerge": "^4.2.2", - "svgo": "^2.8.0" - } - }, - "@svgr/webpack": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", - "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", - "requires": { - "@babel/core": "^7.19.6", - "@babel/plugin-transform-react-constant-elements": "^7.18.12", - "@babel/preset-env": "^7.19.4", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@svgr/core": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "@svgr/plugin-svgo": "^6.5.1" - } - }, - "@swc/core": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", - "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", - "dev": true, - "requires": { - "@swc/core-darwin-arm64": "1.3.37", - "@swc/core-darwin-x64": "1.3.37", - "@swc/core-linux-arm-gnueabihf": "1.3.37", - "@swc/core-linux-arm64-gnu": "1.3.37", - "@swc/core-linux-arm64-musl": "1.3.37", - "@swc/core-linux-x64-gnu": "1.3.37", - "@swc/core-linux-x64-musl": "1.3.37", - "@swc/core-win32-arm64-msvc": "1.3.37", - "@swc/core-win32-ia32-msvc": "1.3.37", - "@swc/core-win32-x64-msvc": "1.3.37" - } - }, - "@swc/core-darwin-arm64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", - "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", - "dev": true, - "optional": true - }, - "@swc/core-darwin-x64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", - "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", - "dev": true, - "optional": true - }, - "@swc/core-linux-arm-gnueabihf": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", - "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", - "dev": true, - "optional": true - }, - "@swc/core-linux-arm64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", - "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", - "dev": true, - "optional": true - }, - "@swc/core-linux-arm64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", - "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", - "dev": true, - "optional": true - }, - "@swc/core-linux-x64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", - "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", - "dev": true, - "optional": true - }, - "@swc/core-linux-x64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", - "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", - "dev": true, - "optional": true - }, - "@swc/core-win32-arm64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", - "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", - "dev": true, - "optional": true - }, - "@swc/core-win32-ia32-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", - "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", - "dev": true, - "optional": true - }, - "@swc/core-win32-x64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", - "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", - "dev": true, - "optional": true - }, - "@swc/jest": { - "version": "0.2.24", - "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", - "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", - "dev": true, - "requires": { - "@jest/create-cache-key-function": "^27.4.2", - "jsonc-parser": "^3.2.0" - } - }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "requires": { - "defer-to-connect": "^1.0.1" - } - }, - "@testing-library/dom": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", - "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - } - }, - "@testing-library/jest-dom": { - "version": "5.16.5", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", - "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", - "dev": true, - "requires": { - "@adobe/css-tools": "^4.0.1", - "@babel/runtime": "^7.9.2", - "@types/testing-library__jest-dom": "^5.9.1", - "aria-query": "^5.0.0", - "chalk": "^3.0.0", - "css.escape": "^1.5.1", - "dom-accessibility-api": "^0.5.6", - "lodash": "^4.17.15", - "redent": "^3.0.0" - }, - "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" - } - } - } - }, - "@testing-library/react": { - "version": "12.1.5", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", - "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^8.0.0", - "@types/react-dom": "<18.0.0" - }, - "dependencies": { - "@testing-library/dom": { - "version": "8.20.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", - "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - } - } - } - }, - "@testing-library/user-event": { - "version": "13.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", - "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "@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 - }, - "@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==" - }, - "@types/aria-query": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", - "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", - "dev": true - }, - "@types/babel__core": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", - "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", - "dev": true, - "requires": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", - "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.18.3", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", - "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", - "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "requires": { - "@types/node": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/d3": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", - "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", - "optional": true, - "requires": { - "@types/d3-array": "*", - "@types/d3-axis": "*", - "@types/d3-brush": "*", - "@types/d3-chord": "*", - "@types/d3-color": "*", - "@types/d3-contour": "*", - "@types/d3-delaunay": "*", - "@types/d3-dispatch": "*", - "@types/d3-drag": "*", - "@types/d3-dsv": "*", - "@types/d3-ease": "*", - "@types/d3-fetch": "*", - "@types/d3-force": "*", - "@types/d3-format": "*", - "@types/d3-geo": "*", - "@types/d3-hierarchy": "*", - "@types/d3-interpolate": "*", - "@types/d3-path": "*", - "@types/d3-polygon": "*", - "@types/d3-quadtree": "*", - "@types/d3-random": "*", - "@types/d3-scale": "*", - "@types/d3-scale-chromatic": "*", - "@types/d3-selection": "*", - "@types/d3-shape": "*", - "@types/d3-time": "*", - "@types/d3-time-format": "*", - "@types/d3-timer": "*", - "@types/d3-transition": "*", - "@types/d3-zoom": "*" - } - }, - "@types/d3-array": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", - "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", - "optional": true - }, - "@types/d3-axis": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", - "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-brush": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", - "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-chord": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", - "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", - "optional": true - }, - "@types/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", - "optional": true - }, - "@types/d3-contour": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", - "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", - "optional": true, - "requires": { - "@types/d3-array": "*", - "@types/geojson": "*" - } - }, - "@types/d3-delaunay": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", - "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", - "optional": true - }, - "@types/d3-dispatch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", - "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", - "optional": true - }, - "@types/d3-drag": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", - "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", - "optional": true - }, - "@types/d3-ease": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", - "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", - "optional": true - }, - "@types/d3-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", - "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", - "optional": true, - "requires": { - "@types/d3-dsv": "*" - } - }, - "@types/d3-force": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", - "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", - "optional": true - }, - "@types/d3-format": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", - "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", - "optional": true - }, - "@types/d3-geo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", - "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", - "optional": true, - "requires": { - "@types/geojson": "*" - } - }, - "@types/d3-hierarchy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", - "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", - "optional": true - }, - "@types/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", - "optional": true, - "requires": { - "@types/d3-color": "*" - } - }, - "@types/d3-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", - "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", - "optional": true - }, - "@types/d3-polygon": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", - "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", - "optional": true - }, - "@types/d3-quadtree": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", - "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", - "optional": true - }, - "@types/d3-random": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", - "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", - "optional": true - }, - "@types/d3-scale": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", - "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", - "optional": true, - "requires": { - "@types/d3-time": "*" - } - }, - "@types/d3-scale-chromatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", - "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", - "optional": true - }, - "@types/d3-selection": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", - "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", - "optional": true - }, - "@types/d3-shape": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", - "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", - "optional": true, - "requires": { - "@types/d3-path": "*" - } - }, - "@types/d3-time": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", - "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", - "optional": true - }, - "@types/d3-time-format": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", - "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", - "optional": true - }, - "@types/d3-timer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", - "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", - "optional": true - }, - "@types/d3-transition": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", - "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-zoom": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", - "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", - "optional": true, - "requires": { - "@types/d3-interpolate": "*", - "@types/d3-selection": "*" - } - }, - "@types/eslint": { - "version": "8.21.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", - "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" - }, - "@types/express": { - "version": "4.17.17", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", - "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.33", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", - "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/geojson": { - "version": "7946.0.10", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", - "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", - "optional": true - }, - "@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/har-format": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", - "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" - }, - "@types/hast": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", - "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", - "requires": { - "@types/unist": "*" - } - }, - "@types/history": { - "version": "4.7.11", - "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", - "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" - }, - "@types/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" - }, - "@types/http-proxy": { - "version": "1.17.10", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", - "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", - "requires": { - "@types/node": "*" - } - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" - }, - "@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==", - "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==", - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "@types/jest": { - "version": "29.4.0", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", - "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", - "dev": true, - "requires": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "@types/js-cookie": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", - "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" - }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" - }, - "@types/katex": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", - "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" - }, - "@types/mdast": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", - "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", - "requires": { - "@types/unist": "*" - } - }, - "@types/mdurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", - "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" - }, - "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" - }, - "@types/node": { - "version": "18.14.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", - "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" - }, - "@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/parse5": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", - "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" - }, - "@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", - "dev": true - }, - "@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "@types/react": { - "version": "17.0.53", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", - "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", - "requires": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "@types/react-dom": { - "version": "17.0.19", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", - "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", - "requires": { - "@types/react": "^17" - } - }, - "@types/react-router": { - "version": "5.1.20", - "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", - "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*" - } - }, - "@types/react-router-config": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", - "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "@types/react-router-dom": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", - "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "@types/resize-observer-browser": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", - "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", - "optional": true - }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" - }, - "@types/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", - "requires": { - "@types/node": "*" - } - }, - "@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/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sinonjs__fake-timers": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", - "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", - "dev": true - }, - "@types/sizzle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", - "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", - "dev": true - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "requires": { - "@types/node": "*" - } - }, - "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, - "@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/swagger-schema-official": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", - "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" - }, - "@types/tapable": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", - "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", - "dev": true - }, - "@types/testing-library__jest-dom": { - "version": "5.14.5", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", - "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", - "dev": true, - "requires": { - "@types/jest": "*" - } - }, - "@types/triple-beam": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", - "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" - }, - "@types/type-is": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", - "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", - "requires": { - "@types/node": "*" - } - }, - "@types/uglify-js": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", - "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - } - }, - "@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" - }, - "@types/webpack": { - "version": "4.41.33", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", - "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - } - }, - "@types/webpack-sources": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", - "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - } - } - }, - "@types/ws": { - "version": "8.5.4", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", - "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", - "requires": { - "@types/node": "*" - } - }, - "@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" - }, - "@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", - "dev": true, - "optional": true, - "requires": { - "@types/node": "*" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", - "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/type-utils": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/parser": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", - "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", - "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0" - } - }, - "@typescript-eslint/type-utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", - "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/types": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", - "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", - "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", - "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", - "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.54.0", - "eslint-visitor-keys": "^3.3.0" - } - }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "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==" - }, - "@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==" - }, - "@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==" - }, - "@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==", - "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==" - }, - "@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==", - "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==", - "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==", - "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==" - }, - "@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==", - "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==", - "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==", - "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==", - "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==", - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@xobotyi/scrollbar-width": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", - "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" - }, - "@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==" - }, - "abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" - }, - "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" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } - } - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "requires": {} - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "devOptional": true, - "requires": {} - }, - "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 - }, - "address": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==" - }, - "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" - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "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-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "requires": { - "ajv": "^8.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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==" - } - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "requires": {} - }, - "algoliasearch": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", - "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", - "requires": { - "@algolia/cache-browser-local-storage": "4.16.0", - "@algolia/cache-common": "4.16.0", - "@algolia/cache-in-memory": "4.16.0", - "@algolia/client-account": "4.16.0", - "@algolia/client-analytics": "4.16.0", - "@algolia/client-common": "4.16.0", - "@algolia/client-personalization": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/logger-console": "4.16.0", - "@algolia/requester-browser-xhr": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/requester-node-http": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "algoliasearch-helper": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", - "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", - "requires": { - "@algolia/events": "^4.0.1" - } - }, - "ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "requires": { - "string-width": "^4.1.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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "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" - }, - "dependencies": { - "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 - } - } - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==" - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "dev": true - }, - "arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "requires": { - "deep-equal": "^2.0.5" - } - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" - }, - "array.prototype.reduce": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", - "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - } - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "requires": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "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 - }, - "async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" - }, - "autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", - "requires": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true - }, - "aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "requires": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - } - }, - "babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", - "dev": true, - "requires": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - } - }, - "babel-loader": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - } - }, - "babel-plugin-apply-mdx-type-prop": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", - "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", - "requires": { - "@babel/helper-plugin-utils": "7.10.4", - "@mdx-js/util": "1.6.22" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - } - } - }, - "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==", - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-extract-import-names": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", - "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", - "requires": { - "@babel/helper-plugin-utils": "7.10.4" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - } - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "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": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", - "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-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - } - }, - "babel-plugin-styled-components": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", - "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.16.0", - "@babel/helper-module-imports": "^7.16.0", - "babel-plugin-syntax-jsx": "^6.18.0", - "lodash": "^4.17.11", - "picomatch": "^2.3.0" - } - }, - "babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" - }, - "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.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" - } - }, - "bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==" - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "base16": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", - "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==" - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "blob-util": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", - "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", - "dev": true - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" - }, - "body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "requires": { - "side-channel": "^1.0.4" - } - } - } - }, - "bonjour-service": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", - "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" - }, - "boxen": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", - "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", - "requires": { - "ansi-align": "^3.0.1", - "camelcase": "^6.2.0", - "chalk": "^4.1.2", - "cli-boxes": "^3.0.0", - "string-width": "^5.0.1", - "type-fest": "^2.5.0", - "widest-line": "^4.0.1", - "wrap-ansi": "^8.0.1" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "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==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "broadcast-channel": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", - "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", - "requires": { - "@babel/runtime": "^7.7.2", - "detect-node": "^2.1.0", - "js-sha3": "0.8.0", - "microseconds": "0.2.0", - "nano-time": "1.0.0", - "oblivious-set": "1.0.0", - "rimraf": "3.0.2", - "unload": "2.2.0" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" - }, - "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 - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "requires": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - } - }, - "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-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" - }, - "build": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/build/-/build-0.1.4.tgz", - "integrity": "sha512-KwbDJ/zrsU8KZRRMfoURG14cKIAStUlS8D5jBDvtrZbwO5FEkYqc3oB8HIhRiyD64A48w1lc+sOmQ+mmBw5U/Q==", - "requires": { - "cssmin": "0.3.x", - "jsmin": "1.x", - "jxLoader": "*", - "moo-server": "*", - "promised-io": "*", - "timespan": "2.x", - "uglify-js": "1.x", - "walker": "1.x", - "winston": "*", - "wrench": "1.3.x" - } - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" - }, - "cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "dependencies": { - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" - }, - "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" - } - } - }, - "cachedir": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", - "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", - "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" - } - }, - "call-me-maybe": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", - "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" - }, - "camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "requires": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" - }, - "camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" - }, - "camelize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", - "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==" - }, - "caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "requires": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "caniuse-lite": { - "version": "1.0.30001470", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", - "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==" - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "ccount": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", - "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==" - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "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 - }, - "character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" - }, - "character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==" - }, - "character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" - }, - "charset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", - "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==" - }, - "check-more-types": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", - "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", - "dev": true - }, - "cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "requires": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - } - }, - "cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "requires": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "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==" - }, - "ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==" - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "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 - }, - "classcat": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", - "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", - "optional": true - }, - "classnames": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", - "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" - }, - "clean-css": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", - "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", - "requires": { - "source-map": "~0.6.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" - }, - "cli-boxes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", - "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==" - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-table3": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", - "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", - "requires": { - "@colors/colors": "1.5.0", - "string-width": "^4.2.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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "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" - }, - "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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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" - } - } - } - }, - "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==", - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "dependencies": { - "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==", - "requires": { - "isobject": "^3.0.1" - } - } - } - }, - "clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "requires": { - "mimic-response": "^1.0.0" - }, - "dependencies": { - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - } - } - }, - "clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==" - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true - }, - "collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==" - }, - "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": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "requires": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" - }, - "dependencies": { - "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - } - } - }, - "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==", - "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==" - }, - "color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" - }, - "colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" - }, - "colorspace": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", - "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", - "requires": { - "color": "^3.1.3", - "text-hex": "1.0.x" - } - }, - "combine-promises": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", - "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==" - }, - "commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==" - }, - "common-tags": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", - "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "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==" - } - } - }, - "compute-gcd": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", - "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", - "requires": { - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "compute-lcm": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", - "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", - "requires": { - "compute-gcd": "^1.2.1", - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "requires": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - } - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==" - }, - "consola": { - "version": "2.15.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", - "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" - }, - "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==" - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==" - }, - "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "copy-text-to-clipboard": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", - "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==" - }, - "copy-to-clipboard": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", - "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", - "requires": { - "toggle-selection": "^1.0.6" - } - }, - "copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "requires": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "requires": { - "is-glob": "^4.0.3" - } - }, - "globby": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", - "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" - } - } - }, - "core-js": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", - "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==" - }, - "core-js-compat": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", - "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", - "requires": { - "browserslist": "^4.21.5" - } - }, - "core-js-pure": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", - "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - }, - "cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "requires": { - "node-fetch": "2.6.7" - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==" - }, - "css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==" - }, - "css-declaration-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", - "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", - "requires": {} - }, - "css-in-js-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", - "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", - "requires": { - "hyphenate-style-name": "^1.0.3" - } - }, - "css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "css-minimizer-webpack-plugin": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", - "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", - "requires": { - "cssnano": "^5.1.8", - "jest-worker": "^29.1.2", - "postcss": "^8.4.17", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - } - }, - "css-selector-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", - "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" - }, - "css-to-react-native": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", - "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", - "requires": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^4.0.2" - } - }, - "css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "requires": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" - }, - "css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" - }, - "cssmin": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/cssmin/-/cssmin-0.3.2.tgz", - "integrity": "sha512-bynxGIAJ8ybrnFobjsQotIjA8HFDDgPwbeUWNXXXfR+B4f9kkxdcUyagJoQCSUOfMV+ZZ6bMn8bvbozlCzUGwQ==" - }, - "cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", - "requires": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - } - }, - "cssnano-preset-advanced": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", - "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", - "requires": { - "autoprefixer": "^10.4.12", - "cssnano-preset-default": "^5.2.14", - "postcss-discard-unused": "^5.1.0", - "postcss-merge-idents": "^5.1.1", - "postcss-reduce-idents": "^5.2.0", - "postcss-zindex": "^5.1.0" - } - }, - "cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "requires": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - } - }, - "cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", - "requires": {} - }, - "csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "requires": { - "css-tree": "^1.1.2" - } - }, - "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.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" - }, - "cypress": { - "version": "12.7.0", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", - "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", - "dev": true, - "requires": { - "@cypress/request": "^2.88.10", - "@cypress/xvfb": "^1.2.4", - "@types/node": "^14.14.31", - "@types/sinonjs__fake-timers": "8.1.1", - "@types/sizzle": "^2.3.2", - "arch": "^2.2.0", - "blob-util": "^2.0.2", - "bluebird": "^3.7.2", - "buffer": "^5.6.0", - "cachedir": "^2.3.0", - "chalk": "^4.1.0", - "check-more-types": "^2.24.0", - "cli-cursor": "^3.1.0", - "cli-table3": "~0.6.1", - "commander": "^5.1.0", - "common-tags": "^1.8.0", - "dayjs": "^1.10.4", - "debug": "^4.3.4", - "enquirer": "^2.3.6", - "eventemitter2": "6.4.7", - "execa": "4.1.0", - "executable": "^4.1.1", - "extract-zip": "2.0.1", - "figures": "^3.2.0", - "fs-extra": "^9.1.0", - "getos": "^3.2.1", - "is-ci": "^3.0.0", - "is-installed-globally": "~0.4.0", - "lazy-ass": "^1.6.0", - "listr2": "^3.8.3", - "lodash": "^4.17.21", - "log-symbols": "^4.0.0", - "minimist": "^1.2.6", - "ospath": "^1.2.2", - "pretty-bytes": "^5.6.0", - "proxy-from-env": "1.0.0", - "request-progress": "^3.0.0", - "semver": "^7.3.2", - "supports-color": "^8.1.1", - "tmp": "~0.2.1", - "untildify": "^4.0.0", - "yauzl": "^2.10.0" - }, - "dependencies": { - "@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", - "dev": true - }, - "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" - } - } - } - }, - "d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "optional": true - }, - "d3-dispatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", - "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", - "optional": true - }, - "d3-drag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", - "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", - "optional": true, - "requires": { - "d3-dispatch": "1 - 3", - "d3-selection": "3" - } - }, - "d3-ease": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", - "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "optional": true - }, - "d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "optional": true, - "requires": { - "d3-color": "1 - 3" - } - }, - "d3-selection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", - "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", - "optional": true - }, - "d3-timer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", - "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "optional": true - }, - "d3-transition": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", - "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", - "optional": true, - "requires": { - "d3-color": "1 - 3", - "d3-dispatch": "1 - 3", - "d3-ease": "1 - 3", - "d3-interpolate": "1 - 3", - "d3-timer": "1 - 3" - } - }, - "d3-zoom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", - "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", - "optional": true, - "requires": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "2 - 3", - "d3-transition": "2 - 3" - } - }, - "dagre": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", - "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", - "optional": true, - "requires": { - "graphlib": "^2.1.8", - "lodash": "^4.17.15" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "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" - } - }, - "dayjs": { - "version": "1.11.7", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", - "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "decko": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", - "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" - }, - "decode-uri-component": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", - "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==" - }, - "decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "requires": { - "mimic-response": "^3.1.0" - } - }, - "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "deep-equal": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", - "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "devOptional": true - }, - "deepmerge": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", - "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==" - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "requires": { - "execa": "^5.0.0" - }, - "dependencies": { - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "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" - } - }, - "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==" - }, - "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==" - } - } - }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" - }, - "define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", - "requires": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "detab": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", - "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", - "requires": { - "repeat-string": "^1.5.4" - } - }, - "detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" - }, - "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 - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" - }, - "detect-port": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", - "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", - "requires": { - "address": "^1.0.1", - "debug": "4" - } - }, - "detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "requires": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "diff-sequences": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", - "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "requires": { - "path-type": "^4.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" - }, - "dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "devOptional": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", - "dev": true - }, - "dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "requires": { - "utila": "~0.4" - } - }, - "dom-helpers": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", - "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", - "requires": { - "@babel/runtime": "^7.1.2" - } - }, - "dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "dom7": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", - "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", - "requires": { - "ssr-window": "^4.0.0" - } - }, - "domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==" - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" - }, - "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 - } - } - }, - "domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "requires": { - "domelementtype": "^2.3.0" - } - }, - "dompurify": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", - "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" - }, - "domutils": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", - "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" - } - }, - "dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "requires": { - "is-obj": "^2.0.0" - }, - "dependencies": { - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" - } - } - }, - "dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "dev": true - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" - }, - "duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" - }, - "eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "electron-to-chromium": { - "version": "1.4.315", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", - "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "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==" - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" - }, - "emoticon": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", - "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==" - }, - "enabled": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", - "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, - "enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", - "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" - } - }, - "entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==" - }, - "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" - } - }, - "error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", - "requires": { - "stackframe": "^1.3.4" - } - }, - "es-abstract": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", - "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - } - }, - "es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, - "es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - } - }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" - }, - "es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" - }, - "es6-promise": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "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.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - } - } - }, - "eslint": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", - "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", - "devOptional": true, - "requires": { - "@eslint/eslintrc": "^2.0.0", - "@eslint/js": "8.35.0", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "dependencies": { - "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "devOptional": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": true - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "devOptional": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "devOptional": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "devOptional": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "devOptional": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "devOptional": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "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==", - "devOptional": true - }, - "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==", - "devOptional": 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==", - "devOptional": true - } - } - }, - "eslint-config-prettier": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", - "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", - "dev": true, - "requires": {} - }, - "eslint-plugin-markdown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", - "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", - "dev": true, - "requires": { - "mdast-util-from-markdown": "^0.8.5" - } - }, - "eslint-plugin-prettier": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", - "dev": true, - "requires": { - "prettier-linter-helpers": "^1.0.0" - } - }, - "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==", - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "devOptional": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "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==", - "devOptional": true - } - } - }, - "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "devOptional": true - }, - "espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", - "devOptional": true, - "requires": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "devOptional": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": 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==", - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - }, - "eta": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", - "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" - }, - "eval": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", - "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", - "requires": { - "@types/node": "*", - "require-like": ">= 0.1.1" - } - }, - "eventemitter2": { - "version": "6.4.7", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", - "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "executable": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", - "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", - "dev": true, - "requires": { - "pify": "^2.2.0" - } - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true - }, - "expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" - }, - "expect": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", - "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", - "dev": true, - "requires": { - "@jest/expect-utils": "^29.4.3", - "jest-get-type": "^29.4.3", - "jest-matcher-utils": "^29.4.3", - "jest-message-util": "^29.4.3", - "jest-util": "^29.4.3" - } - }, - "express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "requires": { - "@types/yauzl": "^2.9.1", - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true - }, - "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==" - }, - "fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-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==" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "devOptional": true - }, - "fast-loops": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", - "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" - }, - "fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "fast-shallow-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", - "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" - }, - "fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", - "requires": { - "punycode": "^1.3.2" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" - } - } - }, - "fastest-stable-stringify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", - "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" - }, - "fastestsmallesttextencoderdecoder": { - "version": "1.0.22", - "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", - "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" - }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "requires": { - "reusify": "^1.0.4" - } - }, - "fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "requires": { - "format": "^0.2.0" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "requires": { - "bser": "2.1.1" - } - }, - "fbemitter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", - "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", - "requires": { - "fbjs": "^3.0.0" - } - }, - "fbjs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", - "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", - "requires": { - "cross-fetch": "^3.1.5", - "fbjs-css-vars": "^1.0.0", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.30" - } - }, - "fbjs-css-vars": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", - "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "requires": { - "pend": "~1.2.0" - } - }, - "fecha": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" - }, - "feed": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", - "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", - "requires": { - "xml-js": "^1.6.11" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - } - } - }, - "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==", - "devOptional": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "file-loader": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", - "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "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==" - }, - "file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==" - }, - "filesize": { - "version": "8.0.7", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", - "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==" - }, - "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==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "filter-obj": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", - "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==" - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "requires": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "devOptional": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "devOptional": true - }, - "flux": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", - "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", - "requires": { - "fbemitter": "^3.0.0", - "fbjs": "^3.0.1" - } - }, - "fn.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", - "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" - }, - "fnv-plus": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", - "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" - }, - "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" - }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "requires": { - "is-callable": "^1.1.3" - } - }, - "foreach": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", - "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true - }, - "fork-ts-checker-webpack-plugin": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", - "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", - "requires": { - "@babel/code-frame": "^7.8.3", - "@types/json-schema": "^7.0.5", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "cosmiconfig": "^6.0.0", - "deepmerge": "^4.2.2", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "memfs": "^3.1.2", - "minimatch": "^3.0.4", - "schema-utils": "2.7.0", - "semver": "^7.3.2", - "tapable": "^1.0.0" - }, - "dependencies": { - "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" - } - }, - "schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", - "requires": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" - } - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" - } - } - }, - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==" - }, - "formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "requires": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" - }, - "fs": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", - "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "fscreen": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", - "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "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.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "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==" - }, - "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.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" - }, - "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": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "requires": { - "pump": "^3.0.0" - } - }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "getos": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", - "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", - "dev": true, - "requires": { - "async": "^3.2.0" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" - }, - "github-slugger": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", - "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "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==", - "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==" - }, - "global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "requires": { - "ini": "2.0.0" - } - }, - "global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "requires": { - "global-prefix": "^3.0.0" - } - }, - "global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "dependencies": { - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" - }, - "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, - "dependencies": { - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "requires": { - "pump": "^3.0.0" - } - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - } - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "devOptional": true - }, - "graphlib": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", - "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", - "optional": true, - "requires": { - "lodash": "^4.17.15" - } - }, - "gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "requires": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "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==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "requires": { - "duplexer": "^0.1.2" - } - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "requires": { - "has-symbols": "^1.0.2" - } - }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==" - }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hast-to-hyperscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", - "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", - "requires": { - "@types/unist": "^2.0.3", - "comma-separated-tokens": "^1.0.0", - "property-information": "^5.3.0", - "space-separated-tokens": "^1.0.0", - "style-to-object": "^0.3.0", - "unist-util-is": "^4.0.0", - "web-namespaces": "^1.0.0" - } - }, - "hast-util-from-parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", - "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", - "requires": { - "@types/parse5": "^5.0.0", - "hastscript": "^6.0.0", - "property-information": "^5.0.0", - "vfile": "^4.0.0", - "vfile-location": "^3.2.0", - "web-namespaces": "^1.0.0" - } - }, - "hast-util-is-element": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", - "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==" - }, - "hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==" - }, - "hast-util-raw": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", - "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", - "requires": { - "@types/hast": "^2.0.0", - "hast-util-from-parse5": "^6.0.0", - "hast-util-to-parse5": "^6.0.0", - "html-void-elements": "^1.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - } - } - }, - "hast-util-sanitize": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", - "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", - "requires": { - "@types/hast": "^2.0.0" - } - }, - "hast-util-to-parse5": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", - "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", - "requires": { - "hast-to-hyperscript": "^9.0.0", - "property-information": "^5.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - } - }, - "hast-util-to-text": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", - "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", - "requires": { - "hast-util-is-element": "^1.0.0", - "repeat-string": "^1.0.0", - "unist-util-find-after": "^3.0.0" - } - }, - "hast-util-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", - "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==" - }, - "hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - } - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" - }, - "history": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", - "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", - "requires": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^3.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "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==" - } - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "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" - } - }, - "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==" - }, - "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" - } - } - } - }, - "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-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" - }, - "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 - }, - "html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", - "requires": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - }, - "dependencies": { - "commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" - } - } - }, - "html-tags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", - "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==" - }, - "html-void-elements": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", - "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==" - }, - "html-webpack-plugin": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "requires": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - } - }, - "html-webpack-plugin-4": { - "version": "npm:html-webpack-plugin@4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "requires": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - }, - "dependencies": { - "@types/html-minifier-terser": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", - "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - } - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "requires": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - } - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "requires": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" - } - }, - "renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, - "requires": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "terser": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "dependencies": { - "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 - } - } - } - } - }, - "html-webpack-plugin-5": { - "version": "npm:html-webpack-plugin@5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "dev": true, - "requires": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - } - }, - "htmlparser2": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", - "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "entities": "^4.3.0" - } - }, - "http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "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" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "dependencies": { - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==" - } - } - }, - "http-reasons": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", - "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" - }, - "http-signature": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", - "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^2.0.2", - "sshpk": "^1.14.1" - } - }, - "http2-client": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", - "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "httpsnippet-lite": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", - "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", - "requires": { - "@types/har-format": "^1.2.10", - "formdata-node": "^4.4.1", - "stringify-object": "3.3.0" - } - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true - }, - "husky": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", - "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", - "dev": true - }, - "hyphenate-style-name": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", - "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==" - }, - "image-size": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", - "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", - "requires": { - "queue": "6.0.2" - } - }, - "immer": { - "version": "9.0.19", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", - "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==" - }, - "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" - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==" - }, - "import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" - }, - "infima": { - "version": "0.2.0-alpha.42", - "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", - "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==" - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "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==" - }, - "ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" - }, - "inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" - }, - "inline-style-prefixer": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", - "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", - "requires": { - "css-in-js-utils": "^3.1.0", - "fast-loops": "^1.1.3" - } - }, - "internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "requires": { - "loose-envify": "^1.0.0" - } - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==" - }, - "is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==" - }, - "is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - } - }, - "is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" - }, - "is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" - }, - "is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "requires": { - "ci-info": "^3.2.0" - } - }, - "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==" - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" - }, - "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==" - }, - "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-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==" - }, - "is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "requires": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - } - }, - "is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true - }, - "is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true - }, - "is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==" - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==" - }, - "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==" - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" - }, - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" - }, - "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-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==" - }, - "is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==" - }, - "is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==" - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==" - }, - "is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==" - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "requires": { - "is-docker": "^2.0.0" - } - }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" - }, - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==" - }, - "isomorphic-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", - "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", - "requires": { - "node-fetch": "^2.6.1", - "whatwg-fetch": "^3.4.1" - } - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "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.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - } - }, - "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - } - }, - "jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - }, - "dependencies": { - "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" - } - }, - "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 - }, - "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 - } - } - }, - "jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", - "dev": true, - "requires": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-diff": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", - "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-get-type": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", - "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", - "dev": true - }, - "jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@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.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } - }, - "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" - } - } - } - }, - "jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "requires": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - } - } - }, - "jest-matcher-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", - "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "jest-message-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", - "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.4.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.4.3", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "dependencies": { - "@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - } - }, - "@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*" - } - }, - "jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "requires": {} - }, - "jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true - }, - "jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - } - }, - "jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } - }, - "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" - } - } - } - }, - "jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "dependencies": { - "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" - } - }, - "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 - }, - "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 - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - } - }, - "jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", - "dev": true, - "requires": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", - "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", - "requires": { - "@jest/types": "^29.4.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "dependencies": { - "@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "requires": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - } - }, - "@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "requires": { - "@types/yargs-parser": "*" - } - } - } - }, - "jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - } - } - }, - "jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-worker": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", - "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", - "requires": { - "@types/node": "*", - "jest-util": "^29.4.3", - "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==", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "joi": { - "version": "17.8.3", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", - "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", - "requires": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" - } - }, - "jotai": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", - "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", - "requires": {} - }, - "js-cookie": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", - "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" - }, - "js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==" - }, - "js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", - "devOptional": true - }, - "js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, - "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": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "requires": { - "argparse": "^2.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "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.6", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "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" - } - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", - "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - } - }, - "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true - } - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" - }, - "jsmin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/jsmin/-/jsmin-1.0.1.tgz", - "integrity": "sha512-OPuL5X/bFKgVdMvEIX3hnpx3jbVpFCrEM8pKPXjFkZUqg521r41ijdyTz7vACOhW6o1neVlcLyd+wkbK5fNHRg==" - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" - }, - "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-pointer": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", - "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", - "requires": { - "foreach": "^2.0.4" - } - }, - "json-promise": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", - "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", - "requires": { - "bluebird": "*" - } - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" - }, - "json-schema-compare": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", - "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", - "requires": { - "lodash": "^4.17.4" - } - }, - "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==" - }, - "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "devOptional": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==" - }, - "jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "jsprim": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", - "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "jxLoader": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jxLoader/-/jxLoader-0.1.1.tgz", - "integrity": "sha512-ClEvAj3K68y8uKhub3RgTmcRPo5DfIWvtxqrKQdDPyZ1UVHIIKvVvjrAsJFSVL5wjv0rt5iH9SMCZ0XRKNzeUA==", - "requires": { - "js-yaml": "0.3.x", - "moo-server": "1.3.x", - "promised-io": "*", - "walker": "1.x" - }, - "dependencies": { - "js-yaml": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-0.3.7.tgz", - "integrity": "sha512-/7PsVDNP2tVe2Z1cF9kTEkjamIwz4aooDpRKmN1+g/9eePCgcxsv4QDvEbxO0EH+gdDD7MLyDoR6BASo3hH51g==" - } - } - }, - "katex": { - "version": "0.13.24", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", - "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", - "requires": { - "commander": "^8.0.0" - }, - "dependencies": { - "commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" - } - } - }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "requires": { - "json-buffer": "3.0.0" - } - }, - "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==" - }, - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" - }, - "klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==" - }, - "kuler": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", - "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" - }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "requires": { - "package-json": "^6.3.0" - } - }, - "lazy-ass": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", - "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", - "dev": true - }, - "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==" - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "devOptional": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==" - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "lint-staged": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", - "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", - "dev": true, - "requires": { - "cli-truncate": "^3.1.0", - "colorette": "^2.0.19", - "commander": "^9.4.1", - "debug": "^4.3.4", - "execa": "^6.1.0", - "lilconfig": "2.0.6", - "listr2": "^5.0.5", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-inspect": "^1.12.2", - "pidtree": "^0.6.0", - "string-argv": "^0.3.1", - "yaml": "^2.1.3" - }, - "dependencies": { - "cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", - "dev": true, - "requires": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" - } - }, - "commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true - }, - "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 - }, - "execa": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", - "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^3.0.1", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - } - }, - "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 - }, - "human-signals": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", - "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true - }, - "is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true - }, - "listr2": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", - "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", - "dev": true, - "requires": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.19", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.8.0", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - } - }, - "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 - }, - "slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true - }, - "npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "requires": { - "path-key": "^4.0.0" - } - }, - "onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "requires": { - "mimic-fn": "^4.0.0" - } - }, - "path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true - }, - "slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dev": true, - "requires": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true - } - } - }, - "strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "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" - }, - "dependencies": { - "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 - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "yaml": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", - "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", - "dev": true - } - } - }, - "liquid-json": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", - "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==" - }, - "listr2": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", - "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", - "dev": true, - "requires": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.16", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.5.1", - "through": "^2.3.8", - "wrap-ansi": "^7.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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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" - } - } - } - }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==" - }, - "loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "local-pkg": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", - "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", - "dev": true - }, - "locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "requires": { - "p-locate": "^6.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash.curry": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", - "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" - }, - "lodash.flow": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", - "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" - }, - "lodash.isequalwith": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", - "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" - }, - "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==", - "devOptional": true - }, - "lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", - "dev": true - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" - }, - "lodash.pickby": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", - "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, - "log-update": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.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 - }, - "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" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - } - } - }, - "logform": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.5.1.tgz", - "integrity": "sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==", - "requires": { - "@colors/colors": "1.5.0", - "@types/triple-beam": "^1.3.2", - "fecha": "^4.2.0", - "ms": "^2.1.1", - "safe-stable-stringify": "^2.3.1", - "triple-beam": "^1.3.0" - }, - "dependencies": { - "safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" - } - } - }, - "longest-streak": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", - "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==" - }, - "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" - } - }, - "lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "requires": { - "tslib": "^2.0.3" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, - "lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" - }, - "lz-string": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", - "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", - "dev": true - }, - "magic-error": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", - "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==" - }, - "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==", - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "requires": { - "tmpl": "1.0.5" - } - }, - "mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" - }, - "markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==" - }, - "markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "requires": { - "repeat-string": "^1.0.0" - } - }, - "marked": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", - "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==" - }, - "match-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", - "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", - "requires": { - "@babel/runtime": "^7.12.5", - "remove-accents": "0.4.2" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "mdast-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", - "requires": { - "unist-util-remove": "^2.0.0" - } - }, - "mdast-util-definitions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", - "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "mdast-util-find-and-replace": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", - "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", - "requires": { - "escape-string-regexp": "^4.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - } - }, - "mdast-util-from-markdown": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", - "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", - "requires": { - "@types/mdast": "^3.0.0", - "mdast-util-to-string": "^2.0.0", - "micromark": "~2.11.0", - "parse-entities": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - } - }, - "mdast-util-frontmatter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", - "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", - "requires": { - "micromark-extension-frontmatter": "^0.2.0" - } - }, - "mdast-util-gfm": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", - "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", - "requires": { - "mdast-util-gfm-autolink-literal": "^0.1.0", - "mdast-util-gfm-strikethrough": "^0.2.0", - "mdast-util-gfm-table": "^0.1.0", - "mdast-util-gfm-task-list-item": "^0.1.0", - "mdast-util-to-markdown": "^0.6.1" - } - }, - "mdast-util-gfm-autolink-literal": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", - "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", - "requires": { - "ccount": "^1.0.0", - "mdast-util-find-and-replace": "^1.1.0", - "micromark": "^2.11.3" - } - }, - "mdast-util-gfm-strikethrough": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", - "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", - "requires": { - "mdast-util-to-markdown": "^0.6.0" - } - }, - "mdast-util-gfm-table": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", - "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", - "requires": { - "markdown-table": "^2.0.0", - "mdast-util-to-markdown": "~0.6.0" - } - }, - "mdast-util-gfm-task-list-item": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", - "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", - "requires": { - "mdast-util-to-markdown": "~0.6.0" - } - }, - "mdast-util-to-hast": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", - "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", - "requires": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "mdast-util-definitions": "^4.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^2.0.0", - "unist-util-generated": "^1.0.0", - "unist-util-position": "^3.0.0", - "unist-util-visit": "^2.0.0" - } - }, - "mdast-util-to-markdown": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", - "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", - "requires": { - "@types/unist": "^2.0.0", - "longest-streak": "^2.0.0", - "mdast-util-to-string": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.0.0", - "zwitch": "^1.0.0" - } - }, - "mdast-util-to-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==" - }, - "mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" - }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" - }, - "memfs": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", - "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", - "requires": { - "fs-monkey": "^1.0.3" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, - "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==" - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" - }, - "micromark": { - "version": "2.11.4", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", - "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", - "requires": { - "debug": "^4.0.0", - "parse-entities": "^2.0.0" - } - }, - "micromark-extension-frontmatter": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", - "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", - "requires": { - "fault": "^1.0.0" - } - }, - "micromark-extension-gfm": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", - "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", - "requires": { - "micromark": "~2.11.0", - "micromark-extension-gfm-autolink-literal": "~0.5.0", - "micromark-extension-gfm-strikethrough": "~0.6.5", - "micromark-extension-gfm-table": "~0.4.0", - "micromark-extension-gfm-tagfilter": "~0.3.0", - "micromark-extension-gfm-task-list-item": "~0.3.0" - } - }, - "micromark-extension-gfm-autolink-literal": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", - "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", - "requires": { - "micromark": "~2.11.3" - } - }, - "micromark-extension-gfm-strikethrough": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", - "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", - "requires": { - "micromark": "~2.11.0" - } - }, - "micromark-extension-gfm-table": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", - "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", - "requires": { - "micromark": "~2.11.0" - } - }, - "micromark-extension-gfm-tagfilter": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", - "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==" - }, - "micromark-extension-gfm-task-list-item": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", - "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", - "requires": { - "micromark": "~2.11.0" - } - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "microseconds": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", - "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-format": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", - "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", - "requires": { - "charset": "^1.0.0" - } - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" - }, - "mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" - }, - "min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", - "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", - "requires": { - "schema-utils": "^4.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" - }, - "mobx": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", - "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==" - }, - "mobx-react": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", - "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", - "requires": { - "mobx-react-lite": "^3.4.0" - } - }, - "mobx-react-lite": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", - "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", - "requires": {} - }, - "monaco-editor": { - "version": "0.36.1", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", - "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", - "peer": true - }, - "moo-server": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/moo-server/-/moo-server-1.3.0.tgz", - "integrity": "sha512-9A8/eor2DXwpv1+a4pZAAydqLFVrWoKoO1fzdzqLUhYVXAO1Kgd1FR2gFZi7YdHzF0s4W8cDNwCfKJQrvLqxDw==" - }, - "mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "nano-memoize": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", - "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" - }, - "nano-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", - "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", - "requires": { - "big-integer": "^1.6.16" - } - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" - }, - "napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "devOptional": true - }, - "natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "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==" - }, - "no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "requires": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node-abi": { - "version": "3.33.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", - "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", - "requires": { - "semver": "^7.3.5" - } - }, - "node-abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", - "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" - }, - "node-addon-api": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", - "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" - }, - "node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" - }, - "node-emoji": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", - "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", - "requires": { - "lodash": "^4.17.21" - } - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "requires": { - "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } - } - }, - "node-fetch-h2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", - "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", - "requires": { - "http2-client": "^1.2.5" - } - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" - }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node-polyfill-webpack-plugin": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", - "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", - "requires": { - "assert": "^2.0.0", - "browserify-zlib": "^0.2.0", - "buffer": "^6.0.3", - "console-browserify": "^1.2.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.12.0", - "domain-browser": "^4.19.0", - "events": "^3.3.0", - "filter-obj": "^2.0.2", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "punycode": "^2.1.1", - "querystring-es3": "^0.2.1", - "readable-stream": "^3.6.0", - "stream-browserify": "^3.0.0", - "stream-http": "^3.2.0", - "string_decoder": "^1.3.0", - "timers-browserify": "^2.0.12", - "tty-browserify": "^0.0.1", - "url": "^0.11.0", - "util": "^0.12.4", - "vm-browserify": "^1.1.2" - }, - "dependencies": { - "buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - } - } - }, - "node-readfiles": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", - "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", - "requires": { - "es6-promise": "^3.2.1" - } - }, - "node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==" - }, - "normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" - }, - "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==", - "requires": { - "path-key": "^3.0.0" - } - }, - "nprogress": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", - "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "requires": { - "boolbase": "^1.0.0" - } - }, - "nwsapi": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", - "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", - "dev": true - }, - "oas-kit-common": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", - "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", - "requires": { - "fast-safe-stringify": "^2.0.7" - } - }, - "oas-linter": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", - "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", - "requires": { - "@exodus/schemasafe": "^1.0.0-rc.2", - "should": "^13.2.1", - "yaml": "^1.10.0" - } - }, - "oas-resolver": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", - "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", - "requires": { - "node-fetch-h2": "^2.3.0", - "oas-kit-common": "^1.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "dependencies": { - "cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - } - }, - "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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" - } - } - }, - "oas-schema-walker": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", - "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==" - }, - "oas-validator": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", - "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", - "requires": { - "call-me-maybe": "^1.0.1", - "oas-kit-common": "^1.0.8", - "oas-linter": "^3.2.2", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "reftools": "^1.1.9", - "should": "^13.2.1", - "yaml": "^1.10.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, - "object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" - }, - "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.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.getownpropertydescriptors": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", - "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", - "dev": true, - "requires": { - "array.prototype.reduce": "^1.0.5", - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "oblivious-set": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", - "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, - "one-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", - "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", - "requires": { - "fn.name": "1.x.x" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "openapi-sampler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", - "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", - "requires": { - "@types/json-schema": "^7.0.7", - "json-pointer": "0.6.2" - } - }, - "openapi3-ts": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", - "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", - "requires": { - "yaml": "^1.10.2" - } - }, - "opener": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==" - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "devOptional": 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" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" - }, - "ospath": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", - "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", - "dev": true - }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" - }, - "p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "requires": { - "p-limit": "^4.0.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - } - }, - "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==" - }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "papaparse": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", - "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" - }, - "param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "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-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "parse-json": { - "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" - } - }, - "parse-numeric-range": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" - }, - "parse-srcset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", - "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" - }, - "parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "requires": { - "entities": "^4.4.0" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "requires": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" - }, - "path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" - }, - "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-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - } - } - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" - }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "perfect-scrollbar": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", - "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" - }, - "pidtree": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", - "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", - "dev": true - }, - "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==", - "requires": { - "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, - "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==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "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==" - } - } - }, - "pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", - "requires": { - "find-up": "^3.0.0" - }, - "dependencies": { - "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" - } - }, - "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-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": "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": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" - } - } - }, - "pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==" - }, - "polished": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", - "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", - "requires": { - "@babel/runtime": "^7.17.8" - } - }, - "postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", - "requires": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", - "requires": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", - "requires": {} - }, - "postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", - "requires": {} - }, - "postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", - "requires": {} - }, - "postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", - "requires": {} - }, - "postcss-discard-unused": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", - "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-loader": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", - "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", - "requires": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.8" - } - }, - "postcss-merge-idents": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", - "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", - "requires": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", - "requires": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" - } - }, - "postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", - "requires": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", - "requires": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "requires": { - "postcss": "^7.0.5" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", - "requires": {} - }, - "postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", - "requires": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", - "requires": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", - "requires": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-reduce-idents": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", - "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - } - }, - "postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-sort-media-queries": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", - "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", - "requires": { - "sort-css-media-queries": "2.1.0" - } - }, - "postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", - "requires": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - } - }, - "postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, - "postcss-zindex": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", - "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", - "requires": {} - }, - "postman-collection": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", - "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", - "requires": { - "@faker-js/faker": "5.5.3", - "file-type": "3.9.0", - "http-reasons": "0.1.0", - "iconv-lite": "0.6.3", - "liquid-json": "0.3.1", - "lodash": "4.17.21", - "mime-format": "2.0.1", - "mime-types": "2.1.35", - "postman-url-encoder": "3.0.5", - "semver": "7.3.8", - "uuid": "8.3.2" - }, - "dependencies": { - "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" - } - } - } - }, - "postman-url-encoder": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", - "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", - "requires": { - "punycode": "^2.1.1" - } - }, - "prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "requires": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "devOptional": true - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==" - }, - "prettier": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", - "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", - "dev": true, - "peer": true - }, - "prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dev": true, - "requires": { - "fast-diff": "^1.1.2" - } - }, - "pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true - }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==" - }, - "pretty-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", - "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", - "requires": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, - "pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1", - "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 - }, - "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==", - "dev": true - } - } - }, - "pretty-time": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", - "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==" - }, - "prism-react-renderer": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", - "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", - "requires": {} - }, - "prismjs": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", - "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" - }, - "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==" - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "requires": { - "asap": "~2.0.3" - } - }, - "promised-io": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/promised-io/-/promised-io-0.3.6.tgz", - "integrity": "sha512-bNwZusuNIW4m0SPR8jooSyndD35ggirHlxVl/UhIaZD/F0OBv9ebfc6tNmbpZts3QXHggkjIBH8lvtnzhtcz0A==" - }, - "prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - } - }, - "prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "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==" - } - } - }, - "property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "requires": { - "xtend": "^4.0.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - } - } - }, - "proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", - "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", - "dev": true - }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" - }, - "pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "requires": { - "escape-goat": "^2.0.0" - } - }, - "pure-color": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", - "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" - }, - "qs": { - "version": "6.10.4", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", - "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "query-string": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", - "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", - "requires": { - "decode-uri-component": "^0.4.1", - "filter-obj": "^5.1.0", - "split-on-first": "^3.0.0" - }, - "dependencies": { - "filter-obj": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", - "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==" - } - } - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" - }, - "querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, - "queue": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", - "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", - "requires": { - "inherits": "~2.0.3" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==" - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - } - } - }, - "raw-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", - "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" - } - } - }, - "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" - } - }, - "react-base16-styling": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", - "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", - "requires": { - "base16": "^1.0.0", - "lodash.curry": "^4.0.1", - "lodash.flow": "^3.3.0", - "pure-color": "^1.2.0" - } - }, - "react-dev-utils": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", - "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", - "requires": { - "@babel/code-frame": "^7.16.0", - "address": "^1.1.2", - "browserslist": "^4.18.1", - "chalk": "^4.1.2", - "cross-spawn": "^7.0.3", - "detect-port-alt": "^1.1.6", - "escape-string-regexp": "^4.0.0", - "filesize": "^8.0.6", - "find-up": "^5.0.0", - "fork-ts-checker-webpack-plugin": "^6.5.0", - "global-modules": "^2.0.0", - "globby": "^11.0.4", - "gzip-size": "^6.0.0", - "immer": "^9.0.7", - "is-root": "^2.1.0", - "loader-utils": "^3.2.0", - "open": "^8.4.0", - "pkg-up": "^3.1.0", - "prompts": "^2.4.2", - "react-error-overlay": "^6.0.11", - "recursive-readdir": "^2.2.2", - "shell-quote": "^1.7.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "loader-utils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", - "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==" - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "requires": { - "p-limit": "^3.0.2" - } - }, - "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==" - }, - "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==" - } - } - }, - "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-error-overlay": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", - "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" - }, - "react-fast-compare": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", - "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" - }, - "react-flow-renderer": { - "version": "10.3.17", - "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", - "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", - "optional": true, - "requires": { - "@babel/runtime": "^7.18.9", - "@types/d3": "^7.4.0", - "@types/resize-observer-browser": "^0.1.7", - "classcat": "^5.0.3", - "d3-drag": "^3.0.0", - "d3-selection": "^3.0.0", - "d3-zoom": "^3.0.0", - "zustand": "^3.7.2" - } - }, - "react-full-screen": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", - "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", - "requires": { - "fscreen": "^1.0.2" - } - }, - "react-helmet-async": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", - "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", - "requires": { - "@babel/runtime": "^7.12.5", - "invariant": "^2.2.4", - "prop-types": "^15.7.2", - "react-fast-compare": "^3.2.0", - "shallowequal": "^1.1.0" - } - }, - "react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" - }, - "react-json-view": { - "version": "1.21.3", - "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", - "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", - "requires": { - "flux": "^4.0.1", - "react-base16-styling": "^0.6.0", - "react-lifecycles-compat": "^3.0.4", - "react-textarea-autosize": "^8.3.2" - } - }, - "react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" - }, - "react-loadable": { - "version": "npm:@docusaurus/react-loadable@5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "requires": { - "@types/react": "*", - "prop-types": "^15.6.2" - } - }, - "react-loadable-ssr-addon-v5-slorber": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", - "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", - "requires": { - "@babel/runtime": "^7.10.3" - } - }, - "react-overflow-list": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", - "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", - "requires": { - "react-use": "^17.3.1" - }, - "dependencies": { - "react-use": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", - "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", - "requires": { - "@types/js-cookie": "^2.2.6", - "@xobotyi/scrollbar-width": "^1.9.5", - "copy-to-clipboard": "^3.3.1", - "fast-deep-equal": "^3.1.3", - "fast-shallow-equal": "^1.0.0", - "js-cookie": "^2.2.1", - "nano-css": "^5.3.1", - "react-universal-interface": "^0.6.2", - "resize-observer-polyfill": "^1.5.1", - "screenfull": "^5.1.0", - "set-harmonic-interval": "^1.0.1", - "throttle-debounce": "^3.0.1", - "ts-easing": "^0.2.0", - "tslib": "^2.1.0" - }, - "dependencies": { - "nano-css": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", - "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", - "requires": { - "css-tree": "^1.1.2", - "csstype": "^3.0.6", - "fastest-stable-stringify": "^2.0.2", - "inline-style-prefixer": "^6.0.0", - "rtl-css-js": "^1.14.0", - "sourcemap-codec": "^1.4.8", - "stacktrace-js": "^2.0.2", - "stylis": "^4.0.6" - } - } - } - } - } - }, - "react-query": { - "version": "3.39.3", - "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", - "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", - "requires": { - "@babel/runtime": "^7.5.5", - "broadcast-channel": "^3.4.1", - "match-sorter": "^6.0.2" - } - }, - "react-router": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", - "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", - "requires": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "hoist-non-react-statics": "^3.1.0", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.7.0", - "prop-types": "^15.6.2", - "react-is": "^16.6.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.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==" - } - } - }, - "react-router-config": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", - "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", - "requires": { - "@babel/runtime": "^7.1.2" - } - }, - "react-router-dom": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", - "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", - "requires": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.2", - "react-router": "5.3.4", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - } - }, - "react-router-hash-link": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", - "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", - "requires": { - "prop-types": "^15.7.2" - } - }, - "react-tabs": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", - "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", - "requires": { - "clsx": "^1.1.0", - "prop-types": "^15.5.0" - } - }, - "react-textarea-autosize": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", - "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", - "requires": { - "@babel/runtime": "^7.20.13", - "use-composed-ref": "^1.3.0", - "use-latest": "^1.2.1" - } - }, - "react-tooltip": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", - "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", - "requires": { - "prop-types": "^15.8.1", - "uuid": "^7.0.3" - }, - "dependencies": { - "uuid": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", - "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==" - } - } - }, - "react-universal-interface": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", - "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", - "requires": {} - }, - "react-waypoint": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", - "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", - "requires": { - "@babel/runtime": "^7.12.5", - "consolidated-events": "^1.1.0 || ^2.0.0", - "prop-types": "^15.0.0", - "react-is": "^17.0.1 || ^18.0.0" - } - }, - "readable-stream": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", - "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "requires": { - "picomatch": "^2.2.1" - } - }, - "reading-time": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", - "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" - }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", - "requires": { - "resolve": "^1.1.6" - } - }, - "recursive-readdir": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", - "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", - "requires": { - "minimatch": "^3.0.5" - } - }, - "redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - } - }, - "redoc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", - "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", - "requires": { - "@redocly/openapi-core": "^1.0.0-beta.104", - "classnames": "^2.3.1", - "decko": "^1.2.0", - "dompurify": "^2.2.8", - "eventemitter3": "^4.0.7", - "json-pointer": "^0.6.2", - "lunr": "^2.3.9", - "mark.js": "^8.11.1", - "marked": "^4.0.15", - "mobx-react": "^7.2.0", - "openapi-sampler": "^1.3.0", - "path-browserify": "^1.0.1", - "perfect-scrollbar": "^1.5.5", - "polished": "^4.1.3", - "prismjs": "^1.27.0", - "prop-types": "^15.7.2", - "react-tabs": "^3.2.2", - "slugify": "~1.4.7", - "stickyfill": "^1.1.1", - "style-loader": "^3.3.1", - "swagger2openapi": "^7.0.6", - "url-template": "^2.0.8" - }, - "dependencies": { - "slugify": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", - "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==" - }, - "style-loader": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", - "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", - "requires": {} - } - } - }, - "reftools": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", - "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==" - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" - }, - "regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - } - }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "devOptional": true - }, - "regexpu-core": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", - "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, - "registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "requires": { - "rc": "1.2.8" - } - }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "requires": { - "rc": "^1.2.8" - } - }, - "regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==" - } - } - }, - "rehype-katex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", - "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", - "requires": { - "@types/katex": "^0.11.0", - "hast-util-to-text": "^2.0.0", - "katex": "^0.13.0", - "rehype-parse": "^7.0.0", - "unified": "^9.0.0", - "unist-util-visit": "^2.0.0" - } - }, - "rehype-parse": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", - "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", - "requires": { - "hast-util-from-parse5": "^6.0.0", - "parse5": "^6.0.0" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - } - } - }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==" - }, - "remark-emoji": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", - "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", - "requires": { - "emoticon": "^3.2.0", - "node-emoji": "^1.10.0", - "unist-util-visit": "^2.0.3" - } - }, - "remark-footnotes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", - "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==" - }, - "remark-frontmatter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", - "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", - "requires": { - "mdast-util-frontmatter": "^0.2.0", - "micromark-extension-frontmatter": "^0.2.0" - } - }, - "remark-gfm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", - "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", - "requires": { - "mdast-util-gfm": "^0.1.0", - "micromark-extension-gfm": "^0.3.0" - } - }, - "remark-math": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", - "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==" - }, - "remark-mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", - "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", - "requires": { - "@babel/core": "7.12.9", - "@babel/helper-plugin-utils": "7.10.4", - "@babel/plugin-proposal-object-rest-spread": "7.12.1", - "@babel/plugin-syntax-jsx": "7.12.1", - "@mdx-js/util": "1.6.22", - "is-alphabetical": "1.0.4", - "remark-parse": "8.0.3", - "unified": "9.2.0" - }, - "dependencies": { - "@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", - "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.12.1" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" - }, - "unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - } - } - }, - "remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "requires": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - } - }, - "remark-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", - "requires": { - "mdast-squeeze-paragraphs": "^4.0.0" - } - }, - "remark-stringify": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", - "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", - "requires": { - "mdast-util-to-markdown": "^0.6.0" - } - }, - "remove-accents": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", - "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" - }, - "renderkid": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", - "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", - "requires": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - } - } - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==" - }, - "request-progress": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", - "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", - "dev": true, - "requires": { - "throttleit": "^1.0.0" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" - }, - "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==" - }, - "require-like": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", - "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==" - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, - "resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "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" - }, - "dependencies": { - "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 - } - } - }, - "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==" - }, - "resolve-pathname": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", - "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" - }, - "resolve.exports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", - "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", - "dev": true - }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "requires": { - "lowercase-keys": "^1.0.0" - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rtl-css-js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", - "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", - "requires": { - "@babel/runtime": "^7.1.2" - } - }, - "rtl-detect": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", - "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" - }, - "rtlcss": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", - "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", - "requires": { - "find-up": "^5.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.3.11", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "requires": { - "p-limit": "^3.0.2" - } - }, - "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==" - }, - "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==" - } - } - }, - "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==", - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", - "requires": { - "tslib": "^2.1.0" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, - "safe-stable-stringify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", - "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sanitize-html": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", - "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", - "requires": { - "deepmerge": "^4.2.2", - "escape-string-regexp": "^4.0.0", - "htmlparser2": "^8.0.0", - "is-plain-object": "^5.0.0", - "parse-srcset": "^1.0.2", - "postcss": "^8.3.11" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "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==", - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - }, - "screenfull": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", - "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==" - }, - "section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "requires": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" - }, - "selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", - "requires": { - "node-forge": "^1" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "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==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "requires": { - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - } - } - }, - "serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-handler": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", - "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", - "requires": { - "bytes": "3.0.0", - "content-disposition": "0.5.2", - "fast-url-parser": "1.1.3", - "mime-types": "2.1.18", - "minimatch": "3.1.2", - "path-is-inside": "1.0.2", - "path-to-regexp": "2.2.1", - "range-parser": "1.2.0" - }, - "dependencies": { - "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" - }, - "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "requires": { - "mime-db": "~1.33.0" - } - }, - "path-to-regexp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", - "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" - } - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==" - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==" - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-harmonic-interval": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", - "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==" - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "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==", - "requires": { - "kind-of": "^6.0.2" - } - }, - "shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" - }, - "sharp": { - "version": "0.30.7", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", - "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", - "requires": { - "color": "^4.2.3", - "detect-libc": "^2.0.1", - "node-addon-api": "^5.0.0", - "prebuild-install": "^7.1.1", - "semver": "^7.3.7", - "simple-get": "^4.0.1", - "tar-fs": "^2.1.1", - "tunnel-agent": "^0.6.0" - }, - "dependencies": { - "color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "requires": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - } - } - } - }, - "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==", - "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==" - }, - "shell-quote": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", - "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==" - }, - "shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } - }, - "should": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", - "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", - "requires": { - "should-equal": "^2.0.0", - "should-format": "^3.0.3", - "should-type": "^1.4.0", - "should-type-adaptors": "^1.0.1", - "should-util": "^1.0.0" - } - }, - "should-equal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", - "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", - "requires": { - "should-type": "^1.4.0" - } - }, - "should-format": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", - "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", - "requires": { - "should-type": "^1.3.0", - "should-type-adaptors": "^1.0.1" - } - }, - "should-type": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", - "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" - }, - "should-type-adaptors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", - "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", - "requires": { - "should-type": "^1.3.0", - "should-util": "^1.0.0" - } - }, - "should-util": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", - "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" - }, - "simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "requires": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "simple-html-tokenizer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", - "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", - "dev": true - }, - "simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "requires": { - "is-arrayish": "^0.3.1" - }, - "dependencies": { - "is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" - } - } - }, - "sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", - "requires": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" - } - }, - "sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" - }, - "sitemap": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", - "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", - "requires": { - "@types/node": "^17.0.5", - "@types/sax": "^1.2.1", - "arg": "^5.0.0", - "sax": "^1.2.4" - }, - "dependencies": { - "@types/node": { - "version": "17.0.45", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", - "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" - } - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" - }, - "slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, - "slugify": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", - "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==" - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "sort-css-media-queries": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", - "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" - }, - "space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==" - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "speed-measure-webpack-plugin": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", - "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", - "dev": true, - "requires": { - "chalk": "^4.1.0" - } - }, - "split-on-first": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", - "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==" - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssr-window": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", - "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" - }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" - }, - "stack-generator": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", - "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", - "requires": { - "stackframe": "^1.3.4" - } - }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==" - }, - "stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "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 - } - } - }, - "stackframe": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" - }, - "stacktrace-gps": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", - "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", - "requires": { - "source-map": "0.5.6", - "stackframe": "^1.3.4" - }, - "dependencies": { - "source-map": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==" - } - } - }, - "stacktrace-js": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", - "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", - "requires": { - "error-stack-parser": "^2.0.6", - "stack-generator": "^2.0.5", - "stacktrace-gps": "^3.0.4" - } - }, - "state-local": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", - "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" - }, - "state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==" - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - }, - "std-env": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", - "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" - }, - "stickyfill": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", - "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" - }, - "stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "requires": { - "internal-slot": "^1.0.4" - } - }, - "stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "requires": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-argv": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", - "dev": true - }, - "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": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "requires": { - "ansi-regex": "^6.0.1" - } - } - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "stringify-object": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", - "requires": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "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-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==" - }, - "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==" - }, - "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "requires": { - "min-indent": "^1.0.0" - } - }, - "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==" - }, - "style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - } - }, - "style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", - "requires": { - "inline-style-parser": "0.1.1" - } - }, - "styled-components": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", - "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/traverse": "^7.4.5", - "@emotion/is-prop-valid": "^0.8.8", - "@emotion/stylis": "^0.8.4", - "@emotion/unitless": "^0.7.4", - "babel-plugin-styled-components": ">= 1.12.0", - "css-to-react-native": "^3.0.0", - "hoist-non-react-statics": "^3.0.0", - "shallowequal": "^1.1.0", - "supports-color": "^5.5.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "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" - } - } - } - }, - "stylehacks": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", - "requires": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - } - }, - "stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" - }, - "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==", - "requires": { - "has-flag": "^4.0.0" - } - }, - "supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "dev": true, - "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" - }, - "svg-inline-loader": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", - "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "object-assign": "^4.0.1", - "simple-html-tokenizer": "^0.1.1" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, - "svg-parser": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", - "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" - }, - "svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "requires": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "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==" - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" - } - } - }, - "swagger2openapi": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", - "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", - "requires": { - "call-me-maybe": "^1.0.1", - "node-fetch": "^2.6.1", - "node-fetch-h2": "^2.3.0", - "node-readfiles": "^0.2.0", - "oas-kit-common": "^1.0.8", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "oas-validator": "^5.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "dependencies": { - "cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - } - }, - "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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" - } - } - }, - "swiper": { - "version": "8.4.7", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", - "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", - "requires": { - "dom7": "^4.0.4", - "ssr-window": "^4.0.2" - } - }, - "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 - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" - }, - "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "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.16.5", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", - "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "dependencies": { - "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==" - } - } - }, - "terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", - "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "dependencies": { - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.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==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "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-hex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", - "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" - }, - "throat": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", - "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", - "dev": true - }, - "throttle-debounce": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", - "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==" - }, - "throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" - }, - "timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "requires": { - "setimmediate": "^1.0.4" - } - }, - "timespan": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", - "integrity": "sha512-0Jq9+58T2wbOyLth0EU+AUb6JMGCLaTWIykJFa7hyAybjVH9gpVMTfUAwo5fWAvtFt2Tjh/Elg8JtgNpnMnM8g==" - }, - "tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" - }, - "tiny-warning": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" - }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" - }, - "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==", - "requires": { - "is-number": "^7.0.0" - } - }, - "toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, - "totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==" - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "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" - } - }, - "trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==" - }, - "trim-trailing-lines": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", - "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==" - }, - "triple-beam": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", - "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==" - }, - "trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==" - }, - "ts-easing": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", - "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" - }, - "ts-keycode-enum": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", - "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" - }, - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - }, - "tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "devOptional": 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": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "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==", - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "peer": true - }, - "ua-parser-js": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", - "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==" - }, - "uglify-js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz", - "integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ==" - }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "requires": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - } - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==" - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==" - }, - "unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==" - }, - "unified": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", - "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - }, - "unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "requires": { - "crypto-random-string": "^2.0.0" - } - }, - "unist-builder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", - "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==" - }, - "unist-util-find-after": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", - "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", - "requires": { - "unist-util-is": "^4.0.0" - } - }, - "unist-util-generated": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", - "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==" - }, - "unist-util-is": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", - "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==" - }, - "unist-util-position": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", - "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==" - }, - "unist-util-remove": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", - "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", - "requires": { - "unist-util-is": "^4.0.0" - } - }, - "unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "unist-util-select": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", - "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", - "requires": { - "@types/unist": "^2.0.0", - "css-selector-parser": "^1.0.0", - "nth-check": "^2.0.0", - "zwitch": "^2.0.0" - }, - "dependencies": { - "zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" - } - } - }, - "unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "requires": { - "@types/unist": "^2.0.2" - } - }, - "unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - } - }, - "unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" - }, - "unload": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", - "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", - "requires": { - "@babel/runtime": "^7.6.2", - "detect-node": "^2.0.4" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" - }, - "untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "requires": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - } - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" - }, - "cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" - }, - "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==" - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "requires": { - "ci-info": "^2.0.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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==" - }, - "widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "requires": { - "string-width": "^4.0.0" - } - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - } - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { - "punycode": "^2.1.0" - } - }, - "urijs": { - "version": "1.19.11", - "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", - "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" - } - } - }, - "url-loader": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", - "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", - "requires": { - "loader-utils": "^2.0.0", - "mime-types": "^2.1.27", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "requires": { - "prepend-http": "^2.0.0" - } - }, - "url-template": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", - "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" - }, - "use-composed-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", - "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", - "requires": {} - }, - "use-isomorphic-layout-effect": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", - "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", - "requires": {} - }, - "use-latest": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", - "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", - "requires": { - "use-isomorphic-layout-effect": "^1.1.1" - } - }, - "use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "requires": {} - }, - "util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "requires": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" - }, - "utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - }, - "v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", - "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.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - } - } - }, - "validate.io-array": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", - "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" - }, - "validate.io-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", - "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" - }, - "validate.io-integer": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", - "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", - "requires": { - "validate.io-number": "^1.0.3" - } - }, - "validate.io-integer-array": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", - "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", - "requires": { - "validate.io-array": "^1.0.3", - "validate.io-integer": "^1.0.4" - } - }, - "validate.io-number": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", - "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" - }, - "value-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", - "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", - "requires": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" - } - }, - "vfile-location": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", - "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==" - }, - "vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - } - }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" - }, - "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" - } - }, - "wait-on": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", - "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", - "requires": { - "axios": "^0.25.0", - "joi": "^17.6.0", - "lodash": "^4.17.21", - "minimist": "^1.2.5", - "rxjs": "^7.5.4" - }, - "dependencies": { - "axios": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", - "requires": { - "follow-redirects": "^1.14.7" - } - } - } - }, - "walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "requires": { - "makeerror": "1.0.12" - } - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "web-namespaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", - "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==" - }, - "web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==" - }, - "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.75.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", - "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-bundle-analyzer": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", - "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", - "requires": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "gzip-size": "^6.0.0", - "lodash": "^4.17.20", - "opener": "^1.5.2", - "sirv": "^1.0.7", - "ws": "^7.3.1" - }, - "dependencies": { - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" - }, - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" - } - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", - "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "ws": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", - "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", - "requires": {} - } - } - }, - "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==", - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==" - }, - "webpackbar": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", - "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", - "requires": { - "chalk": "^4.1.0", - "consola": "^2.15.3", - "pretty-time": "^1.1.0", - "std-env": "^3.0.1" - } - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==" - }, - "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" - } - }, - "whatwg-fetch": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", - "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" - }, - "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" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "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==", - "dev": true, - "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-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "requires": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - } - }, - "which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - } - }, - "widest-line": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", - "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", - "requires": { - "string-width": "^5.0.1" - } - }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" - }, - "winston": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.10.0.tgz", - "integrity": "sha512-nT6SIDaE9B7ZRO0u3UvdrimG0HkB7dSTAgInQnNR2SOPJ4bvq5q79+pXLftKmP52lJGW15+H5MCK0nM9D3KB/g==", - "requires": { - "@colors/colors": "1.5.0", - "@dabh/diagnostics": "^2.0.2", - "async": "^3.2.3", - "is-stream": "^2.0.0", - "logform": "^2.4.0", - "one-time": "^1.0.0", - "readable-stream": "^3.4.0", - "safe-stable-stringify": "^2.3.1", - "stack-trace": "0.0.x", - "triple-beam": "^1.3.0", - "winston-transport": "^4.5.0" - }, - "dependencies": { - "safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" - } - } - }, - "winston-transport": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz", - "integrity": "sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==", - "requires": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", - "triple-beam": "^1.3.0" - } - }, - "wolfy87-eventemitter": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", - "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" - }, - "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==", - "devOptional": true - }, - "wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "requires": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" - }, - "ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "requires": { - "ansi-regex": "^6.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "wrench": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/wrench/-/wrench-1.3.9.tgz", - "integrity": "sha512-srTJQmLTP5YtW+F5zDuqjMEZqLLr/eJOZfDI5ibfPfRMeDh3oBUefAscuH0q5wBKE339ptH/S/0D18ZkfOfmKQ==" - }, - "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==", - "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.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "requires": {} - }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" - }, - "xml-formatter": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", - "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", - "requires": { - "xml-parser-xo": "^3.2.0" - } - }, - "xml-js": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", - "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", - "requires": { - "sax": "^1.2.4" - } - }, - "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 - }, - "xml-parser-xo": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", - "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==" - }, - "xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" - }, - "yaml-ast-parser": { - "version": "0.0.43", - "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", - "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" - }, - "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" - }, - "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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "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 - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true - }, - "zustand": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", - "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", - "requires": {} - }, - "zwitch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", - "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==" - } - } -} +{ + "name": "website", + "version": "0.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "0.0.0", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/plugin-ideal-image": "2.3.1", + "@docusaurus/preset-classic": "2.3.1", + "@docusaurus/theme-search-algolia": "2.3.1", + "@mdx-js/react": "^1.6.21", + "@monaco-editor/react": "^4.4.6", + "@stoplight/elements": "^7.7.17", + "@svgr/webpack": "^6.0.0", + "axios": "^0.27.2", + "classnames": "^2.3.1", + "clsx": "^1.1.1", + "color": "^3.1.2", + "core-js": "^3.20.0", + "feed": "^4.2.2", + "file-loader": "^6.2.0", + "fs": "0.0.2", + "gray-matter": "^4.0.3", + "hast-util-is-element": "^1.1.0", + "js-yaml": "^4.1.0", + "mobx": "^6.3.9", + "node-polyfill-webpack-plugin": "^1.1.4", + "papaparse": "^5.3.2", + "prism-react-renderer": "^1.2.1", + "query-string": "^8.1.0", + "raw-loader": "^4.0.2", + "react": "^17.0.1", + "react-dom": "^17.0.1", + "react-full-screen": "^1.1.1", + "react-is": "^18.1.0", + "react-tooltip": "^4.2.21", + "redoc": "^2.0.0-rc.57", + "rehype-katex": "^5.0.0", + "remark-math": "^3.0.1", + "sanitize-html": "^2.8.0", + "slugify": "^1.6.1", + "styled-components": "5.3.3", + "swiper": "^8.4.3", + "url-loader": "^4.1.1" + }, + "devDependencies": { + "@cypress/react": "^7.0.2", + "@cypress/webpack-dev-server": "^3.2.3", + "@docusaurus/eslint-plugin": "2.3.1", + "@swc/core": "^1.2.174", + "@swc/jest": "^0.2.20", + "@testing-library/jest-dom": "^5.16.2", + "@testing-library/react": "^12.1.3", + "@testing-library/user-event": "^13.5.0", + "@typescript-eslint/eslint-plugin": "^5.54.0", + "@typescript-eslint/parser": "^5.54.0", + "css-loader": "^3.4.2", + "cypress": "^12.6.0", + "dotenv": "^10.0.0", + "eslint": "^8.35.0", + "eslint-config-prettier": "^8.6.0", + "eslint-plugin-markdown": "^3.0.0", + "eslint-plugin-prettier": "^4.2.1", + "husky": "^8.0.3", + "jest": "^27.5.1", + "jest-cli": "^27.5.1", + "lint-staged": "^13.1.2", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "stream-http": "^3.2.0", + "style-loader": "^1.1.3", + "svg-inline-loader": "^0.8.2", + "tty-browserify": "0.0.1", + "webpack": "^5.75.0", + "webpack-dev-server": "^4.11.1" + }, + "optionalDependencies": { + "@dbt-labs/react-dbt-dag": "0.8.7" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", + "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", + "dev": true + }, + "node_modules/@algolia/autocomplete-core": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", + "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", + "dependencies": { + "@algolia/autocomplete-shared": "1.7.4" + } + }, + "node_modules/@algolia/autocomplete-preset-algolia": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", + "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", + "dependencies": { + "@algolia/autocomplete-shared": "1.7.4" + }, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/autocomplete-shared": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", + "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" + }, + "node_modules/@algolia/cache-browser-local-storage": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", + "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", + "dependencies": { + "@algolia/cache-common": "4.16.0" + } + }, + "node_modules/@algolia/cache-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", + "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" + }, + "node_modules/@algolia/cache-in-memory": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", + "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", + "dependencies": { + "@algolia/cache-common": "4.16.0" + } + }, + "node_modules/@algolia/client-account": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", + "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", + "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", + "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", + "dependencies": { + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", + "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-search": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", + "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/events": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", + "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" + }, + "node_modules/@algolia/logger-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", + "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" + }, + "node_modules/@algolia/logger-console": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", + "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", + "dependencies": { + "@algolia/logger-common": "4.16.0" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", + "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", + "dependencies": { + "@algolia/requester-common": "4.16.0" + } + }, + "node_modules/@algolia/requester-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", + "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" + }, + "node_modules/@algolia/requester-node-http": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", + "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", + "dependencies": { + "@algolia/requester-common": "4.16.0" + } + }, + "node_modules/@algolia/transporter": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", + "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", + "dependencies": { + "@algolia/cache-common": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/requester-common": "4.16.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", + "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.0", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.0", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.0", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", + "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", + "dependencies": { + "@babel/types": "^7.21.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", + "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", + "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "dependencies": { + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", + "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dependencies": { + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "dependencies": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "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": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "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.21.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", + "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", + "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "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==", + "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==", + "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==", + "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==", + "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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", + "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", + "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", + "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", + "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "dependencies": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", + "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "dependencies": { + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-simple-access": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", + "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", + "dependencies": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-identifier": "^7.19.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", + "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", + "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-constant-elements": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", + "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", + "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", + "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-jsx": "^7.18.6", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-development": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", + "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", + "dependencies": { + "@babel/plugin-transform-react-jsx": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-pure-annotations": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", + "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", + "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", + "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", + "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "dependencies": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-react": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", + "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-react-display-name": "^7.18.6", + "@babel/plugin-transform-react-jsx": "^7.18.6", + "@babel/plugin-transform-react-jsx-development": "^7.18.6", + "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", + "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.21.0", + "@babel/plugin-transform-typescript": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" + }, + "node_modules/@babel/runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", + "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", + "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", + "dependencies": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", + "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.2", + "@babel/types": "^7.21.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", + "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "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/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@cypress/react": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", + "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", + "dev": true, + "peerDependencies": { + "@types/react": "^16.9.16 || ^17.0.0", + "cypress": "*", + "react": "^=16.x || ^=17.x", + "react-dom": "^=16.x || ^=17.x" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@cypress/request": { + "version": "2.88.11", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", + "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "http-signature": "~1.3.6", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "performance-now": "^2.1.0", + "qs": "~6.10.3", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@cypress/request/node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/@cypress/webpack-dev-server": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", + "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", + "dev": true, + "dependencies": { + "find-up": "6.3.0", + "fs-extra": "9.1.0", + "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", + "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", + "local-pkg": "0.4.1", + "speed-measure-webpack-plugin": "1.4.2", + "tslib": "^2.3.1", + "webpack-dev-server": "^4.7.4", + "webpack-merge": "^5.4.0" + } + }, + "node_modules/@cypress/xvfb": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", + "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "lodash.once": "^4.1.1" + } + }, + "node_modules/@cypress/xvfb/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/@dabh/diagnostics": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", + "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", + "dependencies": { + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" + } + }, + "node_modules/@dbt-labs/react-dbt-dag": { + "version": "0.8.7", + "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", + "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", + "license": "ISC", + "optional": true, + "dependencies": { + "classnames": "^2.3.1", + "dagre": "^0.8.5", + "graphlib": "^2.1.8", + "lodash": "^4.17.21", + "react-flow-renderer": "^10.3.8" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@docsearch/css": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", + "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" + }, + "node_modules/@docsearch/react": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", + "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", + "dependencies": { + "@algolia/autocomplete-core": "1.7.4", + "@algolia/autocomplete-preset-algolia": "1.7.4", + "@docsearch/css": "3.3.3", + "algoliasearch": "^4.0.0" + }, + "peerDependencies": { + "@types/react": ">= 16.8.0 < 19.0.0", + "react": ">= 16.8.0 < 19.0.0", + "react-dom": ">= 16.8.0 < 19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/@docusaurus/core": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", + "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", + "dependencies": { + "@babel/core": "^7.18.6", + "@babel/generator": "^7.18.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.18.6", + "@babel/preset-env": "^7.18.6", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@babel/runtime": "^7.18.6", + "@babel/runtime-corejs3": "^7.18.6", + "@babel/traverse": "^7.18.8", + "@docusaurus/cssnano-preset": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@slorber/static-site-generator-webpack-plugin": "^4.0.7", + "@svgr/webpack": "^6.2.1", + "autoprefixer": "^10.4.7", + "babel-loader": "^8.2.5", + "babel-plugin-dynamic-import-node": "^2.3.3", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "clean-css": "^5.3.0", + "cli-table3": "^0.6.2", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "copy-webpack-plugin": "^11.0.0", + "core-js": "^3.23.3", + "css-loader": "^6.7.1", + "css-minimizer-webpack-plugin": "^4.0.0", + "cssnano": "^5.1.12", + "del": "^6.1.1", + "detect-port": "^1.3.0", + "escape-html": "^1.0.3", + "eta": "^2.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "html-minifier-terser": "^6.1.0", + "html-tags": "^3.2.0", + "html-webpack-plugin": "^5.5.0", + "import-fresh": "^3.3.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "mini-css-extract-plugin": "^2.6.1", + "postcss": "^8.4.14", + "postcss-loader": "^7.0.0", + "prompts": "^2.4.2", + "react-dev-utils": "^12.0.1", + "react-helmet-async": "^1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.3", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.3", + "rtl-detect": "^1.0.4", + "semver": "^7.3.7", + "serve-handler": "^6.1.3", + "shelljs": "^0.8.5", + "terser-webpack-plugin": "^5.3.3", + "tslib": "^2.4.0", + "update-notifier": "^5.1.0", + "url-loader": "^4.1.1", + "wait-on": "^6.0.1", + "webpack": "^5.73.0", + "webpack-bundle-analyzer": "^4.5.0", + "webpack-dev-server": "^4.9.3", + "webpack-merge": "^5.8.0", + "webpackbar": "^5.0.2" + }, + "bin": { + "docusaurus": "bin/docusaurus.mjs" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/core/node_modules/css-loader": { + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", + "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.19", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/@docusaurus/core/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/core/node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/cssnano-preset": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", + "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", + "dependencies": { + "cssnano-preset-advanced": "^5.3.8", + "postcss": "^8.4.14", + "postcss-sort-media-queries": "^4.2.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/eslint-plugin": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", + "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "^5.30.5", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "eslint": ">=6" + } + }, + "node_modules/@docusaurus/logger": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", + "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/lqip-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", + "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", + "dependencies": { + "@docusaurus/logger": "2.3.1", + "file-loader": "^6.2.0", + "lodash": "^4.17.21", + "sharp": "^0.30.7", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/mdx-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", + "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", + "dependencies": { + "@babel/parser": "^7.18.8", + "@babel/traverse": "^7.18.8", + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@mdx-js/mdx": "^1.6.22", + "escape-html": "^1.0.3", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "image-size": "^1.0.1", + "mdast-util-to-string": "^2.0.0", + "remark-emoji": "^2.2.0", + "stringify-object": "^3.3.0", + "tslib": "^2.4.0", + "unified": "^9.2.2", + "unist-util-visit": "^2.0.3", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/mdx-loader/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/module-type-aliases": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", + "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", + "dependencies": { + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/types": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "*", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/@docusaurus/plugin-content-blog": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", + "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "cheerio": "^1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "reading-time": "^1.5.0", + "tslib": "^2.4.0", + "unist-util-visit": "^2.0.3", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-content-docs": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", + "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@types/react-router-config": "^5.0.6", + "combine-promises": "^1.1.0", + "fs-extra": "^10.1.0", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-content-pages": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", + "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-debug": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", + "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "fs-extra": "^10.1.0", + "react-json-view": "^1.21.3", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-debug/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-google-analytics": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", + "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", + "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", + "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-ideal-image": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", + "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/lqip-loader": "2.3.1", + "@docusaurus/responsive-loader": "^1.7.0", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@endiliey/react-ideal-image": "^0.0.11", + "react-waypoint": "^10.3.0", + "sharp": "^0.30.7", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "jimp": "*", + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + }, + "peerDependenciesMeta": { + "jimp": { + "optional": true + } + } + }, + "node_modules/@docusaurus/plugin-sitemap": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", + "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "sitemap": "^7.1.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/preset-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", + "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/plugin-debug": "2.3.1", + "@docusaurus/plugin-google-analytics": "2.3.1", + "@docusaurus/plugin-google-gtag": "2.3.1", + "@docusaurus/plugin-google-tag-manager": "2.3.1", + "@docusaurus/plugin-sitemap": "2.3.1", + "@docusaurus/theme-classic": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-search-algolia": "2.3.1", + "@docusaurus/types": "2.3.1" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/react-loadable": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "dependencies": { + "@types/react": "*", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": "*" + } + }, + "node_modules/@docusaurus/responsive-loader": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", + "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", + "dependencies": { + "loader-utils": "^2.0.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "jimp": "*", + "sharp": "*" + }, + "peerDependenciesMeta": { + "jimp": { + "optional": true + }, + "sharp": { + "optional": true + } + } + }, + "node_modules/@docusaurus/theme-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", + "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@mdx-js/react": "^1.6.22", + "clsx": "^1.2.1", + "copy-text-to-clipboard": "^3.0.1", + "infima": "0.2.0-alpha.42", + "lodash": "^4.17.21", + "nprogress": "^0.2.0", + "postcss": "^8.4.14", + "prism-react-renderer": "^1.3.5", + "prismjs": "^1.28.0", + "react-router-dom": "^5.3.3", + "rtlcss": "^3.5.0", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", + "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", + "dependencies": { + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^1.2.1", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^1.3.5", + "tslib": "^2.4.0", + "use-sync-external-store": "^1.2.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", + "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", + "dependencies": { + "@docsearch/react": "^3.1.1", + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "algoliasearch": "^4.13.1", + "algoliasearch-helper": "^3.10.0", + "clsx": "^1.2.1", + "eta": "^2.0.0", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/theme-translations": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", + "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", + "dependencies": { + "fs-extra": "^10.1.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/theme-translations/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/types": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", + "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.6.0", + "react-helmet-async": "^1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0", + "webpack-merge": "^5.8.0" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/utils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", + "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", + "dependencies": { + "@docusaurus/logger": "2.3.1", + "@svgr/webpack": "^6.2.1", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "github-slugger": "^1.4.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.4.0", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "@docusaurus/types": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/types": { + "optional": true + } + } + }, + "node_modules/@docusaurus/utils-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", + "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", + "dependencies": { + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "@docusaurus/types": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/types": { + "optional": true + } + } + }, + "node_modules/@docusaurus/utils-validation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", + "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", + "dependencies": { + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "joi": "^17.6.0", + "js-yaml": "^4.1.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/utils/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "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==", + "dependencies": { + "@emotion/memoize": "0.7.4" + } + }, + "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==" + }, + "node_modules/@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "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/@endiliey/react-ideal-image": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", + "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", + "engines": { + "node": ">= 8.9.0", + "npm": "> 3" + }, + "peerDependencies": { + "prop-types": ">=15", + "react": ">=0.14.x", + "react-waypoint": ">=9.0.2" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", + "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", + "devOptional": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": 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==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", + "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@exodus/schemasafe": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", + "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" + }, + "node_modules/@faker-js/faker": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", + "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", + "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", + "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.4.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/react-fontawesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", + "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", + "dependencies": { + "prop-types": "^15.8.1" + }, + "peerDependencies": { + "@fortawesome/fontawesome-svg-core": "~1 || ~6", + "react": ">=16.3" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "devOptional": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "devOptional": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "devOptional": 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/load-nyc-config/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/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@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.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/console/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "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/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/core/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/create-cache-key-function": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", + "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", + "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/fake-timers/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "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/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@jest/reporters/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/@jest/schemas": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", + "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", + "dependencies": { + "@sinclair/typebox": "^0.25.16" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@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.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "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/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, + "node_modules/@juggle/resize-observer": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", + "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" + }, + "node_modules/@mdx-js/mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", + "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@mdx-js/util": "1.6.22", + "babel-plugin-apply-mdx-type-prop": "1.6.22", + "babel-plugin-extract-import-names": "1.6.22", + "camelcase-css": "2.0.1", + "detab": "2.0.4", + "hast-util-raw": "6.0.1", + "lodash.uniq": "4.5.0", + "mdast-util-to-hast": "10.0.1", + "remark-footnotes": "2.0.0", + "remark-mdx": "1.6.22", + "remark-parse": "8.0.3", + "remark-squeeze-paragraphs": "4.0.0", + "style-to-object": "0.3.0", + "unified": "9.2.0", + "unist-builder": "2.0.3", + "unist-util-visit": "2.0.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/mdx/node_modules/@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@mdx-js/mdx/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@mdx-js/mdx/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@mdx-js/mdx/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@mdx-js/mdx/node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/react": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/@mdx-js/util": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", + "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@monaco-editor/loader": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", + "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", + "dependencies": { + "state-local": "^1.0.6" + }, + "peerDependencies": { + "monaco-editor": ">= 0.21.0 < 1" + } + }, + "node_modules/@monaco-editor/react": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", + "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", + "dependencies": { + "@monaco-editor/loader": "^1.3.2", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "monaco-editor": ">= 0.25.0 < 1", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.21", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", + "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" + }, + "node_modules/@react-hook/debounce": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", + "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", + "dependencies": { + "@react-hook/latest": "^1.0.2" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/event": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", + "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/latest": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", + "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/passive-layout-effect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", + "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/resize-observer": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", + "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1", + "@react-hook/latest": "^1.0.2", + "@react-hook/passive-layout-effect": "^1.2.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/size": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", + "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", + "dependencies": { + "@react-hook/passive-layout-effect": "^1.2.0", + "@react-hook/resize-observer": "^1.2.1" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/throttle": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", + "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", + "dependencies": { + "@react-hook/latest": "^1.0.2" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/window-size": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", + "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", + "dependencies": { + "@react-hook/debounce": "^3.0.0", + "@react-hook/event": "^1.2.1", + "@react-hook/throttle": "^2.2.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-types/button": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", + "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", + "dependencies": { + "@react-types/shared": "^3.8.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/checkbox": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", + "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", + "dependencies": { + "@react-types/shared": "^3.18.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" + } + }, + "node_modules/@react-types/checkbox/node_modules/@react-types/shared": { + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", + "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" + } + }, + "node_modules/@react-types/radio": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", + "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", + "dependencies": { + "@react-types/shared": "^3.8.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/shared": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", + "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/switch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", + "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", + "dependencies": { + "@react-types/checkbox": "^3.2.3", + "@react-types/shared": "^3.8.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/textfield": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", + "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", + "dependencies": { + "@react-types/shared": "^3.9.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@redocly/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", + "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/@redocly/ajv/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==" + }, + "node_modules/@redocly/openapi-core": { + "version": "1.0.0-beta.123", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", + "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", + "dependencies": { + "@redocly/ajv": "^8.11.0", + "@types/node": "^14.11.8", + "colorette": "^1.2.0", + "js-levenshtein": "^1.1.6", + "js-yaml": "^4.1.0", + "lodash.isequal": "^4.5.0", + "minimatch": "^5.0.1", + "node-fetch": "^2.6.1", + "pluralize": "^8.0.0", + "yaml-ast-parser": "0.0.43" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@redocly/openapi-core/node_modules/@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" + }, + "node_modules/@redocly/openapi-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@redocly/openapi-core/node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" + }, + "node_modules/@redocly/openapi-core/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rehooks/component-size": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", + "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@sentry/browser": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", + "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", + "dependencies": { + "@sentry/core": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/core": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", + "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", + "dependencies": { + "@sentry/hub": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/hub": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", + "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", + "dependencies": { + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/hub/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/minimal": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", + "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", + "dependencies": { + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/minimal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/react": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", + "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", + "dependencies": { + "@sentry/browser": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "hoist-non-react-statics": "^3.3.2", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "react": "15.x || 16.x || 17.x || 18.x" + } + }, + "node_modules/@sentry/react/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/types": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", + "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/utils": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", + "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", + "dependencies": { + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/utils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sideway/address": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", + "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" + }, + "node_modules/@sinclair/typebox": { + "version": "0.25.24", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", + "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@slorber/static-site-generator-webpack-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", + "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", + "dependencies": { + "eval": "^0.1.8", + "p-map": "^4.0.0", + "webpack-sources": "^3.2.2" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@stoplight/elements": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", + "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", + "dependencies": { + "@stoplight/elements-core": "~7.7.17", + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "file-saver": "^2.0.5", + "lodash": "^4.17.19", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0" + }, + "engines": { + "node": ">=14.13" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/elements-core": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", + "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", + "dependencies": { + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-ref-parser": "^9.0.5", + "@stoplight/json-schema-sampler": "0.2.3", + "@stoplight/json-schema-viewer": "^4.9.0", + "@stoplight/markdown-viewer": "^5.6.0", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/mosaic-code-editor": "^1.33.0", + "@stoplight/mosaic-code-viewer": "^1.33.0", + "@stoplight/path": "^1.3.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "httpsnippet-lite": "^3.0.1", + "jotai": "1.3.9", + "json-schema": "^0.4.0", + "lodash": "^4.17.19", + "nanoid": "^3.1.32", + "prop-types": "^15.7.2", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0", + "react-router-hash-link": "^2.1.0", + "tslib": "^2.1.0", + "urijs": "^1.19.11", + "util": "^0.12.4", + "xml-formatter": "^2.6.1" + }, + "engines": { + "node": ">=14.13" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/http-spec": { + "version": "5.9.4", + "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", + "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", + "dependencies": { + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-generator": "1.0.2", + "@stoplight/types": "^13.15.0", + "@types/json-schema": "7.0.11", + "@types/swagger-schema-official": "~2.0.22", + "@types/type-is": "^1.6.3", + "fnv-plus": "^1.3.1", + "lodash.isequalwith": "^4.4.0", + "lodash.pick": "^4.4.0", + "lodash.pickby": "^4.6.0", + "openapi3-ts": "^2.0.2", + "postman-collection": "^4.1.2", + "tslib": "^2.3.1", + "type-is": "^1.6.18" + }, + "engines": { + "node": ">=14.13" + } + }, + "node_modules/@stoplight/json": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", + "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", + "dependencies": { + "@stoplight/ordered-object-literal": "^1.0.3", + "@stoplight/path": "^1.3.2", + "@stoplight/types": "^13.6.0", + "jsonc-parser": "~2.2.1", + "lodash": "^4.17.21", + "safe-stable-stringify": "^1.1" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/@stoplight/json-schema-generator": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", + "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", + "dependencies": { + "cross-fetch": "^3.1.5", + "json-promise": "1.1.x", + "minimist": "1.2.6", + "mkdirp": "0.5.x", + "pretty-data": "0.40.x" + }, + "bin": { + "json-schema-generator": "bin/cli.js" + } + }, + "node_modules/@stoplight/json-schema-generator/node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/@stoplight/json-schema-merge-allof": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", + "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", + "dependencies": { + "compute-lcm": "^1.1.0", + "json-schema-compare": "^0.2.2", + "lodash": "^4.17.4" + } + }, + "node_modules/@stoplight/json-schema-ref-parser": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", + "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", + "dependencies": { + "@jsdevtools/ono": "^7.1.3", + "@stoplight/path": "^1.3.2", + "@stoplight/yaml": "^4.0.2", + "call-me-maybe": "^1.0.1", + "fastestsmallesttextencoderdecoder": "^1.0.22", + "isomorphic-fetch": "^3.0.0", + "node-abort-controller": "^3.0.1" + } + }, + "node_modules/@stoplight/json-schema-sampler": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", + "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", + "dependencies": { + "@types/json-schema": "^7.0.7", + "json-pointer": "^0.6.1" + } + }, + "node_modules/@stoplight/json-schema-tree": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", + "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", + "dependencies": { + "@stoplight/json": "^3.12.0", + "@stoplight/json-schema-merge-allof": "^0.7.8", + "@stoplight/lifecycle": "^2.3.2", + "@types/json-schema": "^7.0.7", + "magic-error": "0.0.1" + }, + "engines": { + "node": ">=10.18" + } + }, + "node_modules/@stoplight/json-schema-viewer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", + "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", + "dependencies": { + "@stoplight/json": "^3.20.1", + "@stoplight/json-schema-tree": "^2.2.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@types/json-schema": "^7.0.7", + "classnames": "^2.2.6", + "fnv-plus": "^1.3.1", + "jotai": "^1.4.5", + "lodash": "^4.17.19" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@stoplight/markdown-viewer": "^5", + "@stoplight/mosaic": "^1.32", + "@stoplight/mosaic-code-viewer": "^1.32", + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/json-schema-viewer/node_modules/jotai": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", + "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", + "engines": { + "node": ">=12.20.0" + }, + "peerDependencies": { + "@babel/core": "*", + "@babel/template": "*", + "jotai-devtools": "*", + "jotai-immer": "*", + "jotai-optics": "*", + "jotai-redux": "*", + "jotai-tanstack-query": "*", + "jotai-urql": "*", + "jotai-valtio": "*", + "jotai-xstate": "*", + "jotai-zustand": "*", + "react": ">=16.8" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@babel/template": { + "optional": true + }, + "jotai-devtools": { + "optional": true + }, + "jotai-immer": { + "optional": true + }, + "jotai-optics": { + "optional": true + }, + "jotai-redux": { + "optional": true + }, + "jotai-tanstack-query": { + "optional": true + }, + "jotai-urql": { + "optional": true + }, + "jotai-valtio": { + "optional": true + }, + "jotai-xstate": { + "optional": true + }, + "jotai-zustand": { + "optional": true + } + } + }, + "node_modules/@stoplight/json/node_modules/jsonc-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", + "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" + }, + "node_modules/@stoplight/lifecycle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", + "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", + "dependencies": { + "tslib": "^2.3.1", + "wolfy87-eventemitter": "~5.2.8" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/@stoplight/markdown": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", + "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", + "dependencies": { + "@stoplight/types": "^12.3.0", + "@stoplight/yaml": "^4.2.2", + "github-slugger": "^1.3.0", + "hast-util-whitespace": "^2.0.0", + "lodash": "^4.17.21", + "mdast-util-to-string": "^3.1.0", + "remark-frontmatter": "^3.0.0", + "remark-gfm": "^1.0.0", + "remark-parse": "^9.0.0", + "remark-stringify": "^9.0.1", + "tslib": "^2.3.0", + "unified": "^9.2.1", + "unist-util-select": "^4.0.0", + "unist-util-visit": "^3.1.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/markdown-viewer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", + "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", + "dependencies": { + "@rehooks/component-size": "^1.0.3", + "@stoplight/markdown": "^3.1.3", + "@stoplight/react-error-boundary": "^2.0.0", + "deepmerge": "^4.2.2", + "hast-to-hyperscript": "^10.0.1", + "hast-util-raw": "7.0.0", + "hast-util-sanitize": "^4.0.0", + "hastscript": "^7.0.2", + "mdast-util-to-hast": "^11.1.1", + "remark-parse": "^9.0.0", + "unified": "^9.2.1", + "unist-builder": "^3.0.0", + "unist-util-select": "^4.0.1", + "unist-util-visit": "^3.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "@stoplight/mosaic": "^1.24.4", + "@stoplight/mosaic-code-viewer": "^1.24.4", + "react": ">=16.14", + "react-dom": ">=16.14" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" + }, + "node_modules/@stoplight/markdown-viewer/node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-to-hyperscript": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", + "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.1", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", + "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/unist": "^2.0.0", + "hastscript": "^7.0.0", + "property-information": "^6.0.0", + "vfile": "^5.0.0", + "vfile-location": "^4.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-parse-selector": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", + "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", + "dependencies": { + "@types/hast": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-raw": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", + "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/parse5": "^6.0.0", + "@types/unist": "^2.0.3", + "hast-util-from-parse5": "^7.0.0", + "hast-util-to-parse5": "^7.0.0", + "html-void-elements": "^2.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-to-parse5": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", + "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hastscript": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", + "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^3.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", + "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "@types/mdurl": "^1.0.0", + "mdast-util-definitions": "^5.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/@stoplight/markdown-viewer/node_modules/property-information": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", + "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dependencies": { + "mdast-util-from-markdown": "^0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/style-to-object": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", + "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-builder": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", + "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", + "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", + "dependencies": { + "@types/unist": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown/node_modules/@stoplight/types": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", + "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/markdown/node_modules/mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", + "dependencies": { + "@types/mdast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dependencies": { + "mdast-util-from-markdown": "^0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/mosaic": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", + "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/button": "3.4.1", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@react-types/textfield": "3.3.0", + "@stoplight/types": "^13.7.0", + "@types/react": "^17.0.3", + "@types/react-dom": "^17.0.3", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "peerDependencies": { + "react": ">= 16.14" + } + }, + "node_modules/@stoplight/mosaic-code-editor": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", + "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/mosaic-code-viewer": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "peerDependencies": { + "react": ">= 16.14" + } + }, + "node_modules/@stoplight/mosaic-code-editor/node_modules/use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1" + }, + "peerDependencies": { + "react": "16.8.0 - 18", + "react-dom": "16.8.0 - 18" + } + }, + "node_modules/@stoplight/mosaic-code-viewer": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", + "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "peerDependencies": { + "react": ">= 16.14" + } + }, + "node_modules/@stoplight/mosaic-code-viewer/node_modules/use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1" + }, + "peerDependencies": { + "react": "16.8.0 - 18", + "react-dom": "16.8.0 - 18" + } + }, + "node_modules/@stoplight/mosaic/node_modules/use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1" + }, + "peerDependencies": { + "react": "16.8.0 - 18", + "react-dom": "16.8.0 - 18" + } + }, + "node_modules/@stoplight/ordered-object-literal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", + "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/path": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", + "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/react-error-boundary": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", + "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", + "dependencies": { + "@sentry/react": "^6.13.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/types": { + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", + "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@stoplight/yaml": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", + "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", + "dependencies": { + "@stoplight/ordered-object-literal": "^1.0.1", + "@stoplight/types": "^13.0.0", + "@stoplight/yaml-ast-parser": "0.0.48", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=10.8" + } + }, + "node_modules/@stoplight/yaml-ast-parser": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", + "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" + }, + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", + "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", + "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", + "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", + "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", + "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", + "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", + "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-svg-component": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", + "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-preset": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", + "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", + "dependencies": { + "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", + "@svgr/babel-plugin-remove-jsx-attribute": "*", + "@svgr/babel-plugin-remove-jsx-empty-expression": "*", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", + "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", + "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", + "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", + "@svgr/babel-plugin-transform-svg-component": "^6.5.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/core": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", + "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "dependencies": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/hast-util-to-babel-ast": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", + "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", + "dependencies": { + "@babel/types": "^7.20.0", + "entities": "^4.4.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/plugin-jsx": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", + "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", + "dependencies": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/hast-util-to-babel-ast": "^6.5.1", + "svg-parser": "^2.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "^6.0.0" + } + }, + "node_modules/@svgr/plugin-svgo": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", + "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", + "dependencies": { + "cosmiconfig": "^7.0.1", + "deepmerge": "^4.2.2", + "svgo": "^2.8.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" + } + }, + "node_modules/@svgr/webpack": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", + "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", + "dependencies": { + "@babel/core": "^7.19.6", + "@babel/plugin-transform-react-constant-elements": "^7.18.12", + "@babel/preset-env": "^7.19.4", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@svgr/core": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "@svgr/plugin-svgo": "^6.5.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@swc/core": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", + "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", + "dev": true, + "hasInstallScript": true, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.3.37", + "@swc/core-darwin-x64": "1.3.37", + "@swc/core-linux-arm-gnueabihf": "1.3.37", + "@swc/core-linux-arm64-gnu": "1.3.37", + "@swc/core-linux-arm64-musl": "1.3.37", + "@swc/core-linux-x64-gnu": "1.3.37", + "@swc/core-linux-x64-musl": "1.3.37", + "@swc/core-win32-arm64-msvc": "1.3.37", + "@swc/core-win32-ia32-msvc": "1.3.37", + "@swc/core-win32-x64-msvc": "1.3.37" + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", + "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", + "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", + "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", + "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", + "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", + "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", + "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", + "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", + "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", + "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/jest": { + "version": "0.2.24", + "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", + "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", + "dev": true, + "dependencies": { + "@jest/create-cache-key-function": "^27.4.2", + "jsonc-parser": "^3.2.0" + }, + "engines": { + "npm": ">= 7.0.0" + }, + "peerDependencies": { + "@swc/core": "*" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@testing-library/dom": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", + "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@testing-library/jest-dom": { + "version": "5.16.5", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", + "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", + "dev": true, + "dependencies": { + "@adobe/css-tools": "^4.0.1", + "@babel/runtime": "^7.9.2", + "@types/testing-library__jest-dom": "^5.9.1", + "aria-query": "^5.0.0", + "chalk": "^3.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.5.6", + "lodash": "^4.17.15", + "redent": "^3.0.0" + }, + "engines": { + "node": ">=8", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/@testing-library/jest-dom/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/@testing-library/react": { + "version": "12.1.5", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", + "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^8.0.0", + "@types/react-dom": "<18.0.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "react": "<18.0.0", + "react-dom": "<18.0.0" + } + }, + "node_modules/@testing-library/react/node_modules/@testing-library/dom": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", + "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@testing-library/user-event": { + "version": "13.5.0", + "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", + "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.12.5" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + }, + "peerDependencies": { + "@testing-library/dom": ">=7.21.4" + } + }, + "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/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@types/aria-query": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", + "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "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.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/d3": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", + "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", + "optional": true, + "dependencies": { + "@types/d3-array": "*", + "@types/d3-axis": "*", + "@types/d3-brush": "*", + "@types/d3-chord": "*", + "@types/d3-color": "*", + "@types/d3-contour": "*", + "@types/d3-delaunay": "*", + "@types/d3-dispatch": "*", + "@types/d3-drag": "*", + "@types/d3-dsv": "*", + "@types/d3-ease": "*", + "@types/d3-fetch": "*", + "@types/d3-force": "*", + "@types/d3-format": "*", + "@types/d3-geo": "*", + "@types/d3-hierarchy": "*", + "@types/d3-interpolate": "*", + "@types/d3-path": "*", + "@types/d3-polygon": "*", + "@types/d3-quadtree": "*", + "@types/d3-random": "*", + "@types/d3-scale": "*", + "@types/d3-scale-chromatic": "*", + "@types/d3-selection": "*", + "@types/d3-shape": "*", + "@types/d3-time": "*", + "@types/d3-time-format": "*", + "@types/d3-timer": "*", + "@types/d3-transition": "*", + "@types/d3-zoom": "*" + } + }, + "node_modules/@types/d3-array": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", + "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", + "optional": true + }, + "node_modules/@types/d3-axis": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", + "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-brush": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", + "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-chord": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", + "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", + "optional": true + }, + "node_modules/@types/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", + "optional": true + }, + "node_modules/@types/d3-contour": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", + "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", + "optional": true, + "dependencies": { + "@types/d3-array": "*", + "@types/geojson": "*" + } + }, + "node_modules/@types/d3-delaunay": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", + "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", + "optional": true + }, + "node_modules/@types/d3-dispatch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", + "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", + "optional": true + }, + "node_modules/@types/d3-drag": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", + "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-dsv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", + "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", + "optional": true + }, + "node_modules/@types/d3-ease": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", + "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", + "optional": true + }, + "node_modules/@types/d3-fetch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", + "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", + "optional": true, + "dependencies": { + "@types/d3-dsv": "*" + } + }, + "node_modules/@types/d3-force": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", + "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", + "optional": true + }, + "node_modules/@types/d3-format": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", + "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", + "optional": true + }, + "node_modules/@types/d3-geo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", + "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", + "optional": true, + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/d3-hierarchy": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", + "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", + "optional": true + }, + "node_modules/@types/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", + "optional": true, + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@types/d3-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", + "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", + "optional": true + }, + "node_modules/@types/d3-polygon": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", + "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", + "optional": true + }, + "node_modules/@types/d3-quadtree": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", + "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", + "optional": true + }, + "node_modules/@types/d3-random": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", + "optional": true + }, + "node_modules/@types/d3-scale": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", + "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", + "optional": true, + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-scale-chromatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", + "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", + "optional": true + }, + "node_modules/@types/d3-selection": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", + "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", + "optional": true + }, + "node_modules/@types/d3-shape": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", + "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", + "optional": true, + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@types/d3-time": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", + "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", + "optional": true + }, + "node_modules/@types/d3-time-format": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", + "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", + "optional": true + }, + "node_modules/@types/d3-timer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", + "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", + "optional": true + }, + "node_modules/@types/d3-transition": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", + "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-zoom": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", + "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", + "optional": true, + "dependencies": { + "@types/d3-interpolate": "*", + "@types/d3-selection": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.21.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", + "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" + }, + "node_modules/@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/geojson": { + "version": "7946.0.10", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", + "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", + "optional": true + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/har-format": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", + "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" + }, + "node_modules/@types/hast": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/history": { + "version": "4.7.11", + "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", + "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" + }, + "node_modules/@types/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.10", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", + "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "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==", + "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==", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.4.0", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", + "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", + "dev": true, + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/jest/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/@types/jest/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@types/js-cookie": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", + "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "node_modules/@types/katex": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", + "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" + }, + "node_modules/@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + }, + "node_modules/@types/node": { + "version": "18.14.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", + "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" + }, + "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/parse5": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" + }, + "node_modules/@types/prettier": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "dev": true + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/react": { + "version": "17.0.53", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", + "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "17.0.19", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", + "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", + "dependencies": { + "@types/react": "^17" + } + }, + "node_modules/@types/react-router": { + "version": "5.1.20", + "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", + "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "node_modules/@types/react-router-config": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", + "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "node_modules/@types/react-router-dom": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", + "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "node_modules/@types/resize-observer-browser": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", + "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", + "optional": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + }, + "node_modules/@types/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", + "dependencies": { + "@types/node": "*" + } + }, + "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/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "node_modules/@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", + "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", + "dev": true + }, + "node_modules/@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", + "dev": true + }, + "node_modules/@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "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/swagger-schema-official": { + "version": "2.0.22", + "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", + "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" + }, + "node_modules/@types/tapable": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", + "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", + "dev": true + }, + "node_modules/@types/testing-library__jest-dom": { + "version": "5.14.5", + "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", + "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", + "dev": true, + "dependencies": { + "@types/jest": "*" + } + }, + "node_modules/@types/triple-beam": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", + "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" + }, + "node_modules/@types/type-is": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", + "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/uglify-js": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", + "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", + "dev": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "node_modules/@types/webpack": { + "version": "4.41.33", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", + "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "anymatch": "^3.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/@types/webpack-sources": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", + "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + } + }, + "node_modules/@types/webpack-sources/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@types/ws": { + "version": "8.5.4", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", + "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "node_modules/@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", + "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/type-utils": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", + "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", + "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", + "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", + "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", + "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", + "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", + "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.54.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "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==", + "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==" + }, + "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==" + }, + "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==" + }, + "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==", + "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==" + }, + "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==", + "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==", + "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==", + "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==" + }, + "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==", + "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==", + "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==", + "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==", + "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==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xobotyi/scrollbar-width": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", + "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" + }, + "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==" + }, + "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==" + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "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-globals/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-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "peerDependencies": { + "acorn": "^8" + } + }, + "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==", + "devOptional": 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/address": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "engines": { + "node": ">= 10.0.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/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/ajv-formats/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==" + }, + "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==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/algoliasearch": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", + "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.16.0", + "@algolia/cache-common": "4.16.0", + "@algolia/cache-in-memory": "4.16.0", + "@algolia/client-account": "4.16.0", + "@algolia/client-analytics": "4.16.0", + "@algolia/client-common": "4.16.0", + "@algolia/client-personalization": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/logger-console": "4.16.0", + "@algolia/requester-browser-xhr": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/requester-node-http": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/algoliasearch-helper": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", + "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", + "dependencies": { + "@algolia/events": "^4.0.1" + }, + "peerDependencies": { + "algoliasearch": ">= 3.1 < 6" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-align/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==" + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "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-escapes/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/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "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==", + "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.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "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/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/aria-query": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", + "dev": true, + "dependencies": { + "deep-equal": "^2.0.5" + } + }, + "node_modules/array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dev": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "dependencies": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "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/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", + "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", + "dev": true + }, + "node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dependencies": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "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.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", + "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@mdx-js/util": "1.6.22" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@babel/core": "^7.11.6" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "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==", + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-extract-import-names": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", + "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "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": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "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-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-styled-components": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", + "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + }, + "peerDependencies": { + "styled-components": ">= 2" + } + }, + "node_modules/babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" + }, + "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.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^27.5.1", + "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/bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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==" + }, + "node_modules/base16": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", + "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" + }, + "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/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dev": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "engines": { + "node": ">=0.6" + } + }, + "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==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/blob-util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", + "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", + "dev": true + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/bonjour-service": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", + "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", + "dependencies": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/boxen": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", + "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", + "dependencies": { + "ansi-align": "^3.0.1", + "camelcase": "^6.2.0", + "chalk": "^4.1.2", + "cli-boxes": "^3.0.0", + "string-width": "^5.0.1", + "type-fest": "^2.5.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "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==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/broadcast-channel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", + "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "detect-node": "^2.1.0", + "js-sha3": "0.8.0", + "microseconds": "0.2.0", + "nano-time": "1.0.0", + "oblivious-set": "1.0.0", + "rimraf": "3.0.2", + "unload": "2.2.0" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "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/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "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-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "node_modules/build": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/build/-/build-0.1.4.tgz", + "integrity": "sha512-KwbDJ/zrsU8KZRRMfoURG14cKIAStUlS8D5jBDvtrZbwO5FEkYqc3oB8HIhRiyD64A48w1lc+sOmQ+mmBw5U/Q==", + "dependencies": { + "cssmin": "0.3.x", + "jsmin": "1.x", + "jxLoader": "*", + "moo-server": "*", + "promised-io": "*", + "timespan": "2.x", + "uglify-js": "1.x", + "walker": "1.x", + "winston": "*", + "wrench": "1.3.x" + }, + "engines": { + "node": ">v0.4.12" + } + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cachedir": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", + "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "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/call-me-maybe": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", + "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" + }, + "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/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001470", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", + "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "dev": true + }, + "node_modules/ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/charset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", + "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/check-more-types": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", + "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "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==", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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/classcat": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", + "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", + "optional": true + }, + "node_modules/classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "node_modules/clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-boxes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cli-table3/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==" + }, + "node_modules/cli-table3/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate/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/cli-truncate/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/cliui/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/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/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/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==", + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-deep/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==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collapse-white-space": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dependencies": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + }, + "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==", + "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==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color/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/color/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" + }, + "node_modules/colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" + }, + "node_modules/colorspace": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", + "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", + "dependencies": { + "color": "^3.1.3", + "text-hex": "1.0.x" + } + }, + "node_modules/combine-promises": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", + "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==", + "engines": { + "node": ">=10" + } + }, + "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==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/comma-separated-tokens": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", + "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/compression/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/compute-gcd": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", + "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", + "dependencies": { + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "node_modules/compute-lcm": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", + "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", + "dependencies": { + "compute-gcd": "^1.2.1", + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "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/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/copy-text-to-clipboard": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", + "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-to-clipboard": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", + "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", + "dependencies": { + "toggle-selection": "^1.0.6" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/copy-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/globby": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin/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==" + }, + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/copy-webpack-plugin/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/core-js": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", + "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", + "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", + "dependencies": { + "browserslist": "^4.21.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-pure": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", + "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==", + "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": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dependencies": { + "node-fetch": "2.6.7" + } + }, + "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==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/css-declaration-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/css-in-js-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", + "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", + "dependencies": { + "hyphenate-style-name": "^1.0.3" + } + }, + "node_modules/css-loader": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", + "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/css-loader/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/css-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/css-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/css-loader/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/css-loader/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-loader/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/css-minimizer-webpack-plugin": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", + "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", + "dependencies": { + "cssnano": "^5.1.8", + "jest-worker": "^29.1.2", + "postcss": "^8.4.17", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@parcel/css": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "lightningcss": { + "optional": true + } + } + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/css-minimizer-webpack-plugin/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==" + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-selector-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", + "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" + }, + "node_modules/css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "dev": true + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssmin": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/cssmin/-/cssmin-0.3.2.tgz", + "integrity": "sha512-bynxGIAJ8ybrnFobjsQotIjA8HFDDgPwbeUWNXXXfR+B4f9kkxdcUyagJoQCSUOfMV+ZZ6bMn8bvbozlCzUGwQ==", + "bin": { + "cssmin": "bin/cssmin" + } + }, + "node_modules/cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "dependencies": { + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-preset-advanced": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", + "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", + "dependencies": { + "autoprefixer": "^10.4.12", + "cssnano-preset-default": "^5.2.14", + "postcss-discard-unused": "^5.1.0", + "postcss-merge-idents": "^5.1.1", + "postcss-reduce-idents": "^5.2.0", + "postcss-zindex": "^5.1.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "dependencies": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "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.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "node_modules/cypress": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", + "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@cypress/request": "^2.88.10", + "@cypress/xvfb": "^1.2.4", + "@types/node": "^14.14.31", + "@types/sinonjs__fake-timers": "8.1.1", + "@types/sizzle": "^2.3.2", + "arch": "^2.2.0", + "blob-util": "^2.0.2", + "bluebird": "^3.7.2", + "buffer": "^5.6.0", + "cachedir": "^2.3.0", + "chalk": "^4.1.0", + "check-more-types": "^2.24.0", + "cli-cursor": "^3.1.0", + "cli-table3": "~0.6.1", + "commander": "^5.1.0", + "common-tags": "^1.8.0", + "dayjs": "^1.10.4", + "debug": "^4.3.4", + "enquirer": "^2.3.6", + "eventemitter2": "6.4.7", + "execa": "4.1.0", + "executable": "^4.1.1", + "extract-zip": "2.0.1", + "figures": "^3.2.0", + "fs-extra": "^9.1.0", + "getos": "^3.2.1", + "is-ci": "^3.0.0", + "is-installed-globally": "~0.4.0", + "lazy-ass": "^1.6.0", + "listr2": "^3.8.3", + "lodash": "^4.17.21", + "log-symbols": "^4.0.0", + "minimist": "^1.2.6", + "ospath": "^1.2.2", + "pretty-bytes": "^5.6.0", + "proxy-from-env": "1.0.0", + "request-progress": "^3.0.0", + "semver": "^7.3.2", + "supports-color": "^8.1.1", + "tmp": "~0.2.1", + "untildify": "^4.0.0", + "yauzl": "^2.10.0" + }, + "bin": { + "cypress": "bin/cypress" + }, + "engines": { + "node": "^14.0.0 || ^16.0.0 || >=18.0.0" + } + }, + "node_modules/cypress/node_modules/@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", + "dev": true + }, + "node_modules/cypress/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/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-dispatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-drag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", + "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", + "optional": true, + "dependencies": { + "d3-dispatch": "1 - 3", + "d3-selection": "3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "optional": true, + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-selection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", + "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-transition": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", + "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "optional": true, + "dependencies": { + "d3-color": "1 - 3", + "d3-dispatch": "1 - 3", + "d3-ease": "1 - 3", + "d3-interpolate": "1 - 3", + "d3-timer": "1 - 3" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "d3-selection": "2 - 3" + } + }, + "node_modules/d3-zoom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", + "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", + "optional": true, + "dependencies": { + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "2 - 3", + "d3-transition": "2 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dagre": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", + "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", + "optional": true, + "dependencies": { + "graphlib": "^2.1.8", + "lodash": "^4.17.15" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "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/dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/decko": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", + "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" + }, + "node_modules/decode-uri-component": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", + "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==", + "engines": { + "node": ">=14.16" + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-equal": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", + "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-get-iterator": "^1.1.2", + "get-intrinsic": "^1.1.3", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.1", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "devOptional": true + }, + "node_modules/deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/default-gateway/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "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/default-gateway/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-gateway/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==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detab": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", + "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", + "dependencies": { + "repeat-string": "^1.5.4" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", + "engines": { + "node": ">=8" + } + }, + "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/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "node_modules/detect-port": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", + "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", + "dependencies": { + "address": "^1.0.1", + "debug": "4" + }, + "bin": { + "detect": "bin/detect-port.js", + "detect-port": "bin/detect-port.js" + } + }, + "node_modules/detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "dependencies": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "bin": { + "detect": "bin/detect-port", + "detect-port": "bin/detect-port" + }, + "engines": { + "node": ">= 4.2.1" + } + }, + "node_modules/detect-port-alt/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/detect-port-alt/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/diff-sequences": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", + "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" + }, + "node_modules/dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "devOptional": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true + }, + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dependencies": { + "utila": "~0.4" + } + }, + "node_modules/dom-helpers": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", + "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", + "dependencies": { + "@babel/runtime": "^7.1.2" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/dom7": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", + "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", + "dependencies": { + "ssr-window": "^4.0.0" + } + }, + "node_modules/domain-browser": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", + "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "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/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/dompurify": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", + "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" + }, + "node_modules/domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dot-prop/node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dev": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.315", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", + "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "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==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/emoticon": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", + "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "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/entities": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "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/error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/es-abstract": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", + "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.4", + "is-array-buffer": "^3.0.1", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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==", + "dev": true, + "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/es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" + }, + "node_modules/es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "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.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "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": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true, + "engines": { + "node": ">= 0.8.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": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", + "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", + "devOptional": true, + "dependencies": { + "@eslint/eslintrc": "^2.0.0", + "@eslint/js": "8.35.0", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", + "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-markdown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", + "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", + "dev": true, + "dependencies": { + "mdast-util-from-markdown": "^0.8.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "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==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "devOptional": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/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==", + "devOptional": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "devOptional": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "devOptional": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "devOptional": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "devOptional": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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==", + "devOptional": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "devOptional": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "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==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "devOptional": true, + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "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==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "devOptional": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": 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==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "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==", + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eta": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", + "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==", + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "url": "https://github.com/eta-dev/eta?sponsor=1" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eval": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", + "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", + "dependencies": { + "@types/node": "*", + "require-like": ">= 0.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/eventemitter2": { + "version": "6.4.7", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", + "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/executable": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", + "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", + "dev": true, + "dependencies": { + "pify": "^2.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/expect": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", + "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.4.3", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.4.3", + "jest-message-util": "^29.4.3", + "jest-util": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/express/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/express/node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/express/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "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==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "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==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "devOptional": true + }, + "node_modules/fast-loops": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", + "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "node_modules/fast-shallow-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", + "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" + }, + "node_modules/fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", + "dependencies": { + "punycode": "^1.3.2" + } + }, + "node_modules/fast-url-parser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, + "node_modules/fastest-stable-stringify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", + "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" + }, + "node_modules/fastestsmallesttextencoderdecoder": { + "version": "1.0.22", + "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", + "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fault": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", + "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/fbemitter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", + "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", + "dependencies": { + "fbjs": "^3.0.0" + } + }, + "node_modules/fbjs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", + "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", + "dependencies": { + "cross-fetch": "^3.1.5", + "fbjs-css-vars": "^1.0.0", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^0.7.30" + } + }, + "node_modules/fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/fecha": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" + }, + "node_modules/feed": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", + "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", + "dependencies": { + "xml-js": "^1.6.11" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "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==", + "devOptional": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/file-loader/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==", + "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/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/file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", + "engines": { + "node": ">= 0.4.0" + } + }, + "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==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/filter-obj": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", + "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "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-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "devOptional": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "devOptional": true + }, + "node_modules/flux": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", + "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", + "dependencies": { + "fbemitter": "^3.0.0", + "fbjs": "^3.0.1" + }, + "peerDependencies": { + "react": "^15.0.2 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" + }, + "node_modules/fnv-plus": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", + "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/foreach": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", + "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/fork-ts-checker-webpack-plugin": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", + "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", + "dependencies": { + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=10", + "yarn": ">=1.0.0" + }, + "peerDependencies": { + "eslint": ">= 6", + "typescript": ">= 2.7", + "vue-template-compiler": "*", + "webpack": ">= 4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin/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/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/formdata-node": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", + "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", + "dependencies": { + "node-domexception": "1.0.0", + "web-streams-polyfill": "4.0.0-beta.3" + }, + "engines": { + "node": ">= 12.20" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", + "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fscreen": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", + "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "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.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "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==", + "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.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "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": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/getos": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", + "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", + "dev": true, + "dependencies": { + "async": "^3.2.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" + }, + "node_modules/github-slugger": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", + "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "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==", + "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==" + }, + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "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==", + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/got/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/got/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "devOptional": true + }, + "node_modules/graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", + "optional": true, + "dependencies": { + "lodash": "^4.17.15" + } + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/gray-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/gray-matter/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==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "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.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hast-to-hyperscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", + "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "dependencies": { + "@types/unist": "^2.0.3", + "comma-separated-tokens": "^1.0.0", + "property-information": "^5.3.0", + "space-separated-tokens": "^1.0.0", + "style-to-object": "^0.3.0", + "unist-util-is": "^4.0.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-from-parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", + "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "dependencies": { + "@types/parse5": "^5.0.0", + "hastscript": "^6.0.0", + "property-information": "^5.0.0", + "vfile": "^4.0.0", + "vfile-location": "^3.2.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", + "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", + "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", + "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", + "dependencies": { + "@types/hast": "^2.0.0", + "hast-util-from-parse5": "^6.0.0", + "hast-util-to-parse5": "^6.0.0", + "html-void-elements": "^1.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/hast-util-sanitize": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", + "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", + "dependencies": { + "@types/hast": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-parse5": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", + "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "dependencies": { + "hast-to-hyperscript": "^9.0.0", + "property-information": "^5.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-text": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", + "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", + "dependencies": { + "hast-util-is-element": "^1.0.0", + "repeat-string": "^1.0.0", + "unist-util-find-after": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", + "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/history": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", + "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", + "dependencies": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^3.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^1.0.1" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "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/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "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/hpack.js/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/hpack.js/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/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-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" + }, + "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/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/html-void-elements": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", + "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/html-webpack-plugin": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "dependencies": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "webpack": "^5.20.0" + } + }, + "node_modules/html-webpack-plugin-4": { + "name": "html-webpack-plugin", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", + "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", + "dev": true, + "dependencies": { + "@types/html-minifier-terser": "^5.0.0", + "@types/tapable": "^1.0.5", + "@types/webpack": "^4.41.8", + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.20", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" + }, + "engines": { + "node": ">=6.9" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/@types/html-minifier-terser": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", + "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", + "dev": true + }, + "node_modules/html-webpack-plugin-4/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "dependencies": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/pretty-error": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "dev": true, + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/renderkid": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "dev": true, + "dependencies": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dev": true, + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/terser/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/html-webpack-plugin-5": { + "name": "html-webpack-plugin", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "dev": true, + "dependencies": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "webpack": "^5.20.0" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "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/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/http-reasons": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", + "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" + }, + "node_modules/http-signature": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", + "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^2.0.2", + "sshpk": "^1.14.1" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/http2-client": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", + "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/httpsnippet-lite": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", + "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", + "dependencies": { + "@types/har-format": "^1.2.10", + "formdata-node": "^4.4.1", + "stringify-object": "3.3.0" + }, + "engines": { + "node": ">=14.13" + } + }, + "node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true, + "bin": { + "husky": "lib/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/hyphenate-style-name": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", + "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" + }, + "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==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/icss-utils/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/icss-utils/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "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": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", + "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/immer": { + "version": "9.0.19", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", + "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "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-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "engines": { + "node": ">=4" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/infima": { + "version": "0.2.0-alpha.42", + "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", + "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==", + "engines": { + "node": ">=12" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "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/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "node_modules/inline-style-prefixer": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", + "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", + "dependencies": { + "css-in-js-utils": "^3.1.0", + "fast-loops": "^1.1.3" + } + }, + "node_modules/internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dependencies": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dev": true, + "dependencies": { + "ci-info": "^3.2.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "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==", + "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-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "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-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "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==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-word-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/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/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.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "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.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "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-changed-files/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/jest-changed-files/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/jest-changed-files/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/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-circus/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "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-cli/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "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-config/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-config/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", + "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/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/jest-diff/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "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.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", + "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-haste-map/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-haste-map/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-haste-map/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/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-jasmine2/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", + "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/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/jest-matcher-utils/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", + "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.4.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.4.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-message-util/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/jest-message-util/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.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.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-runner/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-runner/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/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-runtime/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-snapshot/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", + "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", + "dependencies": { + "@jest/types": "^29.4.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "dependencies": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", + "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.4.3", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/joi": { + "version": "17.8.3", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", + "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", + "dependencies": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/jotai": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", + "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", + "engines": { + "node": ">=12.7.0" + }, + "peerDependencies": { + "@babel/core": "*", + "@babel/template": "*", + "@urql/core": "*", + "immer": "*", + "optics-ts": "*", + "react": ">=16.8", + "react-query": "*", + "valtio": "*", + "wonka": "*", + "xstate": "*" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@babel/template": { + "optional": true + }, + "@urql/core": { + "optional": true + }, + "immer": { + "optional": true + }, + "optics-ts": { + "optional": true + }, + "react-query": { + "optional": true + }, + "valtio": { + "optional": true + }, + "wonka": { + "optional": true + }, + "xstate": { + "optional": true + } + } + }, + "node_modules/js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" + }, + "node_modules/js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "devOptional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "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": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "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.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/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/jsdom/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/jsdom/node_modules/tough-cookie": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", + "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsdom/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jsmin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/jsmin/-/jsmin-1.0.1.tgz", + "integrity": "sha512-OPuL5X/bFKgVdMvEIX3hnpx3jbVpFCrEM8pKPXjFkZUqg521r41ijdyTz7vACOhW6o1neVlcLyd+wkbK5fNHRg==", + "bin": { + "jsmin": "bin/jsmin" + }, + "engines": { + "node": ">=0.1.93" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" + }, + "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-pointer": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", + "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", + "dependencies": { + "foreach": "^2.0.4" + } + }, + "node_modules/json-promise": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", + "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", + "dependencies": { + "bluebird": "*" + } + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "node_modules/json-schema-compare": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", + "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", + "dependencies": { + "lodash": "^4.17.4" + } + }, + "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==" + }, + "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "devOptional": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsprim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", + "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "node_modules/jxLoader": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jxLoader/-/jxLoader-0.1.1.tgz", + "integrity": "sha512-ClEvAj3K68y8uKhub3RgTmcRPo5DfIWvtxqrKQdDPyZ1UVHIIKvVvjrAsJFSVL5wjv0rt5iH9SMCZ0XRKNzeUA==", + "dependencies": { + "js-yaml": "0.3.x", + "moo-server": "1.3.x", + "promised-io": "*", + "walker": "1.x" + }, + "engines": { + "node": ">v0.4.10" + } + }, + "node_modules/jxLoader/node_modules/js-yaml": { + "version": "0.3.7", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-0.3.7.tgz", + "integrity": "sha512-/7PsVDNP2tVe2Z1cF9kTEkjamIwz4aooDpRKmN1+g/9eePCgcxsv4QDvEbxO0EH+gdDD7MLyDoR6BASo3hH51g==", + "engines": { + "node": "> 0.4.11" + } + }, + "node_modules/katex": { + "version": "0.13.24", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", + "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], + "dependencies": { + "commander": "^8.0.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/katex/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "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==", + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lazy-ass": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", + "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", + "dev": true, + "engines": { + "node": "> 0.8" + } + }, + "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==", + "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==", + "devOptional": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/lint-staged": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", + "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", + "dev": true, + "dependencies": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.19", + "commander": "^9.4.1", + "debug": "^4.3.4", + "execa": "^6.1.0", + "lilconfig": "2.0.6", + "listr2": "^5.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.6.0", + "string-argv": "^0.3.1", + "yaml": "^2.1.3" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/lint-staged/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/lint-staged/node_modules/execa": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", + "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^3.0.1", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/lint-staged/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/lint-staged/node_modules/human-signals": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", + "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", + "dev": true, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/lint-staged/node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/listr2": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", + "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.19", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.8.0", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/lint-staged/node_modules/listr2/node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/listr2/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/lint-staged/node_modules/listr2/node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/listr2/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/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/lint-staged/node_modules/wrap-ansi/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/lint-staged/node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/yaml": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", + "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", + "dev": true, + "engines": { + "node": ">= 14" + } + }, + "node_modules/liquid-json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", + "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/listr2": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", + "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/listr2/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/listr2/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/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/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/local-pkg": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", + "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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.curry": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", + "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/lodash.flow": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", + "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lodash.isequalwith": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", + "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "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==", + "devOptional": true + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "dev": true + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "node_modules/lodash.pickby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", + "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/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/log-update/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/log-update/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/logform": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.5.1.tgz", + "integrity": "sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==", + "dependencies": { + "@colors/colors": "1.5.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" + } + }, + "node_modules/logform/node_modules/safe-stable-stringify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "engines": { + "node": ">=10" + } + }, + "node_modules/longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" + }, + "node_modules/lz-string": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", + "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", + "dev": true, + "bin": { + "lz-string": "bin/bin.js" + } + }, + "node_modules/magic-error": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", + "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==", + "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==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/mark.js": { + "version": "8.11.1", + "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", + "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" + }, + "node_modules/markdown-escapes": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "dependencies": { + "repeat-string": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/marked": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", + "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/match-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", + "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "remove-accents": "0.4.2" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdast-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "dependencies": { + "unist-util-remove": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", + "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", + "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", + "dependencies": { + "escape-string-regexp": "^4.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-frontmatter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", + "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", + "dependencies": { + "micromark-extension-frontmatter": "^0.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", + "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", + "dependencies": { + "mdast-util-gfm-autolink-literal": "^0.1.0", + "mdast-util-gfm-strikethrough": "^0.2.0", + "mdast-util-gfm-table": "^0.1.0", + "mdast-util-gfm-task-list-item": "^0.1.0", + "mdast-util-to-markdown": "^0.6.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", + "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", + "dependencies": { + "ccount": "^1.0.0", + "mdast-util-find-and-replace": "^1.1.0", + "micromark": "^2.11.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", + "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", + "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", + "dependencies": { + "markdown-table": "^2.0.0", + "mdast-util-to-markdown": "~0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", + "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", + "dependencies": { + "mdast-util-to-markdown": "~0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", + "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^4.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", + "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", + "dependencies": { + "fs-monkey": "^1.0.3" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "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==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "node_modules/micromark-extension-frontmatter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", + "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", + "dependencies": { + "fault": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", + "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", + "dependencies": { + "micromark": "~2.11.0", + "micromark-extension-gfm-autolink-literal": "~0.5.0", + "micromark-extension-gfm-strikethrough": "~0.6.5", + "micromark-extension-gfm-table": "~0.4.0", + "micromark-extension-gfm-tagfilter": "~0.3.0", + "micromark-extension-gfm-task-list-item": "~0.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", + "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", + "dependencies": { + "micromark": "~2.11.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", + "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", + "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", + "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", + "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/microseconds": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", + "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-format": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", + "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", + "dependencies": { + "charset": "^1.0.0" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", + "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/mini-css-extract-plugin/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==" + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "node_modules/mobx": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", + "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mobx" + } + }, + "node_modules/mobx-react": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", + "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", + "dependencies": { + "mobx-react-lite": "^3.4.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mobx" + }, + "peerDependencies": { + "mobx": "^6.1.0", + "react": "^16.8.0 || ^17 || ^18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/mobx-react-lite": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", + "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mobx" + }, + "peerDependencies": { + "mobx": "^6.1.0", + "react": "^16.8.0 || ^17 || ^18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/monaco-editor": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", + "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", + "peer": true + }, + "node_modules/moo-server": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/moo-server/-/moo-server-1.3.0.tgz", + "integrity": "sha512-9A8/eor2DXwpv1+a4pZAAydqLFVrWoKoO1fzdzqLUhYVXAO1Kgd1FR2gFZi7YdHzF0s4W8cDNwCfKJQrvLqxDw==", + "engines": { + "node": ">v0.4.10" + } + }, + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "engines": { + "node": ">=10" + } + }, + "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==" + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/nano-memoize": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", + "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" + }, + "node_modules/nano-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", + "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", + "dependencies": { + "big-integer": "^1.6.16" + } + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "devOptional": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "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==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-abi": { + "version": "3.33.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", + "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", + "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" + }, + "node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "dependencies": { + "lodash": "^4.17.21" + } + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch-h2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", + "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", + "dependencies": { + "http2-client": "^1.2.5" + }, + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-polyfill-webpack-plugin": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", + "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", + "dependencies": { + "assert": "^2.0.0", + "browserify-zlib": "^0.2.0", + "buffer": "^6.0.3", + "console-browserify": "^1.2.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.12.0", + "domain-browser": "^4.19.0", + "events": "^3.3.0", + "filter-obj": "^2.0.2", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "punycode": "^2.1.1", + "querystring-es3": "^0.2.1", + "readable-stream": "^3.6.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.3.0", + "timers-browserify": "^2.0.12", + "tty-browserify": "^0.0.1", + "url": "^0.11.0", + "util": "^0.12.4", + "vm-browserify": "^1.1.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "webpack": ">=5" + } + }, + "node_modules/node-polyfill-webpack-plugin/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "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.2.1" + } + }, + "node_modules/node-readfiles": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", + "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", + "dependencies": { + "es6-promise": "^3.2.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + }, + "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==", + "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": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nwsapi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "dev": true + }, + "node_modules/oas-kit-common": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", + "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", + "dependencies": { + "fast-safe-stringify": "^2.0.7" + } + }, + "node_modules/oas-linter": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", + "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", + "dependencies": { + "@exodus/schemasafe": "^1.0.0-rc.2", + "should": "^13.2.1", + "yaml": "^1.10.0" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/oas-resolver": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", + "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", + "dependencies": { + "node-fetch-h2": "^2.3.0", + "oas-kit-common": "^1.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "bin": { + "resolve": "resolve.js" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/oas-resolver/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/oas-resolver/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==" + }, + "node_modules/oas-resolver/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver/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==", + "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/oas-resolver/node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/oas-resolver/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/oas-schema-walker": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", + "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==", + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/oas-validator": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", + "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", + "dependencies": { + "call-me-maybe": "^1.0.1", + "oas-kit-common": "^1.0.8", + "oas-linter": "^3.2.2", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "reftools": "^1.1.9", + "should": "^13.2.1", + "yaml": "^1.10.0" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "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.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "dev": true, + "dependencies": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/oblivious-set": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", + "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "dependencies": { + "fn.name": "1.x.x" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/openapi-sampler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", + "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", + "dependencies": { + "@types/json-schema": "^7.0.7", + "json-pointer": "0.6.2" + } + }, + "node_modules/openapi3-ts": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", + "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", + "dependencies": { + "yaml": "^1.10.2" + } + }, + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "bin": { + "opener": "bin/opener-bin.js" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "devOptional": 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/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, + "node_modules/ospath": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", + "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", + "dev": true + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "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/papaparse": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", + "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "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-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dependencies": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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/parse-numeric-range": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + }, + "node_modules/parse-srcset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", + "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "dependencies": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" + }, + "node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "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": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "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==", + "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-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/path-to-regexp/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "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/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "node_modules/perfect-scrollbar": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", + "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "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==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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/pkg-dir/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==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/polished": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", + "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", + "dependencies": { + "@babel/runtime": "^7.17.8" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-calc": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "dependencies": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-unused": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", + "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-loader": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", + "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-merge-idents": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", + "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", + "dependencies": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "dependencies": { + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "dependencies": { + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-extract-imports/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-extract-imports/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "dependencies": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-local-by-default/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-local-by-default/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-scope/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-scope/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "dependencies": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "node_modules/postcss-modules-values/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-values/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "dependencies": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "dependencies": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-idents": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", + "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sort-media-queries": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", + "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", + "dependencies": { + "sort-css-media-queries": "2.1.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.4.16" + } + }, + "node_modules/postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/postcss-zindex": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", + "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postman-collection": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", + "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", + "dependencies": { + "@faker-js/faker": "5.5.3", + "file-type": "3.9.0", + "http-reasons": "0.1.0", + "iconv-lite": "0.6.3", + "liquid-json": "0.3.1", + "lodash": "4.17.21", + "mime-format": "2.0.1", + "mime-types": "2.1.35", + "postman-url-encoder": "3.0.5", + "semver": "7.3.8", + "uuid": "8.3.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postman-collection/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/postman-url-encoder": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", + "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prebuild-install": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", + "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "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==", + "devOptional": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/prettier": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", + "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", + "dev": true, + "peer": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==", + "engines": { + "node": "*" + } + }, + "node_modules/pretty-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", + "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^3.0.0" + } + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "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/pretty-format/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==", + "dev": true + }, + "node_modules/pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/prism-react-renderer": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", + "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", + "peerDependencies": { + "react": ">=0.14.9" + } + }, + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "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/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/promised-io": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/promised-io/-/promised-io-0.3.6.tgz", + "integrity": "sha512-bNwZusuNIW4m0SPR8jooSyndD35ggirHlxVl/UhIaZD/F0OBv9ebfc6tNmbpZts3QXHggkjIBH8lvtnzhtcz0A==" + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "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/property-information": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", + "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", + "dependencies": { + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-from-env": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", + "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", + "dev": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pure-color": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", + "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" + }, + "node_modules/qs": { + "version": "6.10.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", + "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/query-string": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", + "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", + "dependencies": { + "decode-uri-component": "^0.4.1", + "filter-obj": "^5.1.0", + "split-on-first": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/query-string/node_modules/filter-obj": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", + "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "dependencies": { + "inherits": "~2.0.3" + } + }, + "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==", + "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==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", + "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/raw-loader/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==", + "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/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "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/react-base16-styling": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", + "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", + "dependencies": { + "base16": "^1.0.0", + "lodash.curry": "^4.0.1", + "lodash.flow": "^3.3.0", + "pure-color": "^1.2.0" + } + }, + "node_modules/react-dev-utils": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", + "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", + "dependencies": { + "@babel/code-frame": "^7.16.0", + "address": "^1.1.2", + "browserslist": "^4.18.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "detect-port-alt": "^1.1.6", + "escape-string-regexp": "^4.0.0", + "filesize": "^8.0.6", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^6.5.0", + "global-modules": "^2.0.0", + "globby": "^11.0.4", + "gzip-size": "^6.0.0", + "immer": "^9.0.7", + "is-root": "^2.1.0", + "loader-utils": "^3.2.0", + "open": "^8.4.0", + "pkg-up": "^3.1.0", + "prompts": "^2.4.2", + "react-error-overlay": "^6.0.11", + "recursive-readdir": "^2.2.2", + "shell-quote": "^1.7.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/react-dev-utils/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/react-dev-utils/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/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==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/react-dev-utils/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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-error-overlay": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", + "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" + }, + "node_modules/react-fast-compare": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", + "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" + }, + "node_modules/react-flow-renderer": { + "version": "10.3.17", + "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", + "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", + "deprecated": "react-flow-renderer has been renamed to reactflow, please use this package from now on https://reactflow.dev/docs/guides/migrate-to-v11/", + "optional": true, + "dependencies": { + "@babel/runtime": "^7.18.9", + "@types/d3": "^7.4.0", + "@types/resize-observer-browser": "^0.1.7", + "classcat": "^5.0.3", + "d3-drag": "^3.0.0", + "d3-selection": "^3.0.0", + "d3-zoom": "^3.0.0", + "zustand": "^3.7.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "16 || 17 || 18", + "react-dom": "16 || 17 || 18" + } + }, + "node_modules/react-full-screen": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", + "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", + "dependencies": { + "fscreen": "^1.0.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">= 16.8.0" + } + }, + "node_modules/react-helmet-async": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", + "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "invariant": "^2.2.4", + "prop-types": "^15.7.2", + "react-fast-compare": "^3.2.0", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": "^16.6.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.6.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/react-json-view": { + "version": "1.21.3", + "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", + "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", + "dependencies": { + "flux": "^4.0.1", + "react-base16-styling": "^0.6.0", + "react-lifecycles-compat": "^3.0.4", + "react-textarea-autosize": "^8.3.2" + }, + "peerDependencies": { + "react": "^17.0.0 || ^16.3.0 || ^15.5.4", + "react-dom": "^17.0.0 || ^16.3.0 || ^15.5.4" + } + }, + "node_modules/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "node_modules/react-loadable": { + "name": "@docusaurus/react-loadable", + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "dependencies": { + "@types/react": "*", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": "*" + } + }, + "node_modules/react-loadable-ssr-addon-v5-slorber": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", + "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", + "dependencies": { + "@babel/runtime": "^7.10.3" + }, + "engines": { + "node": ">=10.13.0" + }, + "peerDependencies": { + "react-loadable": "*", + "webpack": ">=4.41.1 || 5.x" + } + }, + "node_modules/react-overflow-list": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", + "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", + "dependencies": { + "react-use": "^17.3.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">=16" + } + }, + "node_modules/react-overflow-list/node_modules/react-use": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", + "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", + "dependencies": { + "@types/js-cookie": "^2.2.6", + "@xobotyi/scrollbar-width": "^1.9.5", + "copy-to-clipboard": "^3.3.1", + "fast-deep-equal": "^3.1.3", + "fast-shallow-equal": "^1.0.0", + "js-cookie": "^2.2.1", + "nano-css": "^5.3.1", + "react-universal-interface": "^0.6.2", + "resize-observer-polyfill": "^1.5.1", + "screenfull": "^5.1.0", + "set-harmonic-interval": "^1.0.1", + "throttle-debounce": "^3.0.1", + "ts-easing": "^0.2.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-overflow-list/node_modules/react-use/node_modules/nano-css": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", + "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", + "dependencies": { + "css-tree": "^1.1.2", + "csstype": "^3.0.6", + "fastest-stable-stringify": "^2.0.2", + "inline-style-prefixer": "^6.0.0", + "rtl-css-js": "^1.14.0", + "sourcemap-codec": "^1.4.8", + "stacktrace-js": "^2.0.2", + "stylis": "^4.0.6" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/react-query": { + "version": "3.39.3", + "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", + "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "broadcast-channel": "^3.4.1", + "match-sorter": "^6.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/react-router": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", + "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "hoist-non-react-statics": "^3.1.0", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.2", + "react-is": "^16.6.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/react-router-config": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", + "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", + "dependencies": { + "@babel/runtime": "^7.1.2" + }, + "peerDependencies": { + "react": ">=15", + "react-router": ">=5" + } + }, + "node_modules/react-router-dom": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", + "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.3.4", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/react-router-hash-link": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", + "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">=15", + "react-router-dom": ">=4" + } + }, + "node_modules/react-router/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/react-tabs": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", + "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", + "dependencies": { + "clsx": "^1.1.0", + "prop-types": "^15.5.0" + }, + "peerDependencies": { + "react": "^16.3.0 || ^17.0.0-0" + } + }, + "node_modules/react-textarea-autosize": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", + "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", + "dependencies": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-tooltip": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", + "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", + "dependencies": { + "prop-types": "^15.8.1", + "uuid": "^7.0.3" + }, + "engines": { + "npm": ">=6.13" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-dom": ">=16.0.0" + } + }, + "node_modules/react-tooltip/node_modules/uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/react-universal-interface": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", + "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", + "peerDependencies": { + "react": "*", + "tslib": "*" + } + }, + "node_modules/react-waypoint": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", + "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "consolidated-events": "^1.1.0 || ^2.0.0", + "prop-types": "^15.0.0", + "react-is": "^17.0.1 || ^18.0.0" + }, + "peerDependencies": { + "react": "^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", + "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/recursive-readdir": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "dependencies": { + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/redoc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", + "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", + "dependencies": { + "@redocly/openapi-core": "^1.0.0-beta.104", + "classnames": "^2.3.1", + "decko": "^1.2.0", + "dompurify": "^2.2.8", + "eventemitter3": "^4.0.7", + "json-pointer": "^0.6.2", + "lunr": "^2.3.9", + "mark.js": "^8.11.1", + "marked": "^4.0.15", + "mobx-react": "^7.2.0", + "openapi-sampler": "^1.3.0", + "path-browserify": "^1.0.1", + "perfect-scrollbar": "^1.5.5", + "polished": "^4.1.3", + "prismjs": "^1.27.0", + "prop-types": "^15.7.2", + "react-tabs": "^3.2.2", + "slugify": "~1.4.7", + "stickyfill": "^1.1.1", + "style-loader": "^3.3.1", + "swagger2openapi": "^7.0.6", + "url-template": "^2.0.8" + }, + "engines": { + "node": ">=6.9", + "npm": ">=3.0.0" + }, + "peerDependencies": { + "core-js": "^3.1.4", + "mobx": "^6.0.4", + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0", + "styled-components": "^4.1.1 || ^5.1.1" + } + }, + "node_modules/redoc/node_modules/slugify": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", + "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/redoc/node_modules/style-loader": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", + "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/reftools": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", + "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==", + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "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==" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "node_modules/regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "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==", + "devOptional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", + "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "dependencies": { + "rc": "1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "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": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/rehype-katex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", + "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "dependencies": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.13.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-parse": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", + "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", + "dependencies": { + "hast-util-from-parse5": "^6.0.0", + "parse5": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-parse/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remark-emoji": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", + "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", + "dependencies": { + "emoticon": "^3.2.0", + "node-emoji": "^1.10.0", + "unist-util-visit": "^2.0.3" + } + }, + "node_modules/remark-footnotes": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", + "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-frontmatter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", + "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", + "dependencies": { + "mdast-util-frontmatter": "^0.2.0", + "micromark-extension-frontmatter": "^0.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-gfm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", + "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", + "dependencies": { + "mdast-util-gfm": "^0.1.0", + "micromark-extension-gfm": "^0.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-math": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", + "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", + "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@mdx-js/util": "1.6.22", + "is-alphabetical": "1.0.4", + "remark-parse": "8.0.3", + "unified": "9.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx/node_modules/@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/remark-mdx/node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/remark-mdx/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/remark-mdx/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/remark-mdx/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/remark-mdx/node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dependencies": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "dependencies": { + "mdast-squeeze-paragraphs": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", + "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remove-accents": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", + "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" + }, + "node_modules/renderkid": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", + "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", + "dependencies": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^6.0.1" + } + }, + "node_modules/renderkid/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/renderkid/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/request-progress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", + "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", + "dev": true, + "dependencies": { + "throttleit": "^1.0.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-like": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", + "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==", + "engines": { + "node": "*" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "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-cwd/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/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/resolve-pathname": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", + "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rtl-css-js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", + "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", + "dependencies": { + "@babel/runtime": "^7.1.2" + } + }, + "node_modules/rtl-detect": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", + "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" + }, + "node_modules/rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "dependencies": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "bin": { + "rtlcss": "bin/rtlcss.js" + } + }, + "node_modules/rtlcss/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/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==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/rtlcss/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "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/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "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/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-stable-stringify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", + "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" + }, + "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/sanitize-html": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", + "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", + "dependencies": { + "deepmerge": "^4.2.2", + "escape-string-regexp": "^4.0.0", + "htmlparser2": "^8.0.0", + "is-plain-object": "^5.0.0", + "parse-srcset": "^1.0.2", + "postcss": "^8.3.11" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "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==", + "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/screenfull": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", + "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==", + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "node_modules/selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "dependencies": { + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/send/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-handler": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", + "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", + "dependencies": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + } + }, + "node_modules/serve-handler/node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-harmonic-interval": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", + "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==", + "engines": { + "node": ">=6.9" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "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==", + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "node_modules/sharp": { + "version": "0.30.7", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", + "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", + "hasInstallScript": true, + "dependencies": { + "color": "^4.2.3", + "detect-libc": "^2.0.1", + "node-addon-api": "^5.0.0", + "prebuild-install": "^7.1.1", + "semver": "^7.3.7", + "simple-get": "^4.0.1", + "tar-fs": "^2.1.1", + "tunnel-agent": "^0.6.0" + }, + "engines": { + "node": ">=12.13.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/sharp/node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" + } + }, + "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==", + "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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", + "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/should": { + "version": "13.2.3", + "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", + "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", + "dependencies": { + "should-equal": "^2.0.0", + "should-format": "^3.0.3", + "should-type": "^1.4.0", + "should-type-adaptors": "^1.0.1", + "should-util": "^1.0.0" + } + }, + "node_modules/should-equal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", + "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", + "dependencies": { + "should-type": "^1.4.0" + } + }, + "node_modules/should-format": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", + "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", + "dependencies": { + "should-type": "^1.3.0", + "should-type-adaptors": "^1.0.1" + } + }, + "node_modules/should-type": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", + "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" + }, + "node_modules/should-type-adaptors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", + "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", + "dependencies": { + "should-type": "^1.3.0", + "should-util": "^1.0.0" + } + }, + "node_modules/should-util": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", + "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" + }, + "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==", + "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.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "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/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "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": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/simple-html-tokenizer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", + "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", + "dev": true + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/sirv": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", + "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "dependencies": { + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^1.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/sitemap": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", + "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", + "dependencies": { + "@types/node": "^17.0.5", + "@types/sax": "^1.2.1", + "arg": "^5.0.0", + "sax": "^1.2.4" + }, + "bin": { + "sitemap": "dist/cli.js" + }, + "engines": { + "node": ">=12.0.0", + "npm": ">=5.6.0" + } + }, + "node_modules/sitemap/node_modules/@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/slugify": { + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", + "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/sort-css-media-queries": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", + "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==", + "engines": { + "node": ">= 6.3.0" + } + }, + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead" + }, + "node_modules/space-separated-tokens": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", + "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/speed-measure-webpack-plugin": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", + "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "webpack": "^1 || ^2 || ^3 || ^4 || ^5" + } + }, + "node_modules/split-on-first": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", + "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dev": true, + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ssr-window": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", + "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" + }, + "node_modules/stack-generator": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", + "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "engines": { + "node": "*" + } + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "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/stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" + }, + "node_modules/stacktrace-gps": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", + "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", + "dependencies": { + "source-map": "0.5.6", + "stackframe": "^1.3.4" + } + }, + "node_modules/stacktrace-gps/node_modules/source-map": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stacktrace-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", + "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", + "dependencies": { + "error-stack-parser": "^2.0.6", + "stack-generator": "^2.0.5", + "stacktrace-gps": "^3.0.4" + } + }, + "node_modules/state-local": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", + "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" + }, + "node_modules/state-toggle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", + "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" + }, + "node_modules/stickyfill": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", + "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "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": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "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-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-loader": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/style-to-object": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", + "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/styled-components": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", + "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", + "dependencies": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^0.8.8", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0", + "react-is": ">= 16.8.0" + } + }, + "node_modules/styled-components/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/styled-components/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/stylehacks": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-inline-loader": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", + "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", + "dev": true, + "dependencies": { + "loader-utils": "^1.1.0", + "object-assign": "^4.0.1", + "simple-html-tokenizer": "^0.1.1" + } + }, + "node_modules/svg-inline-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/svg-inline-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/svgo/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==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/svgo/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/svgo/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/svgo/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/svgo/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/svgo/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/swagger2openapi": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", + "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", + "dependencies": { + "call-me-maybe": "^1.0.1", + "node-fetch": "^2.6.1", + "node-fetch-h2": "^2.3.0", + "node-readfiles": "^0.2.0", + "oas-kit-common": "^1.0.8", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "oas-validator": "^5.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "bin": { + "boast": "boast.js", + "oas-validate": "oas-validate.js", + "swagger2openapi": "swagger2openapi.js" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/swagger2openapi/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/swagger2openapi/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==" + }, + "node_modules/swagger2openapi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/swagger2openapi/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==", + "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/swagger2openapi/node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/swagger2openapi/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/swiper": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", + "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", + "funding": [ + { + "type": "patreon", + "url": "https://www.patreon.com/swiperjs" + }, + { + "type": "open_collective", + "url": "http://opencollective.com/swiper" + } + ], + "hasInstallScript": true, + "dependencies": { + "dom7": "^4.0.4", + "ssr-window": "^4.0.2" + }, + "engines": { + "node": ">= 4.7.0" + } + }, + "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/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "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.16.5", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", + "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "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==", + "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/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/terser/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==" + }, + "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-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "node_modules/throttle-debounce": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", + "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/throttleit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", + "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/timespan": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", + "integrity": "sha512-0Jq9+58T2wbOyLth0EU+AUb6JMGCLaTWIykJFa7hyAybjVH9gpVMTfUAwo5fWAvtFt2Tjh/Elg8JtgNpnMnM8g==", + "engines": { + "node": ">= 0.2.0" + } + }, + "node_modules/tiny-invariant": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", + "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" + }, + "node_modules/tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" + }, + "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, + "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==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "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/trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==", + "deprecated": "Use String.prototype.trim() instead" + }, + "node_modules/trim-trailing-lines": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", + "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/triple-beam": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", + "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-easing": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", + "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" + }, + "node_modules/ts-keycode-enum": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", + "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" + }, + "node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "dev": true + }, + "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==", + "devOptional": 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": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", + "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/uglify-js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz", + "integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ==", + "bin": { + "uglifyjs": "bin/uglifyjs" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unherit": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "dependencies": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unified": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", + "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/unist-builder": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", + "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-find-after": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", + "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-generated": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", + "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", + "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", + "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-select": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", + "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", + "dependencies": { + "@types/unist": "^2.0.0", + "css-selector-parser": "^1.0.0", + "nth-check": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-select/node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dependencies": { + "@types/unist": "^2.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unload": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", + "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", + "dependencies": { + "@babel/runtime": "^7.6.2", + "detect-node": "^2.0.4" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/update-notifier/node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/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==" + }, + "node_modules/update-notifier/node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/update-notifier/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/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==", + "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/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "dependencies": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } + } + }, + "node_modules/url-loader/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==", + "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/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/url-template": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", + "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + }, + "node_modules/use-composed-ref": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", + "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", + "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-latest": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", + "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", + "dependencies": { + "use-isomorphic-layout-effect": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "node_modules/utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" + }, + "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/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "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-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "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.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/validate.io-array": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", + "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" + }, + "node_modules/validate.io-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", + "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" + }, + "node_modules/validate.io-integer": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", + "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", + "dependencies": { + "validate.io-number": "^1.0.3" + } + }, + "node_modules/validate.io-integer-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", + "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", + "dependencies": { + "validate.io-array": "^1.0.3", + "validate.io-integer": "^1.0.4" + } + }, + "node_modules/validate.io-number": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", + "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" + }, + "node_modules/value-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", + "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", + "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "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==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "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/wait-on": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", + "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", + "dependencies": { + "axios": "^0.25.0", + "joi": "^17.6.0", + "lodash": "^4.17.21", + "minimist": "^1.2.5", + "rxjs": "^7.5.4" + }, + "bin": { + "wait-on": "bin/wait-on" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/wait-on/node_modules/axios": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", + "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "dependencies": { + "follow-redirects": "^1.14.7" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/web-namespaces": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", + "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/web-streams-polyfill": { + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", + "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", + "engines": { + "node": ">= 14" + } + }, + "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.75.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", + "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "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-bundle-analyzer": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", + "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", + "dependencies": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack-bundle-analyzer/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==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-middleware/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==" + }, + "node_modules/webpack-dev-middleware/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", + "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/webpack-dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-server/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==" + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "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==", + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.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==", + "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/webpackbar": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", + "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", + "dependencies": { + "chalk": "^4.1.0", + "consola": "^2.15.3", + "pretty-time": "^1.1.0", + "std-env": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "webpack": "3 || 4 || 5" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "engines": { + "node": ">=0.8.0" + } + }, + "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-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" + }, + "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/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "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==", + "dev": true, + "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-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/widest-line": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", + "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", + "dependencies": { + "string-width": "^5.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" + }, + "node_modules/winston": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.10.0.tgz", + "integrity": "sha512-nT6SIDaE9B7ZRO0u3UvdrimG0HkB7dSTAgInQnNR2SOPJ4bvq5q79+pXLftKmP52lJGW15+H5MCK0nM9D3KB/g==", + "dependencies": { + "@colors/colors": "1.5.0", + "@dabh/diagnostics": "^2.0.2", + "async": "^3.2.3", + "is-stream": "^2.0.0", + "logform": "^2.4.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "safe-stable-stringify": "^2.3.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.5.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/winston-transport": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz", + "integrity": "sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==", + "dependencies": { + "logform": "^2.3.2", + "readable-stream": "^3.6.0", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 6.4.0" + } + }, + "node_modules/winston/node_modules/safe-stable-stringify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "engines": { + "node": ">=10" + } + }, + "node_modules/wolfy87-eventemitter": { + "version": "5.2.9", + "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", + "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" + }, + "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==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/wrench": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/wrench/-/wrench-1.3.9.tgz", + "integrity": "sha512-srTJQmLTP5YtW+F5zDuqjMEZqLLr/eJOZfDI5ibfPfRMeDh3oBUefAscuH0q5wBKE339ptH/S/0D18ZkfOfmKQ==", + "deprecated": "wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.", + "engines": { + "node": ">=0.1.97" + } + }, + "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==", + "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.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "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/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/xml-formatter": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", + "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", + "dependencies": { + "xml-parser-xo": "^3.2.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/xml-js": { + "version": "1.6.11", + "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", + "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", + "dependencies": { + "sax": "^1.2.4" + }, + "bin": { + "xml-js": "bin/cli.js" + } + }, + "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/xml-parser-xo": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", + "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==", + "engines": { + "node": ">= 10" + } + }, + "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/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "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/yaml-ast-parser": { + "version": "0.0.43", + "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", + "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" + }, + "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/yargs/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/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zustand": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", + "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", + "engines": { + "node": ">=12.7.0" + }, + "peerDependencies": { + "react": ">=16.8" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + } + } + }, + "node_modules/zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + }, + "dependencies": { + "@adobe/css-tools": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", + "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", + "dev": true + }, + "@algolia/autocomplete-core": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", + "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", + "requires": { + "@algolia/autocomplete-shared": "1.7.4" + } + }, + "@algolia/autocomplete-preset-algolia": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", + "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", + "requires": { + "@algolia/autocomplete-shared": "1.7.4" + } + }, + "@algolia/autocomplete-shared": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", + "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" + }, + "@algolia/cache-browser-local-storage": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", + "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", + "requires": { + "@algolia/cache-common": "4.16.0" + } + }, + "@algolia/cache-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", + "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" + }, + "@algolia/cache-in-memory": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", + "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", + "requires": { + "@algolia/cache-common": "4.16.0" + } + }, + "@algolia/client-account": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", + "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-analytics": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", + "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", + "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", + "requires": { + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-personalization": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", + "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-search": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", + "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/events": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", + "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" + }, + "@algolia/logger-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", + "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" + }, + "@algolia/logger-console": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", + "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", + "requires": { + "@algolia/logger-common": "4.16.0" + } + }, + "@algolia/requester-browser-xhr": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", + "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", + "requires": { + "@algolia/requester-common": "4.16.0" + } + }, + "@algolia/requester-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", + "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" + }, + "@algolia/requester-node-http": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", + "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", + "requires": { + "@algolia/requester-common": "4.16.0" + } + }, + "@algolia/transporter": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", + "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", + "requires": { + "@algolia/cache-common": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/requester-common": "4.16.0" + } + }, + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==" + }, + "@babel/core": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", + "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.0", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.0", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.0", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/generator": { + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", + "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", + "requires": { + "@babel/types": "^7.21.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "requires": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", + "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "requires": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "requires": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", + "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "requires": { + "@babel/types": "^7.21.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-replace-supers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", + "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + } + }, + "@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "requires": { + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "requires": { + "@babel/types": "^7.20.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + }, + "@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==" + }, + "@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "requires": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + } + }, + "@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "requires": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "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.21.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", + "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==" + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", + "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.7" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@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==", + "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==", + "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==", + "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==", + "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==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@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==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", + "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", + "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", + "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", + "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "requires": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "requires": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", + "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "requires": { + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-simple-access": "^7.20.2" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", + "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", + "requires": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-identifier": "^7.19.1" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "requires": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", + "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", + "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-react-constant-elements": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", + "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-react-display-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", + "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", + "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-jsx": "^7.18.6", + "@babel/types": "^7.21.0" + } + }, + "@babel/plugin-transform-react-jsx-development": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", + "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", + "requires": { + "@babel/plugin-transform-react-jsx": "^7.18.6" + } + }, + "@babel/plugin-transform-react-pure-annotations": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", + "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", + "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", + "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", + "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "requires": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "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.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", + "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-react-display-name": "^7.18.6", + "@babel/plugin-transform-react-jsx": "^7.18.6", + "@babel/plugin-transform-react-jsx-development": "^7.18.6", + "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + } + }, + "@babel/preset-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", + "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.21.0", + "@babel/plugin-transform-typescript": "^7.21.0" + } + }, + "@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" + }, + "@babel/runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", + "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "requires": { + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/runtime-corejs3": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", + "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", + "requires": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + } + }, + "@babel/traverse": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", + "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.2", + "@babel/types": "^7.21.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", + "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "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 + }, + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==" + }, + "@cypress/react": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", + "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", + "dev": true, + "requires": {} + }, + "@cypress/request": { + "version": "2.88.11", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", + "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "http-signature": "~1.3.6", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "performance-now": "^2.1.0", + "qs": "~6.10.3", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^8.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + } + } + }, + "@cypress/webpack-dev-server": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", + "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", + "dev": true, + "requires": { + "find-up": "6.3.0", + "fs-extra": "9.1.0", + "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", + "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", + "local-pkg": "0.4.1", + "speed-measure-webpack-plugin": "1.4.2", + "tslib": "^2.3.1", + "webpack-dev-server": "^4.7.4", + "webpack-merge": "^5.4.0" + } + }, + "@cypress/xvfb": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", + "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "lodash.once": "^4.1.1" + }, + "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" + } + } + } + }, + "@dabh/diagnostics": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", + "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", + "requires": { + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" + } + }, + "@dbt-labs/react-dbt-dag": { + "version": "0.8.7", + "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", + "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", + "optional": true, + "requires": { + "classnames": "^2.3.1", + "dagre": "^0.8.5", + "graphlib": "^2.1.8", + "lodash": "^4.17.21", + "react-flow-renderer": "^10.3.8" + } + }, + "@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==" + }, + "@docsearch/css": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", + "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" + }, + "@docsearch/react": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", + "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", + "requires": { + "@algolia/autocomplete-core": "1.7.4", + "@algolia/autocomplete-preset-algolia": "1.7.4", + "@docsearch/css": "3.3.3", + "algoliasearch": "^4.0.0" + } + }, + "@docusaurus/core": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", + "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", + "requires": { + "@babel/core": "^7.18.6", + "@babel/generator": "^7.18.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.18.6", + "@babel/preset-env": "^7.18.6", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@babel/runtime": "^7.18.6", + "@babel/runtime-corejs3": "^7.18.6", + "@babel/traverse": "^7.18.8", + "@docusaurus/cssnano-preset": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@slorber/static-site-generator-webpack-plugin": "^4.0.7", + "@svgr/webpack": "^6.2.1", + "autoprefixer": "^10.4.7", + "babel-loader": "^8.2.5", + "babel-plugin-dynamic-import-node": "^2.3.3", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "clean-css": "^5.3.0", + "cli-table3": "^0.6.2", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "copy-webpack-plugin": "^11.0.0", + "core-js": "^3.23.3", + "css-loader": "^6.7.1", + "css-minimizer-webpack-plugin": "^4.0.0", + "cssnano": "^5.1.12", + "del": "^6.1.1", + "detect-port": "^1.3.0", + "escape-html": "^1.0.3", + "eta": "^2.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "html-minifier-terser": "^6.1.0", + "html-tags": "^3.2.0", + "html-webpack-plugin": "^5.5.0", + "import-fresh": "^3.3.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "mini-css-extract-plugin": "^2.6.1", + "postcss": "^8.4.14", + "postcss-loader": "^7.0.0", + "prompts": "^2.4.2", + "react-dev-utils": "^12.0.1", + "react-helmet-async": "^1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.3", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.3", + "rtl-detect": "^1.0.4", + "semver": "^7.3.7", + "serve-handler": "^6.1.3", + "shelljs": "^0.8.5", + "terser-webpack-plugin": "^5.3.3", + "tslib": "^2.4.0", + "update-notifier": "^5.1.0", + "url-loader": "^4.1.1", + "wait-on": "^6.0.1", + "webpack": "^5.73.0", + "webpack-bundle-analyzer": "^4.5.0", + "webpack-dev-server": "^4.9.3", + "webpack-merge": "^5.8.0", + "webpackbar": "^5.0.2" + }, + "dependencies": { + "css-loader": { + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", + "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", + "requires": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.19", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + } + }, + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "requires": {} + }, + "postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "requires": {} + }, + "postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "requires": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "requires": { + "icss-utils": "^5.0.0" + } + } + } + }, + "@docusaurus/cssnano-preset": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", + "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", + "requires": { + "cssnano-preset-advanced": "^5.3.8", + "postcss": "^8.4.14", + "postcss-sort-media-queries": "^4.2.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/eslint-plugin": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", + "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "^5.30.5", + "tslib": "^2.4.0" + } + }, + "@docusaurus/logger": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", + "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", + "requires": { + "chalk": "^4.1.2", + "tslib": "^2.4.0" + } + }, + "@docusaurus/lqip-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", + "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", + "requires": { + "@docusaurus/logger": "2.3.1", + "file-loader": "^6.2.0", + "lodash": "^4.17.21", + "sharp": "^0.30.7", + "tslib": "^2.4.0" + } + }, + "@docusaurus/mdx-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", + "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", + "requires": { + "@babel/parser": "^7.18.8", + "@babel/traverse": "^7.18.8", + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@mdx-js/mdx": "^1.6.22", + "escape-html": "^1.0.3", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "image-size": "^1.0.1", + "mdast-util-to-string": "^2.0.0", + "remark-emoji": "^2.2.0", + "stringify-object": "^3.3.0", + "tslib": "^2.4.0", + "unified": "^9.2.2", + "unist-util-visit": "^2.0.3", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/module-type-aliases": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", + "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", + "requires": { + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/types": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "*", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" + } + }, + "@docusaurus/plugin-content-blog": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", + "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "cheerio": "^1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "reading-time": "^1.5.0", + "tslib": "^2.4.0", + "unist-util-visit": "^2.0.3", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-content-docs": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", + "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@types/react-router-config": "^5.0.6", + "combine-promises": "^1.1.0", + "fs-extra": "^10.1.0", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-content-pages": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", + "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-debug": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", + "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "fs-extra": "^10.1.0", + "react-json-view": "^1.21.3", + "tslib": "^2.4.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-google-analytics": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", + "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/plugin-google-gtag": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", + "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/plugin-google-tag-manager": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", + "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/plugin-ideal-image": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", + "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/lqip-loader": "2.3.1", + "@docusaurus/responsive-loader": "^1.7.0", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@endiliey/react-ideal-image": "^0.0.11", + "react-waypoint": "^10.3.0", + "sharp": "^0.30.7", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + } + }, + "@docusaurus/plugin-sitemap": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", + "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "sitemap": "^7.1.1", + "tslib": "^2.4.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/preset-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", + "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/plugin-debug": "2.3.1", + "@docusaurus/plugin-google-analytics": "2.3.1", + "@docusaurus/plugin-google-gtag": "2.3.1", + "@docusaurus/plugin-google-tag-manager": "2.3.1", + "@docusaurus/plugin-sitemap": "2.3.1", + "@docusaurus/theme-classic": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-search-algolia": "2.3.1", + "@docusaurus/types": "2.3.1" + } + }, + "@docusaurus/react-loadable": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "requires": { + "@types/react": "*", + "prop-types": "^15.6.2" + } + }, + "@docusaurus/responsive-loader": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", + "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", + "requires": { + "loader-utils": "^2.0.0" + } + }, + "@docusaurus/theme-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", + "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@mdx-js/react": "^1.6.22", + "clsx": "^1.2.1", + "copy-text-to-clipboard": "^3.0.1", + "infima": "0.2.0-alpha.42", + "lodash": "^4.17.21", + "nprogress": "^0.2.0", + "postcss": "^8.4.14", + "prism-react-renderer": "^1.3.5", + "prismjs": "^1.28.0", + "react-router-dom": "^5.3.3", + "rtlcss": "^3.5.0", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + } + }, + "@docusaurus/theme-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", + "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", + "requires": { + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^1.2.1", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^1.3.5", + "tslib": "^2.4.0", + "use-sync-external-store": "^1.2.0", + "utility-types": "^3.10.0" + } + }, + "@docusaurus/theme-search-algolia": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", + "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", + "requires": { + "@docsearch/react": "^3.1.1", + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "algoliasearch": "^4.13.1", + "algoliasearch-helper": "^3.10.0", + "clsx": "^1.2.1", + "eta": "^2.0.0", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/theme-translations": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", + "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", + "requires": { + "fs-extra": "^10.1.0", + "tslib": "^2.4.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/types": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", + "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.6.0", + "react-helmet-async": "^1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0", + "webpack-merge": "^5.8.0" + } + }, + "@docusaurus/utils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", + "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", + "requires": { + "@docusaurus/logger": "2.3.1", + "@svgr/webpack": "^6.2.1", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "github-slugger": "^1.4.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.4.0", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/utils-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", + "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", + "requires": { + "tslib": "^2.4.0" + } + }, + "@docusaurus/utils-validation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", + "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", + "requires": { + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "joi": "^17.6.0", + "js-yaml": "^4.1.0", + "tslib": "^2.4.0" + } + }, + "@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==", + "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==" + }, + "@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, + "@endiliey/react-ideal-image": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", + "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", + "requires": {} + }, + "@eslint/eslintrc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", + "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", + "devOptional": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": 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==", + "devOptional": true + } + } + }, + "@eslint/js": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", + "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", + "devOptional": true + }, + "@exodus/schemasafe": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", + "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" + }, + "@faker-js/faker": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", + "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" + }, + "@fortawesome/fontawesome-common-types": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", + "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==" + }, + "@fortawesome/fontawesome-svg-core": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", + "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", + "requires": { + "@fortawesome/fontawesome-common-types": "6.4.0" + } + }, + "@fortawesome/react-fontawesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", + "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", + "requires": { + "prop-types": "^15.8.1" + } + }, + "@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" + }, + "@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "devOptional": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + } + }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "devOptional": true + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "devOptional": 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" + }, + "dependencies": { + "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" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "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" + } + }, + "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" + } + }, + "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" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "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" + } + }, + "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 + }, + "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 + } + } + }, + "@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.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/create-cache-key-function": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", + "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1" + } + }, + "@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "requires": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + } + }, + "@jest/expect-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", + "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", + "dev": true, + "requires": { + "jest-get-type": "^29.4.3" + } + }, + "@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + } + } + }, + "@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "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" + } + } + } + }, + "@jest/schemas": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", + "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", + "requires": { + "@sinclair/typebox": "^0.25.16" + } + }, + "@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + } + }, + "@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + } + }, + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "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" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, + "@juggle/resize-observer": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", + "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" + }, + "@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" + }, + "@mdx-js/mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", + "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", + "requires": { + "@babel/core": "7.12.9", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@mdx-js/util": "1.6.22", + "babel-plugin-apply-mdx-type-prop": "1.6.22", + "babel-plugin-extract-import-names": "1.6.22", + "camelcase-css": "2.0.1", + "detab": "2.0.4", + "hast-util-raw": "6.0.1", + "lodash.uniq": "4.5.0", + "mdast-util-to-hast": "10.0.1", + "remark-footnotes": "2.0.0", + "remark-mdx": "1.6.22", + "remark-parse": "8.0.3", + "remark-squeeze-paragraphs": "4.0.0", + "style-to-object": "0.3.0", + "unified": "9.2.0", + "unist-builder": "2.0.3", + "unist-util-visit": "2.0.3" + }, + "dependencies": { + "@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + }, + "unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + } + } + } + }, + "@mdx-js/react": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "requires": {} + }, + "@mdx-js/util": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", + "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==" + }, + "@monaco-editor/loader": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", + "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", + "requires": { + "state-local": "^1.0.6" + } + }, + "@monaco-editor/react": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", + "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", + "requires": { + "@monaco-editor/loader": "^1.3.2", + "prop-types": "^15.7.2" + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@polka/url": { + "version": "1.0.0-next.21", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", + "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" + }, + "@react-hook/debounce": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", + "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", + "requires": { + "@react-hook/latest": "^1.0.2" + } + }, + "@react-hook/event": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", + "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", + "requires": {} + }, + "@react-hook/latest": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", + "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", + "requires": {} + }, + "@react-hook/passive-layout-effect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", + "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", + "requires": {} + }, + "@react-hook/resize-observer": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", + "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", + "requires": { + "@juggle/resize-observer": "^3.3.1", + "@react-hook/latest": "^1.0.2", + "@react-hook/passive-layout-effect": "^1.2.0" + } + }, + "@react-hook/size": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", + "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", + "requires": { + "@react-hook/passive-layout-effect": "^1.2.0", + "@react-hook/resize-observer": "^1.2.1" + } + }, + "@react-hook/throttle": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", + "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", + "requires": { + "@react-hook/latest": "^1.0.2" + } + }, + "@react-hook/window-size": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", + "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", + "requires": { + "@react-hook/debounce": "^3.0.0", + "@react-hook/event": "^1.2.1", + "@react-hook/throttle": "^2.2.0" + } + }, + "@react-types/button": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", + "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", + "requires": { + "@react-types/shared": "^3.8.0" + } + }, + "@react-types/checkbox": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", + "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", + "requires": { + "@react-types/shared": "^3.18.1" + }, + "dependencies": { + "@react-types/shared": { + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", + "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", + "requires": {} + } + } + }, + "@react-types/radio": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", + "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", + "requires": { + "@react-types/shared": "^3.8.0" + } + }, + "@react-types/shared": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", + "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", + "requires": {} + }, + "@react-types/switch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", + "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", + "requires": { + "@react-types/checkbox": "^3.2.3", + "@react-types/shared": "^3.8.0" + } + }, + "@react-types/textfield": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", + "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", + "requires": { + "@react-types/shared": "^3.9.0" + } + }, + "@redocly/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "dependencies": { + "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==" + } + } + }, + "@redocly/openapi-core": { + "version": "1.0.0-beta.123", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", + "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", + "requires": { + "@redocly/ajv": "^8.11.0", + "@types/node": "^14.11.8", + "colorette": "^1.2.0", + "js-levenshtein": "^1.1.6", + "js-yaml": "^4.1.0", + "lodash.isequal": "^4.5.0", + "minimatch": "^5.0.1", + "node-fetch": "^2.6.1", + "pluralize": "^8.0.0", + "yaml-ast-parser": "0.0.43" + }, + "dependencies": { + "@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" + }, + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "@rehooks/component-size": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", + "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", + "requires": {} + }, + "@sentry/browser": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", + "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", + "requires": { + "@sentry/core": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/core": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", + "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", + "requires": { + "@sentry/hub": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/hub": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", + "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", + "requires": { + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/minimal": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", + "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", + "requires": { + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/react": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", + "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", + "requires": { + "@sentry/browser": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "hoist-non-react-statics": "^3.3.2", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/types": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", + "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==" + }, + "@sentry/utils": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", + "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", + "requires": { + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sideway/address": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", + "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" + }, + "@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" + }, + "@sinclair/typebox": { + "version": "0.25.24", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", + "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" + }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" + }, + "@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, + "@slorber/static-site-generator-webpack-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", + "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", + "requires": { + "eval": "^0.1.8", + "p-map": "^4.0.0", + "webpack-sources": "^3.2.2" + } + }, + "@stoplight/elements": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", + "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", + "requires": { + "@stoplight/elements-core": "~7.7.17", + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "file-saver": "^2.0.5", + "lodash": "^4.17.19", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0" + } + }, + "@stoplight/elements-core": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", + "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", + "requires": { + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-ref-parser": "^9.0.5", + "@stoplight/json-schema-sampler": "0.2.3", + "@stoplight/json-schema-viewer": "^4.9.0", + "@stoplight/markdown-viewer": "^5.6.0", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/mosaic-code-editor": "^1.33.0", + "@stoplight/mosaic-code-viewer": "^1.33.0", + "@stoplight/path": "^1.3.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "httpsnippet-lite": "^3.0.1", + "jotai": "1.3.9", + "json-schema": "^0.4.0", + "lodash": "^4.17.19", + "nanoid": "^3.1.32", + "prop-types": "^15.7.2", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0", + "react-router-hash-link": "^2.1.0", + "tslib": "^2.1.0", + "urijs": "^1.19.11", + "util": "^0.12.4", + "xml-formatter": "^2.6.1" + } + }, + "@stoplight/http-spec": { + "version": "5.9.4", + "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", + "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", + "requires": { + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-generator": "1.0.2", + "@stoplight/types": "^13.15.0", + "@types/json-schema": "7.0.11", + "@types/swagger-schema-official": "~2.0.22", + "@types/type-is": "^1.6.3", + "fnv-plus": "^1.3.1", + "lodash.isequalwith": "^4.4.0", + "lodash.pick": "^4.4.0", + "lodash.pickby": "^4.6.0", + "openapi3-ts": "^2.0.2", + "postman-collection": "^4.1.2", + "tslib": "^2.3.1", + "type-is": "^1.6.18" + } + }, + "@stoplight/json": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", + "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", + "requires": { + "@stoplight/ordered-object-literal": "^1.0.3", + "@stoplight/path": "^1.3.2", + "@stoplight/types": "^13.6.0", + "jsonc-parser": "~2.2.1", + "lodash": "^4.17.21", + "safe-stable-stringify": "^1.1" + }, + "dependencies": { + "jsonc-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", + "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" + } + } + }, + "@stoplight/json-schema-generator": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", + "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", + "requires": { + "cross-fetch": "^3.1.5", + "json-promise": "1.1.x", + "minimist": "1.2.6", + "mkdirp": "0.5.x", + "pretty-data": "0.40.x" + }, + "dependencies": { + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + } + } + }, + "@stoplight/json-schema-merge-allof": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", + "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", + "requires": { + "compute-lcm": "^1.1.0", + "json-schema-compare": "^0.2.2", + "lodash": "^4.17.4" + } + }, + "@stoplight/json-schema-ref-parser": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", + "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", + "requires": { + "@jsdevtools/ono": "^7.1.3", + "@stoplight/path": "^1.3.2", + "@stoplight/yaml": "^4.0.2", + "call-me-maybe": "^1.0.1", + "fastestsmallesttextencoderdecoder": "^1.0.22", + "isomorphic-fetch": "^3.0.0", + "node-abort-controller": "^3.0.1" + } + }, + "@stoplight/json-schema-sampler": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", + "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", + "requires": { + "@types/json-schema": "^7.0.7", + "json-pointer": "^0.6.1" + } + }, + "@stoplight/json-schema-tree": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", + "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", + "requires": { + "@stoplight/json": "^3.12.0", + "@stoplight/json-schema-merge-allof": "^0.7.8", + "@stoplight/lifecycle": "^2.3.2", + "@types/json-schema": "^7.0.7", + "magic-error": "0.0.1" + } + }, + "@stoplight/json-schema-viewer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", + "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", + "requires": { + "@stoplight/json": "^3.20.1", + "@stoplight/json-schema-tree": "^2.2.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@types/json-schema": "^7.0.7", + "classnames": "^2.2.6", + "fnv-plus": "^1.3.1", + "jotai": "^1.4.5", + "lodash": "^4.17.19" + }, + "dependencies": { + "jotai": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", + "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", + "requires": {} + } + } + }, + "@stoplight/lifecycle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", + "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", + "requires": { + "tslib": "^2.3.1", + "wolfy87-eventemitter": "~5.2.8" + } + }, + "@stoplight/markdown": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", + "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", + "requires": { + "@stoplight/types": "^12.3.0", + "@stoplight/yaml": "^4.2.2", + "github-slugger": "^1.3.0", + "hast-util-whitespace": "^2.0.0", + "lodash": "^4.17.21", + "mdast-util-to-string": "^3.1.0", + "remark-frontmatter": "^3.0.0", + "remark-gfm": "^1.0.0", + "remark-parse": "^9.0.0", + "remark-stringify": "^9.0.1", + "tslib": "^2.3.0", + "unified": "^9.2.1", + "unist-util-select": "^4.0.0", + "unist-util-visit": "^3.1.0" + }, + "dependencies": { + "@stoplight/types": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", + "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", + "requires": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + } + }, + "mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", + "requires": { + "@types/mdast": "^3.0.0" + } + }, + "remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "requires": { + "mdast-util-from-markdown": "^0.8.0" + } + }, + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + } + }, + "unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } + } + }, + "@stoplight/markdown-viewer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", + "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", + "requires": { + "@rehooks/component-size": "^1.0.3", + "@stoplight/markdown": "^3.1.3", + "@stoplight/react-error-boundary": "^2.0.0", + "deepmerge": "^4.2.2", + "hast-to-hyperscript": "^10.0.1", + "hast-util-raw": "7.0.0", + "hast-util-sanitize": "^4.0.0", + "hastscript": "^7.0.2", + "mdast-util-to-hast": "^11.1.1", + "remark-parse": "^9.0.0", + "unified": "^9.2.1", + "unist-builder": "^3.0.0", + "unist-util-select": "^4.0.1", + "unist-util-visit": "^3.1.0" + }, + "dependencies": { + "@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" + }, + "comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==" + }, + "hast-to-hyperscript": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", + "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", + "requires": { + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.1", + "web-namespaces": "^2.0.0" + } + }, + "hast-util-from-parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", + "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/unist": "^2.0.0", + "hastscript": "^7.0.0", + "property-information": "^6.0.0", + "vfile": "^5.0.0", + "vfile-location": "^4.0.0", + "web-namespaces": "^2.0.0" + }, + "dependencies": { + "vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + } + } + } + }, + "hast-util-parse-selector": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", + "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", + "requires": { + "@types/hast": "^2.0.0" + } + }, + "hast-util-raw": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", + "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/parse5": "^6.0.0", + "@types/unist": "^2.0.3", + "hast-util-from-parse5": "^7.0.0", + "hast-util-to-parse5": "^7.0.0", + "html-void-elements": "^2.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + } + }, + "hast-util-to-parse5": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", + "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", + "requires": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + } + }, + "hastscript": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", + "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", + "requires": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^3.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" + } + }, + "html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==" + }, + "mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" + }, + "dependencies": { + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } + } + }, + "mdast-util-to-hast": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", + "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "@types/mdurl": "^1.0.0", + "mdast-util-definitions": "^5.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" + }, + "dependencies": { + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "property-information": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", + "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==" + }, + "remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "requires": { + "mdast-util-from-markdown": "^0.8.0" + } + }, + "space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==" + }, + "style-to-object": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", + "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", + "requires": { + "inline-style-parser": "0.1.1" + } + }, + "unist-builder": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", + "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==" + }, + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + } + }, + "unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + }, + "vfile-location": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", + "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", + "requires": { + "@types/unist": "^2.0.0", + "vfile": "^5.0.0" + }, + "dependencies": { + "vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + } + } + } + }, + "vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + } + }, + "web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==" + }, + "zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" + } + } + }, + "@stoplight/mosaic": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", + "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", + "requires": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/button": "3.4.1", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@react-types/textfield": "3.3.0", + "@stoplight/types": "^13.7.0", + "@types/react": "^17.0.3", + "@types/react-dom": "^17.0.3", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "dependencies": { + "use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "requires": { + "@juggle/resize-observer": "^3.3.1" + } + } + } + }, + "@stoplight/mosaic-code-editor": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", + "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", + "requires": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/mosaic-code-viewer": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "dependencies": { + "use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "requires": { + "@juggle/resize-observer": "^3.3.1" + } + } + } + }, + "@stoplight/mosaic-code-viewer": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", + "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", + "requires": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "dependencies": { + "use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "requires": { + "@juggle/resize-observer": "^3.3.1" + } + } + } + }, + "@stoplight/ordered-object-literal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", + "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==" + }, + "@stoplight/path": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", + "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==" + }, + "@stoplight/react-error-boundary": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", + "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", + "requires": { + "@sentry/react": "^6.13.2" + } + }, + "@stoplight/types": { + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", + "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", + "requires": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + } + }, + "@stoplight/yaml": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", + "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", + "requires": { + "@stoplight/ordered-object-literal": "^1.0.1", + "@stoplight/types": "^13.0.0", + "@stoplight/yaml-ast-parser": "0.0.48", + "tslib": "^2.2.0" + } + }, + "@stoplight/yaml-ast-parser": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", + "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" + }, + "@svgr/babel-plugin-add-jsx-attribute": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", + "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", + "requires": {} + }, + "@svgr/babel-plugin-remove-jsx-attribute": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", + "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", + "requires": {} + }, + "@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", + "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", + "requires": {} + }, + "@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", + "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", + "requires": {} + }, + "@svgr/babel-plugin-svg-dynamic-title": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", + "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", + "requires": {} + }, + "@svgr/babel-plugin-svg-em-dimensions": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", + "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", + "requires": {} + }, + "@svgr/babel-plugin-transform-react-native-svg": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", + "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", + "requires": {} + }, + "@svgr/babel-plugin-transform-svg-component": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", + "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", + "requires": {} + }, + "@svgr/babel-preset": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", + "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", + "requires": { + "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", + "@svgr/babel-plugin-remove-jsx-attribute": "*", + "@svgr/babel-plugin-remove-jsx-empty-expression": "*", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", + "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", + "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", + "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", + "@svgr/babel-plugin-transform-svg-component": "^6.5.1" + } + }, + "@svgr/core": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", + "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "requires": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.1" + } + }, + "@svgr/hast-util-to-babel-ast": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", + "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", + "requires": { + "@babel/types": "^7.20.0", + "entities": "^4.4.0" + } + }, + "@svgr/plugin-jsx": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", + "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", + "requires": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/hast-util-to-babel-ast": "^6.5.1", + "svg-parser": "^2.0.4" + } + }, + "@svgr/plugin-svgo": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", + "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", + "requires": { + "cosmiconfig": "^7.0.1", + "deepmerge": "^4.2.2", + "svgo": "^2.8.0" + } + }, + "@svgr/webpack": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", + "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", + "requires": { + "@babel/core": "^7.19.6", + "@babel/plugin-transform-react-constant-elements": "^7.18.12", + "@babel/preset-env": "^7.19.4", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@svgr/core": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "@svgr/plugin-svgo": "^6.5.1" + } + }, + "@swc/core": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", + "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", + "dev": true, + "requires": { + "@swc/core-darwin-arm64": "1.3.37", + "@swc/core-darwin-x64": "1.3.37", + "@swc/core-linux-arm-gnueabihf": "1.3.37", + "@swc/core-linux-arm64-gnu": "1.3.37", + "@swc/core-linux-arm64-musl": "1.3.37", + "@swc/core-linux-x64-gnu": "1.3.37", + "@swc/core-linux-x64-musl": "1.3.37", + "@swc/core-win32-arm64-msvc": "1.3.37", + "@swc/core-win32-ia32-msvc": "1.3.37", + "@swc/core-win32-x64-msvc": "1.3.37" + } + }, + "@swc/core-darwin-arm64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", + "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", + "dev": true, + "optional": true + }, + "@swc/core-darwin-x64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", + "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm-gnueabihf": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", + "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", + "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", + "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", + "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", + "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", + "dev": true, + "optional": true + }, + "@swc/core-win32-arm64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", + "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", + "dev": true, + "optional": true + }, + "@swc/core-win32-ia32-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", + "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", + "dev": true, + "optional": true + }, + "@swc/core-win32-x64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", + "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", + "dev": true, + "optional": true + }, + "@swc/jest": { + "version": "0.2.24", + "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", + "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", + "dev": true, + "requires": { + "@jest/create-cache-key-function": "^27.4.2", + "jsonc-parser": "^3.2.0" + } + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "@testing-library/dom": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", + "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", + "dev": true, + "peer": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + } + }, + "@testing-library/jest-dom": { + "version": "5.16.5", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", + "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", + "dev": true, + "requires": { + "@adobe/css-tools": "^4.0.1", + "@babel/runtime": "^7.9.2", + "@types/testing-library__jest-dom": "^5.9.1", + "aria-query": "^5.0.0", + "chalk": "^3.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.5.6", + "lodash": "^4.17.15", + "redent": "^3.0.0" + }, + "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" + } + } + } + }, + "@testing-library/react": { + "version": "12.1.5", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", + "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^8.0.0", + "@types/react-dom": "<18.0.0" + }, + "dependencies": { + "@testing-library/dom": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", + "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + } + } + } + }, + "@testing-library/user-event": { + "version": "13.5.0", + "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", + "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.12.5" + } + }, + "@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 + }, + "@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==" + }, + "@types/aria-query": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", + "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", + "dev": true + }, + "@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dev": true, + "requires": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "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.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "requires": { + "@types/node": "*" + } + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "requires": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "@types/d3": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", + "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", + "optional": true, + "requires": { + "@types/d3-array": "*", + "@types/d3-axis": "*", + "@types/d3-brush": "*", + "@types/d3-chord": "*", + "@types/d3-color": "*", + "@types/d3-contour": "*", + "@types/d3-delaunay": "*", + "@types/d3-dispatch": "*", + "@types/d3-drag": "*", + "@types/d3-dsv": "*", + "@types/d3-ease": "*", + "@types/d3-fetch": "*", + "@types/d3-force": "*", + "@types/d3-format": "*", + "@types/d3-geo": "*", + "@types/d3-hierarchy": "*", + "@types/d3-interpolate": "*", + "@types/d3-path": "*", + "@types/d3-polygon": "*", + "@types/d3-quadtree": "*", + "@types/d3-random": "*", + "@types/d3-scale": "*", + "@types/d3-scale-chromatic": "*", + "@types/d3-selection": "*", + "@types/d3-shape": "*", + "@types/d3-time": "*", + "@types/d3-time-format": "*", + "@types/d3-timer": "*", + "@types/d3-transition": "*", + "@types/d3-zoom": "*" + } + }, + "@types/d3-array": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", + "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", + "optional": true + }, + "@types/d3-axis": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", + "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-brush": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", + "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-chord": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", + "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", + "optional": true + }, + "@types/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", + "optional": true + }, + "@types/d3-contour": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", + "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", + "optional": true, + "requires": { + "@types/d3-array": "*", + "@types/geojson": "*" + } + }, + "@types/d3-delaunay": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", + "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", + "optional": true + }, + "@types/d3-dispatch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", + "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", + "optional": true + }, + "@types/d3-drag": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", + "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-dsv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", + "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", + "optional": true + }, + "@types/d3-ease": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", + "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", + "optional": true + }, + "@types/d3-fetch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", + "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", + "optional": true, + "requires": { + "@types/d3-dsv": "*" + } + }, + "@types/d3-force": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", + "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", + "optional": true + }, + "@types/d3-format": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", + "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", + "optional": true + }, + "@types/d3-geo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", + "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", + "optional": true, + "requires": { + "@types/geojson": "*" + } + }, + "@types/d3-hierarchy": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", + "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", + "optional": true + }, + "@types/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", + "optional": true, + "requires": { + "@types/d3-color": "*" + } + }, + "@types/d3-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", + "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", + "optional": true + }, + "@types/d3-polygon": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", + "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", + "optional": true + }, + "@types/d3-quadtree": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", + "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", + "optional": true + }, + "@types/d3-random": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", + "optional": true + }, + "@types/d3-scale": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", + "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", + "optional": true, + "requires": { + "@types/d3-time": "*" + } + }, + "@types/d3-scale-chromatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", + "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", + "optional": true + }, + "@types/d3-selection": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", + "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", + "optional": true + }, + "@types/d3-shape": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", + "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", + "optional": true, + "requires": { + "@types/d3-path": "*" + } + }, + "@types/d3-time": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", + "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", + "optional": true + }, + "@types/d3-time-format": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", + "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", + "optional": true + }, + "@types/d3-timer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", + "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", + "optional": true + }, + "@types/d3-transition": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", + "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-zoom": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", + "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", + "optional": true, + "requires": { + "@types/d3-interpolate": "*", + "@types/d3-selection": "*" + } + }, + "@types/eslint": { + "version": "8.21.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", + "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" + }, + "@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/geojson": { + "version": "7946.0.10", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", + "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", + "optional": true + }, + "@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/har-format": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", + "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" + }, + "@types/hast": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "requires": { + "@types/unist": "*" + } + }, + "@types/history": { + "version": "4.7.11", + "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", + "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" + }, + "@types/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" + }, + "@types/http-proxy": { + "version": "1.17.10", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", + "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", + "requires": { + "@types/node": "*" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "@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==", + "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==", + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/jest": { + "version": "29.4.0", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", + "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", + "dev": true, + "requires": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "@types/js-cookie": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", + "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "@types/katex": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", + "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" + }, + "@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "requires": { + "@types/unist": "*" + } + }, + "@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" + }, + "@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + }, + "@types/node": { + "version": "18.14.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", + "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" + }, + "@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/parse5": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" + }, + "@types/prettier": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "dev": true + }, + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "@types/react": { + "version": "17.0.53", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", + "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-dom": { + "version": "17.0.19", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", + "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", + "requires": { + "@types/react": "^17" + } + }, + "@types/react-router": { + "version": "5.1.20", + "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", + "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "@types/react-router-config": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", + "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "@types/react-router-dom": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", + "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "@types/resize-observer-browser": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", + "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", + "optional": true + }, + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + }, + "@types/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", + "requires": { + "@types/node": "*" + } + }, + "@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/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "requires": { + "@types/express": "*" + } + }, + "@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "requires": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "@types/sinonjs__fake-timers": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", + "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", + "dev": true + }, + "@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", + "dev": true + }, + "@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "requires": { + "@types/node": "*" + } + }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "@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/swagger-schema-official": { + "version": "2.0.22", + "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", + "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" + }, + "@types/tapable": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", + "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", + "dev": true + }, + "@types/testing-library__jest-dom": { + "version": "5.14.5", + "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", + "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", + "dev": true, + "requires": { + "@types/jest": "*" + } + }, + "@types/triple-beam": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", + "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" + }, + "@types/type-is": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", + "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", + "requires": { + "@types/node": "*" + } + }, + "@types/uglify-js": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", + "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + } + }, + "@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "@types/webpack": { + "version": "4.41.33", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", + "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "anymatch": "^3.0.0", + "source-map": "^0.6.0" + } + }, + "@types/webpack-sources": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", + "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "@types/ws": { + "version": "8.5.4", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", + "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", + "requires": { + "@types/node": "*" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "dev": true, + "optional": true, + "requires": { + "@types/node": "*" + } + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", + "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/type-utils": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/parser": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", + "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", + "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", + "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", + "dev": true, + "requires": { + "@typescript-eslint/typescript-estree": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/types": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", + "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", + "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", + "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", + "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.54.0", + "eslint-visitor-keys": "^3.3.0" + } + }, + "@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "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==" + }, + "@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==" + }, + "@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==" + }, + "@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==", + "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==" + }, + "@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==", + "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==", + "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==", + "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==" + }, + "@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==", + "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==", + "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==", + "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==", + "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==", + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@xobotyi/scrollbar-width": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", + "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "@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==" + }, + "abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" + }, + "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" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + } + } + }, + "acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "requires": {} + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "devOptional": true, + "requires": {} + }, + "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 + }, + "address": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==" + }, + "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" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "requires": { + "ajv": "^8.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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==" + } + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "requires": {} + }, + "algoliasearch": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", + "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", + "requires": { + "@algolia/cache-browser-local-storage": "4.16.0", + "@algolia/cache-common": "4.16.0", + "@algolia/cache-in-memory": "4.16.0", + "@algolia/client-account": "4.16.0", + "@algolia/client-analytics": "4.16.0", + "@algolia/client-common": "4.16.0", + "@algolia/client-personalization": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/logger-console": "4.16.0", + "@algolia/requester-browser-xhr": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/requester-node-http": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "algoliasearch-helper": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", + "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", + "requires": { + "@algolia/events": "^4.0.1" + } + }, + "ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "requires": { + "string-width": "^4.1.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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "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" + }, + "dependencies": { + "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 + } + } + }, + "ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==" + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "dev": true + }, + "arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "aria-query": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", + "dev": true, + "requires": { + "deep-equal": "^2.0.5" + } + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + }, + "array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + } + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "requires": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "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 + }, + "async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" + }, + "autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "requires": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + } + }, + "available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "dev": true + }, + "aws4": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", + "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", + "dev": true + }, + "axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "requires": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "requires": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + } + }, + "babel-loader": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "requires": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + } + }, + "babel-plugin-apply-mdx-type-prop": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", + "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@mdx-js/util": "1.6.22" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + } + } + }, + "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==", + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-extract-import-names": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", + "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + } + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "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": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "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-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + } + }, + "babel-plugin-styled-components": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", + "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + } + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" + }, + "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.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base16": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", + "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==" + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "blob-util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", + "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", + "dev": true + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, + "body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + } + } + }, + "bonjour-service": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", + "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", + "requires": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "boxen": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", + "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", + "requires": { + "ansi-align": "^3.0.1", + "camelcase": "^6.2.0", + "chalk": "^4.1.2", + "cli-boxes": "^3.0.0", + "string-width": "^5.0.1", + "type-fest": "^2.5.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "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==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "broadcast-channel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", + "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", + "requires": { + "@babel/runtime": "^7.7.2", + "detect-node": "^2.1.0", + "js-sha3": "0.8.0", + "microseconds": "0.2.0", + "nano-time": "1.0.0", + "oblivious-set": "1.0.0", + "rimraf": "3.0.2", + "unload": "2.2.0" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "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 + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "requires": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "requires": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + } + }, + "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-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "build": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/build/-/build-0.1.4.tgz", + "integrity": "sha512-KwbDJ/zrsU8KZRRMfoURG14cKIAStUlS8D5jBDvtrZbwO5FEkYqc3oB8HIhRiyD64A48w1lc+sOmQ+mmBw5U/Q==", + "requires": { + "cssmin": "0.3.x", + "jsmin": "1.x", + "jxLoader": "*", + "moo-server": "*", + "promised-io": "*", + "timespan": "2.x", + "uglify-js": "1.x", + "walker": "1.x", + "winston": "*", + "wrench": "1.3.x" + } + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" + } + } + }, + "cachedir": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", + "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", + "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" + } + }, + "call-me-maybe": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", + "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "requires": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" + }, + "camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" + }, + "camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==" + }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "caniuse-lite": { + "version": "1.0.30001470", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", + "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==" + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "dev": true + }, + "ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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 + }, + "character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" + }, + "character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==" + }, + "character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" + }, + "charset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", + "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==" + }, + "check-more-types": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", + "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", + "dev": true + }, + "cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "requires": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + } + }, + "cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "requires": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "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==" + }, + "ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==" + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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 + }, + "classcat": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", + "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", + "optional": true + }, + "classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "cli-boxes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==" + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "requires": { + "@colors/colors": "1.5.0", + "string-width": "^4.2.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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "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" + }, + "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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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" + } + } + } + }, + "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==", + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "dependencies": { + "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==", + "requires": { + "isobject": "^3.0.1" + } + } + } + }, + "clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "requires": { + "mimic-response": "^1.0.0" + }, + "dependencies": { + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + } + } + }, + "clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==" + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true + }, + "collapse-white-space": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==" + }, + "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": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "requires": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + }, + "dependencies": { + "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + } + } + }, + "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==", + "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==" + }, + "color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" + }, + "colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" + }, + "colorspace": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", + "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", + "requires": { + "color": "^3.1.3", + "text-hex": "1.0.x" + } + }, + "combine-promises": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", + "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "comma-separated-tokens": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", + "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==" + }, + "commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==" + }, + "common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "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==" + } + } + }, + "compute-gcd": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", + "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", + "requires": { + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "compute-lcm": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", + "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", + "requires": { + "compute-gcd": "^1.2.1", + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "requires": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + } + }, + "connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==" + }, + "consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "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==" + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==" + }, + "content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" + }, + "convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "copy-text-to-clipboard": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", + "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==" + }, + "copy-to-clipboard": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", + "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", + "requires": { + "toggle-selection": "^1.0.6" + } + }, + "copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "requires": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "requires": { + "is-glob": "^4.0.3" + } + }, + "globby": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "requires": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + }, + "slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" + } + } + }, + "core-js": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", + "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==" + }, + "core-js-compat": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", + "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", + "requires": { + "browserslist": "^4.21.5" + } + }, + "core-js-pure": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", + "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, + "create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "requires": { + "node-fetch": "2.6.7" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==" + }, + "css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==" + }, + "css-declaration-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "requires": {} + }, + "css-in-js-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", + "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", + "requires": { + "hyphenate-style-name": "^1.0.3" + } + }, + "css-loader": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", + "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.0", + "semver": "^6.3.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "css-minimizer-webpack-plugin": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", + "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", + "requires": { + "cssnano": "^5.1.8", + "jest-worker": "^29.1.2", + "postcss": "^8.4.17", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + } + }, + "css-selector-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", + "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" + }, + "css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "requires": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" + }, + "css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" + }, + "cssmin": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/cssmin/-/cssmin-0.3.2.tgz", + "integrity": "sha512-bynxGIAJ8ybrnFobjsQotIjA8HFDDgPwbeUWNXXXfR+B4f9kkxdcUyagJoQCSUOfMV+ZZ6bMn8bvbozlCzUGwQ==" + }, + "cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "requires": { + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + } + }, + "cssnano-preset-advanced": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", + "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", + "requires": { + "autoprefixer": "^10.4.12", + "cssnano-preset-default": "^5.2.14", + "postcss-discard-unused": "^5.1.0", + "postcss-merge-idents": "^5.1.1", + "postcss-reduce-idents": "^5.2.0", + "postcss-zindex": "^5.1.0" + } + }, + "cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "requires": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + } + }, + "cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "requires": {} + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "requires": { + "css-tree": "^1.1.2" + } + }, + "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.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "cypress": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", + "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", + "dev": true, + "requires": { + "@cypress/request": "^2.88.10", + "@cypress/xvfb": "^1.2.4", + "@types/node": "^14.14.31", + "@types/sinonjs__fake-timers": "8.1.1", + "@types/sizzle": "^2.3.2", + "arch": "^2.2.0", + "blob-util": "^2.0.2", + "bluebird": "^3.7.2", + "buffer": "^5.6.0", + "cachedir": "^2.3.0", + "chalk": "^4.1.0", + "check-more-types": "^2.24.0", + "cli-cursor": "^3.1.0", + "cli-table3": "~0.6.1", + "commander": "^5.1.0", + "common-tags": "^1.8.0", + "dayjs": "^1.10.4", + "debug": "^4.3.4", + "enquirer": "^2.3.6", + "eventemitter2": "6.4.7", + "execa": "4.1.0", + "executable": "^4.1.1", + "extract-zip": "2.0.1", + "figures": "^3.2.0", + "fs-extra": "^9.1.0", + "getos": "^3.2.1", + "is-ci": "^3.0.0", + "is-installed-globally": "~0.4.0", + "lazy-ass": "^1.6.0", + "listr2": "^3.8.3", + "lodash": "^4.17.21", + "log-symbols": "^4.0.0", + "minimist": "^1.2.6", + "ospath": "^1.2.2", + "pretty-bytes": "^5.6.0", + "proxy-from-env": "1.0.0", + "request-progress": "^3.0.0", + "semver": "^7.3.2", + "supports-color": "^8.1.1", + "tmp": "~0.2.1", + "untildify": "^4.0.0", + "yauzl": "^2.10.0" + }, + "dependencies": { + "@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", + "dev": true + }, + "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" + } + } + } + }, + "d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "optional": true + }, + "d3-dispatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "optional": true + }, + "d3-drag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", + "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", + "optional": true, + "requires": { + "d3-dispatch": "1 - 3", + "d3-selection": "3" + } + }, + "d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "optional": true + }, + "d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "optional": true, + "requires": { + "d3-color": "1 - 3" + } + }, + "d3-selection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", + "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", + "optional": true + }, + "d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "optional": true + }, + "d3-transition": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", + "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "optional": true, + "requires": { + "d3-color": "1 - 3", + "d3-dispatch": "1 - 3", + "d3-ease": "1 - 3", + "d3-interpolate": "1 - 3", + "d3-timer": "1 - 3" + } + }, + "d3-zoom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", + "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", + "optional": true, + "requires": { + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "2 - 3", + "d3-transition": "2 - 3" + } + }, + "dagre": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", + "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", + "optional": true, + "requires": { + "graphlib": "^2.1.8", + "lodash": "^4.17.15" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "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" + } + }, + "dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", + "dev": true + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "decko": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", + "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" + }, + "decode-uri-component": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", + "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==" + }, + "decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "requires": { + "mimic-response": "^3.1.0" + } + }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "deep-equal": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", + "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-get-iterator": "^1.1.2", + "get-intrinsic": "^1.1.3", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.1", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "devOptional": true + }, + "deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==" + }, + "default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "requires": { + "execa": "^5.0.0" + }, + "dependencies": { + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "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" + } + }, + "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==" + }, + "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==" + } + } + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" + }, + "define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "requires": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" + }, + "detab": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", + "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", + "requires": { + "repeat-string": "^1.5.4" + } + }, + "detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" + }, + "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 + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "detect-port": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", + "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", + "requires": { + "address": "^1.0.1", + "debug": "4" + } + }, + "detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "requires": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "diff-sequences": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", + "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "requires": { + "path-type": "^4.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" + }, + "dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "requires": { + "@leichtgewicht/ip-codec": "^2.0.1" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "devOptional": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "requires": { + "utila": "~0.4" + } + }, + "dom-helpers": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", + "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", + "requires": { + "@babel/runtime": "^7.1.2" + } + }, + "dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "dom7": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", + "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", + "requires": { + "ssr-window": "^4.0.0" + } + }, + "domain-browser": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", + "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==" + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "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 + } + } + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + }, + "dompurify": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", + "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" + }, + "domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + } + }, + "dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "requires": { + "is-obj": "^2.0.0" + }, + "dependencies": { + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + } + } + }, + "dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true + }, + "duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "electron-to-chromium": { + "version": "1.4.315", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", + "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "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==" + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" + }, + "emoticon": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", + "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==" + }, + "enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "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" + } + }, + "entities": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==" + }, + "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" + } + }, + "error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "requires": { + "stackframe": "^1.3.4" + } + }, + "es-abstract": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", + "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", + "dev": true, + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.4", + "is-array-buffer": "^3.0.1", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + } + }, + "es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + } + }, + "es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" + }, + "es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + } + }, + "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==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" + }, + "es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "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.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + } + } + }, + "eslint": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", + "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", + "devOptional": true, + "requires": { + "@eslint/eslintrc": "^2.0.0", + "@eslint/js": "8.35.0", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "dependencies": { + "eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "devOptional": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": true + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "devOptional": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "devOptional": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "devOptional": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "devOptional": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "devOptional": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "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==", + "devOptional": true + }, + "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==", + "devOptional": 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==", + "devOptional": true + } + } + }, + "eslint-config-prettier": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", + "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", + "dev": true, + "requires": {} + }, + "eslint-plugin-markdown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", + "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", + "dev": true, + "requires": { + "mdast-util-from-markdown": "^0.8.5" + } + }, + "eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0" + } + }, + "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==", + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "devOptional": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "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==", + "devOptional": true + } + } + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "devOptional": true + }, + "espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "devOptional": true, + "requires": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "devOptional": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": 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==", + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "eta": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", + "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" + }, + "eval": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", + "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", + "requires": { + "@types/node": "*", + "require-like": ">= 0.1.1" + } + }, + "eventemitter2": { + "version": "6.4.7", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", + "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", + "dev": true + }, + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + } + }, + "executable": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", + "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", + "dev": true, + "requires": { + "pify": "^2.2.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true + }, + "expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" + }, + "expect": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", + "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", + "dev": true, + "requires": { + "@jest/expect-utils": "^29.4.3", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.4.3", + "jest-message-util": "^29.4.3", + "jest-util": "^29.4.3" + } + }, + "express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "requires": { + "safe-buffer": "5.2.1" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "dev": true + }, + "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==" + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "fast-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==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "devOptional": true + }, + "fast-loops": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", + "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" + }, + "fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "fast-shallow-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", + "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" + }, + "fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", + "requires": { + "punycode": "^1.3.2" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + } + } + }, + "fastest-stable-stringify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", + "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" + }, + "fastestsmallesttextencoderdecoder": { + "version": "1.0.22", + "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", + "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" + }, + "fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "requires": { + "reusify": "^1.0.4" + } + }, + "fault": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", + "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", + "requires": { + "format": "^0.2.0" + } + }, + "faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "requires": { + "bser": "2.1.1" + } + }, + "fbemitter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", + "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", + "requires": { + "fbjs": "^3.0.0" + } + }, + "fbjs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", + "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", + "requires": { + "cross-fetch": "^3.1.5", + "fbjs-css-vars": "^1.0.0", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^0.7.30" + } + }, + "fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "fecha": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" + }, + "feed": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", + "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", + "requires": { + "xml-js": "^1.6.11" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + } + } + }, + "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==", + "devOptional": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "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==" + }, + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==" + }, + "filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==" + }, + "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==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "filter-obj": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", + "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==" + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "requires": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "devOptional": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "devOptional": true + }, + "flux": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", + "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", + "requires": { + "fbemitter": "^3.0.0", + "fbjs": "^3.0.1" + } + }, + "fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" + }, + "fnv-plus": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", + "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" + }, + "follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "requires": { + "is-callable": "^1.1.3" + } + }, + "foreach": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", + "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true + }, + "fork-ts-checker-webpack-plugin": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", + "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", + "requires": { + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" + }, + "dependencies": { + "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" + } + }, + "schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "requires": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" + } + } + }, + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==" + }, + "formdata-node": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", + "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", + "requires": { + "node-domexception": "1.0.0", + "web-streams-polyfill": "4.0.0-beta.3" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" + }, + "fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" + }, + "fs": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", + "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "fscreen": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", + "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "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.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true + }, + "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==" + }, + "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.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "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": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "getos": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", + "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", + "dev": true, + "requires": { + "async": "^3.2.0" + } + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" + }, + "github-slugger": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", + "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "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==", + "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==" + }, + "global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "requires": { + "ini": "2.0.0" + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "requires": { + "global-prefix": "^3.0.0" + } + }, + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "dependencies": { + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + }, + "globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3" + } + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "requires": { + "get-intrinsic": "^1.1.3" + } + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + } + } + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "devOptional": true + }, + "graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", + "optional": true, + "requires": { + "lodash": "^4.17.15" + } + }, + "gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "requires": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "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==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + } + } + }, + "gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "requires": { + "duplexer": "^0.1.2" + } + }, + "handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "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.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==" + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hast-to-hyperscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", + "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "requires": { + "@types/unist": "^2.0.3", + "comma-separated-tokens": "^1.0.0", + "property-information": "^5.3.0", + "space-separated-tokens": "^1.0.0", + "style-to-object": "^0.3.0", + "unist-util-is": "^4.0.0", + "web-namespaces": "^1.0.0" + } + }, + "hast-util-from-parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", + "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "requires": { + "@types/parse5": "^5.0.0", + "hastscript": "^6.0.0", + "property-information": "^5.0.0", + "vfile": "^4.0.0", + "vfile-location": "^3.2.0", + "web-namespaces": "^1.0.0" + } + }, + "hast-util-is-element": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", + "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==" + }, + "hast-util-parse-selector": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", + "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==" + }, + "hast-util-raw": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", + "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", + "requires": { + "@types/hast": "^2.0.0", + "hast-util-from-parse5": "^6.0.0", + "hast-util-to-parse5": "^6.0.0", + "html-void-elements": "^1.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + } + } + }, + "hast-util-sanitize": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", + "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", + "requires": { + "@types/hast": "^2.0.0" + } + }, + "hast-util-to-parse5": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", + "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "requires": { + "hast-to-hyperscript": "^9.0.0", + "property-information": "^5.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + } + }, + "hast-util-to-text": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", + "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", + "requires": { + "hast-util-is-element": "^1.0.0", + "repeat-string": "^1.0.0", + "unist-util-find-after": "^3.0.0" + } + }, + "hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==" + }, + "hastscript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", + "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "requires": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" + }, + "history": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", + "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", + "requires": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^3.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^1.0.1" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "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==" + } + } + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "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" + } + }, + "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==" + }, + "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" + } + } + } + }, + "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-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" + }, + "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 + }, + "html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "requires": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "dependencies": { + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" + } + } + }, + "html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==" + }, + "html-void-elements": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", + "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==" + }, + "html-webpack-plugin": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "requires": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + } + }, + "html-webpack-plugin-4": { + "version": "npm:html-webpack-plugin@4.5.2", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", + "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", + "dev": true, + "requires": { + "@types/html-minifier-terser": "^5.0.0", + "@types/tapable": "^1.0.5", + "@types/webpack": "^4.41.8", + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.20", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" + }, + "dependencies": { + "@types/html-minifier-terser": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", + "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "requires": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + } + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "pretty-error": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "dev": true, + "requires": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "renderkid": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "dev": true, + "requires": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, + "terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "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 + } + } + } + } + }, + "html-webpack-plugin-5": { + "version": "npm:html-webpack-plugin@5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "dev": true, + "requires": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + } + }, + "htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, + "http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" + }, + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "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" + } + }, + "http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "requires": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "dependencies": { + "is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==" + } + } + }, + "http-reasons": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", + "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" + }, + "http-signature": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", + "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^2.0.2", + "sshpk": "^1.14.1" + } + }, + "http2-client": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", + "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "httpsnippet-lite": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", + "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", + "requires": { + "@types/har-format": "^1.2.10", + "formdata-node": "^4.4.1", + "stringify-object": "3.3.0" + } + }, + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true + }, + "husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true + }, + "hyphenate-style-name": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", + "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==" + }, + "image-size": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", + "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", + "requires": { + "queue": "6.0.2" + } + }, + "immer": { + "version": "9.0.19", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", + "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==" + }, + "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" + } + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==" + }, + "import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, + "infima": { + "version": "0.2.0-alpha.42", + "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", + "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "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==" + }, + "ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" + }, + "inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "inline-style-prefixer": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", + "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", + "requires": { + "css-in-js-utils": "^3.1.0", + "fast-loops": "^1.1.3" + } + }, + "internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "requires": { + "loose-envify": "^1.0.0" + } + }, + "ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==" + }, + "is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==" + }, + "is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" + }, + "is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dev": true, + "requires": { + "ci-info": "^3.2.0" + } + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==" + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + }, + "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==" + }, + "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-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==" + }, + "is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "requires": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + } + }, + "is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true + }, + "is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + } + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, + "is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==" + }, + "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==" + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" + }, + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" + }, + "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-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==" + }, + "is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==" + }, + "is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==" + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, + "is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==" + }, + "is-word-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==" + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } + }, + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==" + }, + "isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "requires": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "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.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + } + }, + "istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "dev": true, + "requires": { + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + } + }, + "jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "dependencies": { + "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" + } + }, + "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 + }, + "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 + } + } + }, + "jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "requires": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "requires": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-diff": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", + "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "requires": { + "detect-newline": "^3.0.0" + } + }, + "jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-get-type": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", + "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", + "dev": true + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@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.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "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" + } + } + } + }, + "jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "requires": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + } + } + }, + "jest-matcher-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", + "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "jest-message-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", + "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.4.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.4.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "dependencies": { + "@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*" + } + }, + "jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "requires": {} + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + } + }, + "jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "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" + } + } + } + }, + "jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "dependencies": { + "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" + } + }, + "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 + }, + "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 + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + } + }, + "jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "requires": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", + "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", + "requires": { + "@jest/types": "^29.4.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "dependencies": { + "@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "requires": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "requires": { + "@types/yargs-parser": "*" + } + } + } + }, + "jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + } + } + }, + "jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-worker": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", + "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", + "requires": { + "@types/node": "*", + "jest-util": "^29.4.3", + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "joi": { + "version": "17.8.3", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", + "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", + "requires": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "jotai": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", + "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", + "requires": {} + }, + "js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" + }, + "js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==" + }, + "js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "devOptional": true + }, + "js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "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": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "requires": { + "argparse": "^2.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "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.6", + "xml-name-validator": "^3.0.0" + }, + "dependencies": { + "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" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "tough-cookie": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", + "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "dev": true, + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + } + }, + "universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true + } + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + }, + "jsmin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/jsmin/-/jsmin-1.0.1.tgz", + "integrity": "sha512-OPuL5X/bFKgVdMvEIX3hnpx3jbVpFCrEM8pKPXjFkZUqg521r41ijdyTz7vACOhW6o1neVlcLyd+wkbK5fNHRg==" + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" + }, + "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-pointer": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", + "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", + "requires": { + "foreach": "^2.0.4" + } + }, + "json-promise": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", + "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", + "requires": { + "bluebird": "*" + } + }, + "json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "json-schema-compare": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", + "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", + "requires": { + "lodash": "^4.17.4" + } + }, + "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==" + }, + "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "devOptional": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==" + }, + "jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jsprim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", + "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "jxLoader": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jxLoader/-/jxLoader-0.1.1.tgz", + "integrity": "sha512-ClEvAj3K68y8uKhub3RgTmcRPo5DfIWvtxqrKQdDPyZ1UVHIIKvVvjrAsJFSVL5wjv0rt5iH9SMCZ0XRKNzeUA==", + "requires": { + "js-yaml": "0.3.x", + "moo-server": "1.3.x", + "promised-io": "*", + "walker": "1.x" + }, + "dependencies": { + "js-yaml": { + "version": "0.3.7", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-0.3.7.tgz", + "integrity": "sha512-/7PsVDNP2tVe2Z1cF9kTEkjamIwz4aooDpRKmN1+g/9eePCgcxsv4QDvEbxO0EH+gdDD7MLyDoR6BASo3hH51g==" + } + } + }, + "katex": { + "version": "0.13.24", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", + "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", + "requires": { + "commander": "^8.0.0" + }, + "dependencies": { + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" + } + } + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "requires": { + "json-buffer": "3.0.0" + } + }, + "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==" + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" + }, + "klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==" + }, + "kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" + }, + "latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "requires": { + "package-json": "^6.3.0" + } + }, + "lazy-ass": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", + "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", + "dev": true + }, + "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==" + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "devOptional": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==" + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "lint-staged": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", + "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", + "dev": true, + "requires": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.19", + "commander": "^9.4.1", + "debug": "^4.3.4", + "execa": "^6.1.0", + "lilconfig": "2.0.6", + "listr2": "^5.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.6.0", + "string-argv": "^0.3.1", + "yaml": "^2.1.3" + }, + "dependencies": { + "cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "requires": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + } + }, + "commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true + }, + "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 + }, + "execa": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", + "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^3.0.1", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + } + }, + "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 + }, + "human-signals": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", + "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true + }, + "is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true + }, + "listr2": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", + "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.19", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.8.0", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "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 + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true + }, + "npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "requires": { + "path-key": "^4.0.0" + } + }, + "onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "requires": { + "mimic-fn": "^4.0.0" + } + }, + "path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true + }, + "slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + } + } + }, + "strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "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" + }, + "dependencies": { + "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 + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "yaml": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", + "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", + "dev": true + } + } + }, + "liquid-json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", + "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==" + }, + "listr2": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", + "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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" + } + } + } + }, + "loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==" + }, + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "local-pkg": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", + "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", + "dev": true + }, + "locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "requires": { + "p-locate": "^6.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lodash.curry": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", + "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "lodash.flow": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", + "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "lodash.isequalwith": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", + "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "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==", + "devOptional": true + }, + "lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "dev": true + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "lodash.pickby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", + "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + } + }, + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.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 + }, + "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" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "logform": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.5.1.tgz", + "integrity": "sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==", + "requires": { + "@colors/colors": "1.5.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" + }, + "dependencies": { + "safe-stable-stringify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" + } + } + }, + "longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==" + }, + "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" + } + }, + "lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "requires": { + "tslib": "^2.0.3" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" + }, + "lz-string": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", + "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", + "dev": true + }, + "magic-error": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", + "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==" + }, + "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==", + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "requires": { + "tmpl": "1.0.5" + } + }, + "mark.js": { + "version": "8.11.1", + "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", + "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" + }, + "markdown-escapes": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==" + }, + "markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "requires": { + "repeat-string": "^1.0.0" + } + }, + "marked": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", + "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==" + }, + "match-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", + "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", + "requires": { + "@babel/runtime": "^7.12.5", + "remove-accents": "0.4.2" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdast-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "requires": { + "unist-util-remove": "^2.0.0" + } + }, + "mdast-util-definitions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", + "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "mdast-util-find-and-replace": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", + "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", + "requires": { + "escape-string-regexp": "^4.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + } + }, + "mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "requires": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "mdast-util-frontmatter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", + "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", + "requires": { + "micromark-extension-frontmatter": "^0.2.0" + } + }, + "mdast-util-gfm": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", + "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", + "requires": { + "mdast-util-gfm-autolink-literal": "^0.1.0", + "mdast-util-gfm-strikethrough": "^0.2.0", + "mdast-util-gfm-table": "^0.1.0", + "mdast-util-gfm-task-list-item": "^0.1.0", + "mdast-util-to-markdown": "^0.6.1" + } + }, + "mdast-util-gfm-autolink-literal": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", + "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", + "requires": { + "ccount": "^1.0.0", + "mdast-util-find-and-replace": "^1.1.0", + "micromark": "^2.11.3" + } + }, + "mdast-util-gfm-strikethrough": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", + "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", + "requires": { + "mdast-util-to-markdown": "^0.6.0" + } + }, + "mdast-util-gfm-table": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", + "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", + "requires": { + "markdown-table": "^2.0.0", + "mdast-util-to-markdown": "~0.6.0" + } + }, + "mdast-util-gfm-task-list-item": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", + "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", + "requires": { + "mdast-util-to-markdown": "~0.6.0" + } + }, + "mdast-util-to-hast": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", + "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^4.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "requires": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + } + }, + "mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==" + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" + }, + "memfs": { + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", + "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", + "requires": { + "fs-monkey": "^1.0.3" + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "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==" + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" + }, + "micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "requires": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "micromark-extension-frontmatter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", + "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", + "requires": { + "fault": "^1.0.0" + } + }, + "micromark-extension-gfm": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", + "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", + "requires": { + "micromark": "~2.11.0", + "micromark-extension-gfm-autolink-literal": "~0.5.0", + "micromark-extension-gfm-strikethrough": "~0.6.5", + "micromark-extension-gfm-table": "~0.4.0", + "micromark-extension-gfm-tagfilter": "~0.3.0", + "micromark-extension-gfm-task-list-item": "~0.3.0" + } + }, + "micromark-extension-gfm-autolink-literal": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", + "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", + "requires": { + "micromark": "~2.11.3" + } + }, + "micromark-extension-gfm-strikethrough": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", + "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromark-extension-gfm-table": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", + "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromark-extension-gfm-tagfilter": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", + "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==" + }, + "micromark-extension-gfm-task-list-item": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", + "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "microseconds": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", + "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-format": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", + "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", + "requires": { + "charset": "^1.0.0" + } + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" + }, + "mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" + }, + "min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", + "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", + "requires": { + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "requires": { + "minimist": "^1.2.6" + } + }, + "mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "mobx": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", + "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==" + }, + "mobx-react": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", + "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", + "requires": { + "mobx-react-lite": "^3.4.0" + } + }, + "mobx-react-lite": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", + "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", + "requires": {} + }, + "monaco-editor": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", + "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", + "peer": true + }, + "moo-server": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/moo-server/-/moo-server-1.3.0.tgz", + "integrity": "sha512-9A8/eor2DXwpv1+a4pZAAydqLFVrWoKoO1fzdzqLUhYVXAO1Kgd1FR2gFZi7YdHzF0s4W8cDNwCfKJQrvLqxDw==" + }, + "mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "requires": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + } + }, + "nano-memoize": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", + "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" + }, + "nano-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", + "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", + "requires": { + "big-integer": "^1.6.16" + } + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" + }, + "napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "devOptional": true + }, + "natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + }, + "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==" + }, + "no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node-abi": { + "version": "3.33.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", + "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", + "requires": { + "semver": "^7.3.5" + } + }, + "node-abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", + "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" + }, + "node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" + }, + "node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "requires": { + "lodash": "^4.17.21" + } + }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + }, + "dependencies": { + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + } + } + }, + "node-fetch-h2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", + "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", + "requires": { + "http2-client": "^1.2.5" + } + }, + "node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node-polyfill-webpack-plugin": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", + "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", + "requires": { + "assert": "^2.0.0", + "browserify-zlib": "^0.2.0", + "buffer": "^6.0.3", + "console-browserify": "^1.2.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.12.0", + "domain-browser": "^4.19.0", + "events": "^3.3.0", + "filter-obj": "^2.0.2", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "punycode": "^2.1.1", + "querystring-es3": "^0.2.1", + "readable-stream": "^3.6.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.3.0", + "timers-browserify": "^2.0.12", + "tty-browserify": "^0.0.1", + "url": "^0.11.0", + "util": "^0.12.4", + "vm-browserify": "^1.1.2" + }, + "dependencies": { + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + } + } + }, + "node-readfiles": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", + "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", + "requires": { + "es6-promise": "^3.2.1" + } + }, + "node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==" + }, + "normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" + }, + "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==", + "requires": { + "path-key": "^3.0.0" + } + }, + "nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "requires": { + "boolbase": "^1.0.0" + } + }, + "nwsapi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "dev": true + }, + "oas-kit-common": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", + "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", + "requires": { + "fast-safe-stringify": "^2.0.7" + } + }, + "oas-linter": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", + "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", + "requires": { + "@exodus/schemasafe": "^1.0.0-rc.2", + "should": "^13.2.1", + "yaml": "^1.10.0" + } + }, + "oas-resolver": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", + "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", + "requires": { + "node-fetch-h2": "^2.3.0", + "oas-kit-common": "^1.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "dependencies": { + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + } + } + }, + "oas-schema-walker": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", + "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==" + }, + "oas-validator": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", + "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", + "requires": { + "call-me-maybe": "^1.0.1", + "oas-kit-common": "^1.0.8", + "oas-linter": "^3.2.2", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "reftools": "^1.1.9", + "should": "^13.2.1", + "yaml": "^1.10.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" + }, + "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.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "dev": true, + "requires": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "oblivious-set": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", + "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "requires": { + "fn.name": "1.x.x" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "openapi-sampler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", + "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", + "requires": { + "@types/json-schema": "^7.0.7", + "json-pointer": "0.6.2" + } + }, + "openapi3-ts": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", + "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", + "requires": { + "yaml": "^1.10.2" + } + }, + "opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==" + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "devOptional": 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" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, + "ospath": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", + "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", + "dev": true + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" + }, + "p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "requires": { + "yocto-queue": "^1.0.0" + } + }, + "p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "requires": { + "p-limit": "^4.0.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "requires": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + } + }, + "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==" + }, + "package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "requires": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "papaparse": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", + "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" + }, + "param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "requires": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "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-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "requires": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "parse-json": { + "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" + } + }, + "parse-numeric-range": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + }, + "parse-srcset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", + "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" + }, + "parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "requires": { + "entities": "^4.4.0" + } + }, + "parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "requires": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" + }, + "path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "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-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + } + } + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "perfect-scrollbar": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", + "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + }, + "pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true + }, + "pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true + }, + "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==", + "requires": { + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "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==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "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==" + } + } + }, + "pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "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" + } + }, + "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-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": "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": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + } + } + }, + "pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==" + }, + "polished": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", + "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", + "requires": { + "@babel/runtime": "^7.17.8" + } + }, + "postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-calc": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "requires": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "requires": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "requires": {} + }, + "postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "requires": {} + }, + "postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "requires": {} + }, + "postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "requires": {} + }, + "postcss-discard-unused": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", + "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-loader": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", + "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.8" + } + }, + "postcss-merge-idents": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", + "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", + "requires": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "requires": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" + } + }, + "postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "requires": { + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "requires": { + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "requires": {} + }, + "postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "requires": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "requires": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "requires": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-reduce-idents": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", + "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-sort-media-queries": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", + "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", + "requires": { + "sort-css-media-queries": "2.1.0" + } + }, + "postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "requires": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + } + }, + "postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "postcss-zindex": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", + "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", + "requires": {} + }, + "postman-collection": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", + "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", + "requires": { + "@faker-js/faker": "5.5.3", + "file-type": "3.9.0", + "http-reasons": "0.1.0", + "iconv-lite": "0.6.3", + "liquid-json": "0.3.1", + "lodash": "4.17.21", + "mime-format": "2.0.1", + "mime-types": "2.1.35", + "postman-url-encoder": "3.0.5", + "semver": "7.3.8", + "uuid": "8.3.2" + }, + "dependencies": { + "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" + } + } + } + }, + "postman-url-encoder": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", + "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", + "requires": { + "punycode": "^2.1.1" + } + }, + "prebuild-install": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", + "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", + "requires": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "devOptional": true + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==" + }, + "prettier": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", + "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", + "dev": true, + "peer": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "requires": { + "fast-diff": "^1.1.2" + } + }, + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true + }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==" + }, + "pretty-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", + "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", + "requires": { + "lodash": "^4.17.20", + "renderkid": "^3.0.0" + } + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "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 + }, + "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==", + "dev": true + } + } + }, + "pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==" + }, + "prism-react-renderer": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", + "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", + "requires": {} + }, + "prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + }, + "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==" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "~2.0.3" + } + }, + "promised-io": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/promised-io/-/promised-io-0.3.6.tgz", + "integrity": "sha512-bNwZusuNIW4m0SPR8jooSyndD35ggirHlxVl/UhIaZD/F0OBv9ebfc6tNmbpZts3QXHggkjIBH8lvtnzhtcz0A==" + }, + "prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + } + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "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==" + } + } + }, + "property-information": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", + "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", + "requires": { + "xtend": "^4.0.0" + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "dependencies": { + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + } + } + }, + "proxy-from-env": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", + "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", + "dev": true + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" + }, + "pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "requires": { + "escape-goat": "^2.0.0" + } + }, + "pure-color": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", + "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" + }, + "qs": { + "version": "6.10.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", + "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + }, + "query-string": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", + "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", + "requires": { + "decode-uri-component": "^0.4.1", + "filter-obj": "^5.1.0", + "split-on-first": "^3.0.0" + }, + "dependencies": { + "filter-obj": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", + "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==" + } + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" + }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "requires": { + "inherits": "~2.0.3" + } + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==" + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + } + } + }, + "raw-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", + "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" + } + } + }, + "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" + } + }, + "react-base16-styling": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", + "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", + "requires": { + "base16": "^1.0.0", + "lodash.curry": "^4.0.1", + "lodash.flow": "^3.3.0", + "pure-color": "^1.2.0" + } + }, + "react-dev-utils": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", + "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", + "requires": { + "@babel/code-frame": "^7.16.0", + "address": "^1.1.2", + "browserslist": "^4.18.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "detect-port-alt": "^1.1.6", + "escape-string-regexp": "^4.0.0", + "filesize": "^8.0.6", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^6.5.0", + "global-modules": "^2.0.0", + "globby": "^11.0.4", + "gzip-size": "^6.0.0", + "immer": "^9.0.7", + "is-root": "^2.1.0", + "loader-utils": "^3.2.0", + "open": "^8.4.0", + "pkg-up": "^3.1.0", + "prompts": "^2.4.2", + "react-error-overlay": "^6.0.11", + "recursive-readdir": "^2.2.2", + "shell-quote": "^1.7.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==" + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "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==" + }, + "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==" + } + } + }, + "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-error-overlay": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", + "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" + }, + "react-fast-compare": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", + "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" + }, + "react-flow-renderer": { + "version": "10.3.17", + "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", + "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", + "optional": true, + "requires": { + "@babel/runtime": "^7.18.9", + "@types/d3": "^7.4.0", + "@types/resize-observer-browser": "^0.1.7", + "classcat": "^5.0.3", + "d3-drag": "^3.0.0", + "d3-selection": "^3.0.0", + "d3-zoom": "^3.0.0", + "zustand": "^3.7.2" + } + }, + "react-full-screen": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", + "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", + "requires": { + "fscreen": "^1.0.2" + } + }, + "react-helmet-async": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", + "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", + "requires": { + "@babel/runtime": "^7.12.5", + "invariant": "^2.2.4", + "prop-types": "^15.7.2", + "react-fast-compare": "^3.2.0", + "shallowequal": "^1.1.0" + } + }, + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "react-json-view": { + "version": "1.21.3", + "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", + "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", + "requires": { + "flux": "^4.0.1", + "react-base16-styling": "^0.6.0", + "react-lifecycles-compat": "^3.0.4", + "react-textarea-autosize": "^8.3.2" + } + }, + "react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "react-loadable": { + "version": "npm:@docusaurus/react-loadable@5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "requires": { + "@types/react": "*", + "prop-types": "^15.6.2" + } + }, + "react-loadable-ssr-addon-v5-slorber": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", + "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", + "requires": { + "@babel/runtime": "^7.10.3" + } + }, + "react-overflow-list": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", + "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", + "requires": { + "react-use": "^17.3.1" + }, + "dependencies": { + "react-use": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", + "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", + "requires": { + "@types/js-cookie": "^2.2.6", + "@xobotyi/scrollbar-width": "^1.9.5", + "copy-to-clipboard": "^3.3.1", + "fast-deep-equal": "^3.1.3", + "fast-shallow-equal": "^1.0.0", + "js-cookie": "^2.2.1", + "nano-css": "^5.3.1", + "react-universal-interface": "^0.6.2", + "resize-observer-polyfill": "^1.5.1", + "screenfull": "^5.1.0", + "set-harmonic-interval": "^1.0.1", + "throttle-debounce": "^3.0.1", + "ts-easing": "^0.2.0", + "tslib": "^2.1.0" + }, + "dependencies": { + "nano-css": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", + "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", + "requires": { + "css-tree": "^1.1.2", + "csstype": "^3.0.6", + "fastest-stable-stringify": "^2.0.2", + "inline-style-prefixer": "^6.0.0", + "rtl-css-js": "^1.14.0", + "sourcemap-codec": "^1.4.8", + "stacktrace-js": "^2.0.2", + "stylis": "^4.0.6" + } + } + } + } + } + }, + "react-query": { + "version": "3.39.3", + "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", + "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", + "requires": { + "@babel/runtime": "^7.5.5", + "broadcast-channel": "^3.4.1", + "match-sorter": "^6.0.2" + } + }, + "react-router": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", + "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", + "requires": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "hoist-non-react-statics": "^3.1.0", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.2", + "react-is": "^16.6.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.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==" + } + } + }, + "react-router-config": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", + "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", + "requires": { + "@babel/runtime": "^7.1.2" + } + }, + "react-router-dom": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", + "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", + "requires": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.3.4", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + } + }, + "react-router-hash-link": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", + "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", + "requires": { + "prop-types": "^15.7.2" + } + }, + "react-tabs": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", + "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", + "requires": { + "clsx": "^1.1.0", + "prop-types": "^15.5.0" + } + }, + "react-textarea-autosize": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", + "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", + "requires": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + } + }, + "react-tooltip": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", + "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", + "requires": { + "prop-types": "^15.8.1", + "uuid": "^7.0.3" + }, + "dependencies": { + "uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==" + } + } + }, + "react-universal-interface": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", + "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", + "requires": {} + }, + "react-waypoint": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", + "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", + "requires": { + "@babel/runtime": "^7.12.5", + "consolidated-events": "^1.1.0 || ^2.0.0", + "prop-types": "^15.0.0", + "react-is": "^17.0.1 || ^18.0.0" + } + }, + "readable-stream": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", + "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "requires": { + "picomatch": "^2.2.1" + } + }, + "reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "requires": { + "resolve": "^1.1.6" + } + }, + "recursive-readdir": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "requires": { + "minimatch": "^3.0.5" + } + }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, + "redoc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", + "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", + "requires": { + "@redocly/openapi-core": "^1.0.0-beta.104", + "classnames": "^2.3.1", + "decko": "^1.2.0", + "dompurify": "^2.2.8", + "eventemitter3": "^4.0.7", + "json-pointer": "^0.6.2", + "lunr": "^2.3.9", + "mark.js": "^8.11.1", + "marked": "^4.0.15", + "mobx-react": "^7.2.0", + "openapi-sampler": "^1.3.0", + "path-browserify": "^1.0.1", + "perfect-scrollbar": "^1.5.5", + "polished": "^4.1.3", + "prismjs": "^1.27.0", + "prop-types": "^15.7.2", + "react-tabs": "^3.2.2", + "slugify": "~1.4.7", + "stickyfill": "^1.1.1", + "style-loader": "^3.3.1", + "swagger2openapi": "^7.0.6", + "url-template": "^2.0.8" + }, + "dependencies": { + "slugify": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", + "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==" + }, + "style-loader": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", + "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", + "requires": {} + } + } + }, + "reftools": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", + "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==" + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "devOptional": true + }, + "regexpu-core": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", + "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "requires": { + "rc": "1.2.8" + } + }, + "registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "requires": { + "rc": "^1.2.8" + } + }, + "regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==" + } + } + }, + "rehype-katex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", + "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "requires": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.13.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "rehype-parse": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", + "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", + "requires": { + "hast-util-from-parse5": "^6.0.0", + "parse5": "^6.0.0" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==" + }, + "remark-emoji": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", + "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", + "requires": { + "emoticon": "^3.2.0", + "node-emoji": "^1.10.0", + "unist-util-visit": "^2.0.3" + } + }, + "remark-footnotes": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", + "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==" + }, + "remark-frontmatter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", + "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", + "requires": { + "mdast-util-frontmatter": "^0.2.0", + "micromark-extension-frontmatter": "^0.2.0" + } + }, + "remark-gfm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", + "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", + "requires": { + "mdast-util-gfm": "^0.1.0", + "micromark-extension-gfm": "^0.3.0" + } + }, + "remark-math": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", + "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==" + }, + "remark-mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", + "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "requires": { + "@babel/core": "7.12.9", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@mdx-js/util": "1.6.22", + "is-alphabetical": "1.0.4", + "remark-parse": "8.0.3", + "unified": "9.2.0" + }, + "dependencies": { + "@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.1" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + }, + "unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + } + } + } + }, + "remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "requires": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + } + }, + "remark-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "requires": { + "mdast-squeeze-paragraphs": "^4.0.0" + } + }, + "remark-stringify": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", + "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", + "requires": { + "mdast-util-to-markdown": "^0.6.0" + } + }, + "remove-accents": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", + "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" + }, + "renderkid": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", + "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", + "requires": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + } + } + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==" + }, + "request-progress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", + "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", + "dev": true, + "requires": { + "throttleit": "^1.0.0" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" + }, + "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==" + }, + "require-like": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", + "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==" + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "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" + }, + "dependencies": { + "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 + } + } + }, + "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==" + }, + "resolve-pathname": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", + "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" + }, + "resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "requires": { + "lowercase-keys": "^1.0.0" + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rtl-css-js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", + "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", + "requires": { + "@babel/runtime": "^7.1.2" + } + }, + "rtl-detect": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", + "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" + }, + "rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "requires": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "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==" + }, + "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==" + } + } + }, + "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==", + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "safe-stable-stringify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", + "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sanitize-html": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", + "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", + "requires": { + "deepmerge": "^4.2.2", + "escape-string-regexp": "^4.0.0", + "htmlparser2": "^8.0.0", + "is-plain-object": "^5.0.0", + "parse-srcset": "^1.0.2", + "postcss": "^8.3.11" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "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==", + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + }, + "screenfull": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", + "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==" + }, + "section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "requires": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "requires": { + "node-forge": "^1" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + }, + "dependencies": { + "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==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "requires": { + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + } + } + }, + "serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve-handler": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", + "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", + "requires": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + }, + "dependencies": { + "mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" + }, + "mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "requires": { + "mime-db": "~1.33.0" + } + }, + "path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + } + } + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==" + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==" + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "set-harmonic-interval": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", + "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==" + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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==", + "requires": { + "kind-of": "^6.0.2" + } + }, + "shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "sharp": { + "version": "0.30.7", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", + "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", + "requires": { + "color": "^4.2.3", + "detect-libc": "^2.0.1", + "node-addon-api": "^5.0.0", + "prebuild-install": "^7.1.1", + "semver": "^7.3.7", + "simple-get": "^4.0.1", + "tar-fs": "^2.1.1", + "tunnel-agent": "^0.6.0" + }, + "dependencies": { + "color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "requires": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + } + } + } + }, + "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==", + "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==" + }, + "shell-quote": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", + "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==" + }, + "shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "should": { + "version": "13.2.3", + "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", + "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", + "requires": { + "should-equal": "^2.0.0", + "should-format": "^3.0.3", + "should-type": "^1.4.0", + "should-type-adaptors": "^1.0.1", + "should-util": "^1.0.0" + } + }, + "should-equal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", + "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", + "requires": { + "should-type": "^1.4.0" + } + }, + "should-format": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", + "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", + "requires": { + "should-type": "^1.3.0", + "should-type-adaptors": "^1.0.1" + } + }, + "should-type": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", + "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" + }, + "should-type-adaptors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", + "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", + "requires": { + "should-type": "^1.3.0", + "should-util": "^1.0.0" + } + }, + "should-util": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", + "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, + "simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "requires": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "simple-html-tokenizer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", + "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + } + } + }, + "sirv": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", + "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "requires": { + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^1.0.0" + } + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "sitemap": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", + "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", + "requires": { + "@types/node": "^17.0.5", + "@types/sax": "^1.2.1", + "arg": "^5.0.0", + "sax": "^1.2.4" + }, + "dependencies": { + "@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" + } + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "slugify": { + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", + "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==" + }, + "sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "requires": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "sort-css-media-queries": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", + "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + }, + "space-separated-tokens": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", + "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==" + }, + "spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "requires": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "speed-measure-webpack-plugin": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", + "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", + "dev": true, + "requires": { + "chalk": "^4.1.0" + } + }, + "split-on-first": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", + "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssr-window": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", + "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" + }, + "stack-generator": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", + "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", + "requires": { + "stackframe": "^1.3.4" + } + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==" + }, + "stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "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 + } + } + }, + "stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" + }, + "stacktrace-gps": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", + "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", + "requires": { + "source-map": "0.5.6", + "stackframe": "^1.3.4" + }, + "dependencies": { + "source-map": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==" + } + } + }, + "stacktrace-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", + "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", + "requires": { + "error-stack-parser": "^2.0.6", + "stack-generator": "^2.0.5", + "stacktrace-gps": "^3.0.4" + } + }, + "state-local": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", + "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" + }, + "state-toggle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==" + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" + }, + "std-env": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", + "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" + }, + "stickyfill": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", + "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" + }, + "stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "requires": { + "internal-slot": "^1.0.4" + } + }, + "stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "requires": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true + }, + "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": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "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-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==" + }, + "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==" + }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + }, + "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==" + }, + "style-loader": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0" + } + }, + "style-to-object": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", + "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "requires": { + "inline-style-parser": "0.1.1" + } + }, + "styled-components": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", + "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^0.8.8", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "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" + } + } + } + }, + "stylehacks": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "requires": { + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" + } + }, + "stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "requires": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "svg-inline-loader": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", + "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "object-assign": "^4.0.1", + "simple-html-tokenizer": "^0.1.1" + }, + "dependencies": { + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "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==" + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + } + } + }, + "swagger2openapi": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", + "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", + "requires": { + "call-me-maybe": "^1.0.1", + "node-fetch": "^2.6.1", + "node-fetch-h2": "^2.3.0", + "node-readfiles": "^0.2.0", + "oas-kit-common": "^1.0.8", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "oas-validator": "^5.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "dependencies": { + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + } + } + }, + "swiper": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", + "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", + "requires": { + "dom7": "^4.0.4", + "ssr-window": "^4.0.2" + } + }, + "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 + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" + }, + "tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + } + }, + "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.16.5", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", + "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "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==" + } + } + }, + "terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "requires": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "dependencies": { + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.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==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "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-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "throttle-debounce": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", + "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==" + }, + "throttleit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", + "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "requires": { + "setimmediate": "^1.0.4" + } + }, + "timespan": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", + "integrity": "sha512-0Jq9+58T2wbOyLth0EU+AUb6JMGCLaTWIykJFa7hyAybjVH9gpVMTfUAwo5fWAvtFt2Tjh/Elg8JtgNpnMnM8g==" + }, + "tiny-invariant": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", + "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" + }, + "tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "requires": { + "rimraf": "^3.0.0" + } + }, + "tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" + }, + "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==", + "requires": { + "is-number": "^7.0.0" + } + }, + "toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" + }, + "totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==" + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "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" + } + }, + "trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==" + }, + "trim-trailing-lines": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", + "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==" + }, + "triple-beam": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", + "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==" + }, + "trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==" + }, + "ts-easing": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", + "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" + }, + "ts-keycode-enum": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", + "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" + }, + "tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "dev": true + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "devOptional": 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": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + } + }, + "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==", + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "peer": true + }, + "ua-parser-js": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", + "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==" + }, + "uglify-js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz", + "integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ==" + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "unherit": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "requires": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==" + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==" + }, + "unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==" + }, + "unified": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", + "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + } + }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "requires": { + "crypto-random-string": "^2.0.0" + } + }, + "unist-builder": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", + "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==" + }, + "unist-util-find-after": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", + "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", + "requires": { + "unist-util-is": "^4.0.0" + } + }, + "unist-util-generated": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", + "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==" + }, + "unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==" + }, + "unist-util-position": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", + "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==" + }, + "unist-util-remove": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", + "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "requires": { + "unist-util-is": "^4.0.0" + } + }, + "unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "unist-util-select": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", + "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", + "requires": { + "@types/unist": "^2.0.0", + "css-selector-parser": "^1.0.0", + "nth-check": "^2.0.0", + "zwitch": "^2.0.0" + }, + "dependencies": { + "zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" + } + } + }, + "unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "requires": { + "@types/unist": "^2.0.2" + } + }, + "unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + } + }, + "unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + }, + "unload": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", + "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", + "requires": { + "@babel/runtime": "^7.6.2", + "detect-node": "^2.0.4" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" + }, + "untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "requires": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + } + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" + }, + "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==" + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "requires": { + "ci-info": "^2.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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==" + }, + "widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "requires": { + "string-width": "^4.0.0" + } + }, + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + } + } + }, + "url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "requires": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "requires": { + "prepend-http": "^2.0.0" + } + }, + "url-template": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", + "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" + }, + "use-composed-ref": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", + "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", + "requires": {} + }, + "use-isomorphic-layout-effect": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", + "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "requires": {} + }, + "use-latest": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", + "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", + "requires": { + "use-isomorphic-layout-effect": "^1.1.1" + } + }, + "use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "requires": {} + }, + "util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "requires": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" + }, + "utility-types": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", + "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "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.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "validate.io-array": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", + "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" + }, + "validate.io-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", + "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" + }, + "validate.io-integer": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", + "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", + "requires": { + "validate.io-number": "^1.0.3" + } + }, + "validate.io-integer-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", + "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", + "requires": { + "validate.io-array": "^1.0.3", + "validate.io-integer": "^1.0.4" + } + }, + "validate.io-number": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", + "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" + }, + "value-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", + "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + } + }, + "vfile-location": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", + "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==" + }, + "vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "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" + } + }, + "wait-on": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", + "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", + "requires": { + "axios": "^0.25.0", + "joi": "^17.6.0", + "lodash": "^4.17.21", + "minimist": "^1.2.5", + "rxjs": "^7.5.4" + }, + "dependencies": { + "axios": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", + "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "requires": { + "follow-redirects": "^1.14.7" + } + } + } + }, + "walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "requires": { + "makeerror": "1.0.12" + } + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "web-namespaces": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", + "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==" + }, + "web-streams-polyfill": { + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", + "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==" + }, + "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.75.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", + "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", + "requires": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "webpack-bundle-analyzer": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", + "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", + "requires": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "dependencies": { + "acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" + }, + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" + } + } + }, + "webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "webpack-dev-server": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", + "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "requires": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + }, + "ws": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", + "requires": {} + } + } + }, + "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==", + "requires": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + } + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==" + }, + "webpackbar": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", + "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", + "requires": { + "chalk": "^4.1.0", + "consola": "^2.15.3", + "pretty-time": "^1.1.0", + "std-env": "^3.0.1" + } + }, + "websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "requires": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==" + }, + "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" + } + }, + "whatwg-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" + }, + "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" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "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==", + "dev": true, + "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-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "requires": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + } + }, + "which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + } + }, + "widest-line": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", + "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", + "requires": { + "string-width": "^5.0.1" + } + }, + "wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" + }, + "winston": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.10.0.tgz", + "integrity": "sha512-nT6SIDaE9B7ZRO0u3UvdrimG0HkB7dSTAgInQnNR2SOPJ4bvq5q79+pXLftKmP52lJGW15+H5MCK0nM9D3KB/g==", + "requires": { + "@colors/colors": "1.5.0", + "@dabh/diagnostics": "^2.0.2", + "async": "^3.2.3", + "is-stream": "^2.0.0", + "logform": "^2.4.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "safe-stable-stringify": "^2.3.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.5.0" + }, + "dependencies": { + "safe-stable-stringify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" + } + } + }, + "winston-transport": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz", + "integrity": "sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==", + "requires": { + "logform": "^2.3.2", + "readable-stream": "^3.6.0", + "triple-beam": "^1.3.0" + } + }, + "wolfy87-eventemitter": { + "version": "5.2.9", + "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", + "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" + }, + "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==", + "devOptional": true + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + }, + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "wrench": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/wrench/-/wrench-1.3.9.tgz", + "integrity": "sha512-srTJQmLTP5YtW+F5zDuqjMEZqLLr/eJOZfDI5ibfPfRMeDh3oBUefAscuH0q5wBKE339ptH/S/0D18ZkfOfmKQ==" + }, + "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==", + "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.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "requires": {} + }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" + }, + "xml-formatter": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", + "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", + "requires": { + "xml-parser-xo": "^3.2.0" + } + }, + "xml-js": { + "version": "1.6.11", + "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", + "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", + "requires": { + "sax": "^1.2.4" + } + }, + "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 + }, + "xml-parser-xo": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", + "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==" + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + }, + "yaml-ast-parser": { + "version": "0.0.43", + "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", + "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" + }, + "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" + }, + "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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "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 + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true + }, + "zustand": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", + "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", + "requires": {} + }, + "zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==" + } + } +} From 40971bf81a37dde2c8d19bdcb9ad3a9eff8d5756 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 10:35:45 +0100 Subject: [PATCH 376/703] fix spacing --- website/snippets/_legacy-sl-callout.md | 2 +- website/snippets/_sl-plan-info.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/_legacy-sl-callout.md b/website/snippets/_legacy-sl-callout.md index 84c91895f89..f45c6b68af3 100644 --- a/website/snippets/_legacy-sl-callout.md +++ b/website/snippets/_legacy-sl-callout.md @@ -2,7 +2,7 @@ The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), improving governance, introducing a new API, and making it more efficient to define and query metrics. The legacy Semantic Layer, available in dbt v1.5 or lower, is no longer supported and won't receive any code fixes. -**Who does this affect?** Anyone who uses the legacy Semantic Layer. The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses). You must be on dbt v1.6 or higher to access it. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. +**Who does this affect?** Anyone who uses the legacy Semantic Layer. The new Semantic Layer is available to [Team or Enterprise](https://www.getdbt.com/pricing/) multi-tenant dbt Cloud plans [hosted in North America](/docs/cloud/about-cloud/regions-ip-addresses) (more regions coming soon). You must be on dbt v1.6 or higher to access it. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally. **What’s changed?** The dbt_metrics package has been [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new framework for defining metrics in dbt. This means dbt_metrics is no longer supported after dbt v1.5 and won't receive any code fixes. diff --git a/website/snippets/_sl-plan-info.md b/website/snippets/_sl-plan-info.md index b5cc2ea0e4e..f1a721c90fc 100644 --- a/website/snippets/_sl-plan-info.md +++ b/website/snippets/_sl-plan-info.md @@ -1 +1 @@ -During {props.cycle}, you can access {props.product} on {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools. +During {props.cycle}, you can access {props.product} on {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools.

From 0a93f4c21be246fcec8d015d67e27abc17734b6d Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 12:09:05 +0100 Subject: [PATCH 377/703] update data --- website/docs/docs/build/sl-getting-started.md | 17 +++++++++++++++++ .../06-July-2023/sl-revamp-beta.md | 4 ++++ .../use-dbt-semantic-layer/quickstart-sl.md | 3 +-- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index c56fa7b9a5e..0e6c9c87d04 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -230,6 +230,23 @@ To connect and query your metrics using the dbt Semantic Layer and its API: Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. +## FAQs + +If you're encountering some issues when defining your metrics or setting up the dbt Semantic Layer, check out a list of answers to some of the questions or problems you may be experiencing. + +
+ How do I migrate from the legacy Semantic Layer to the new one? +
+
If you're using the legacy Semantic Layer, we highly recommend you upgrade your dbt version to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated migration guide for more info.
+
+
+
+How are you storing my data? +User data passes through the Semantic Layer on its way back from the warehouse. dbt Labs ensures security by authenticating through the customer's data warehouse. Currently, we don't cache data for the long term, but it might temporarily stay in the system for up to 10 minutes, usually less. In the future, we'll introduce a caching feature that allows us to cache data on our infrastructure for up to 24 hours. +
+
+Is the dbt Semantic Layer open source? +The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

The universal dbt Semantic Layer is available to all Team and Enterprise Plans during public beta. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally.
## Related docs diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index c29468199a8..9831f012d53 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -16,6 +16,10 @@ dbt Labs are thrilled to announce the re-release of the [dbt Semantic Layer](/do With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. +:::important +If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. To migrate to the new Semantic Layer, refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. +::: + ## Enhanced dbt Semantic Layer diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index d780cbb44fe..e4f9810b58d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -182,12 +182,11 @@ If you're encountering some issues when defining your metrics or setting up the
How are you storing my data? -The dbt Semantic Layer does not store, or cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool. +User data passes through the Semantic Layer on its way back from the warehouse. dbt Labs ensures security by authenticating through the customer's data warehouse. Currently, we don't cache data for the long term, but it might temporarily stay in the system for up to 10 minutes, usually less. In the future, we'll introduce a caching feature that allows us to cache data on our infrastructure for up to 24 hours.
Is the dbt Semantic Layer open source? The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

The universal dbt Semantic Layer is available to all Team and Enterprise Plans during public beta. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally.
- ## Next steps From 727c7f9813d43e0c2ed2b0691ca6122f2119bde6 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 12:11:21 +0100 Subject: [PATCH 378/703] fix callout section --- .../release-notes/06-July-2023/sl-revamp-beta.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index 9831f012d53..a3123237074 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -7,6 +7,10 @@ date: 2023-07-31 sidebar_position: 9 --- +:::important +If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. To migrate to the new Semantic Layer, refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. +::: + dbt Labs are thrilled to announce the re-release of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), now available in [public beta](#public-beta). It aims to bring the best of modeling and semantics to downstream applications by introducing: - [MetricFlow](/docs/build/about-metricflow) is a framework for constructing performant and legible SQL from an all new set of semantic constructs which include semantic models, entities, and metrics. @@ -16,10 +20,6 @@ dbt Labs are thrilled to announce the re-release of the [dbt Semantic Layer](/do With semantics at its core, the dbt Semantic Layer marks a crucial milestone towards a new era of centralized logic and data applications. -:::important -If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. To migrate to the new Semantic Layer, refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. -::: - ## Enhanced dbt Semantic Layer From d3b83d17335371db28cd0f261f3b6b65c318b4e5 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 16:38:28 +0100 Subject: [PATCH 379/703] add callout and clarify versions --- website/docs/docs/collaborate/govern/model-versions.md | 4 ++++ website/docs/reference/project-configs/version.md | 5 +++++ website/docs/reference/resource-properties/versions.md | 4 ++++ website/snippets/_version-callout.md | 7 +++++++ 4 files changed, 20 insertions(+) create mode 100644 website/snippets/_version-callout.md diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index 12599d0b65f..0648bc3b8d6 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -3,8 +3,12 @@ title: "Model versions" id: model-versions sidebar_label: "Model versions" description: "Version models to help with lifecycle management" +keyword: governance, model version, model versioning, dbt model versioning --- +import VersionsCallout from '/snippets/_version-callout.md;' + + :::info New functionality This functionality is new in v1.5 — if you have thoughts, participate in [the discussion on GitHub](https://github.com/dbt-labs/dbt-core/discussions/6736)! diff --git a/website/docs/reference/project-configs/version.md b/website/docs/reference/project-configs/version.md index 4c128727445..f153877f22b 100644 --- a/website/docs/reference/project-configs/version.md +++ b/website/docs/reference/project-configs/version.md @@ -1,8 +1,13 @@ --- datatype: version required: True +keyword: project version, project versioning, dbt project versioning --- +import VersionsCallout from '/snippets/_version-callout.md;' + + + dbt projects have two distinct types of the `version` tags. This field has a different meaning depending on its location. diff --git a/website/docs/reference/resource-properties/versions.md b/website/docs/reference/resource-properties/versions.md index 7e107ff31e3..be2145e0652 100644 --- a/website/docs/reference/resource-properties/versions.md +++ b/website/docs/reference/resource-properties/versions.md @@ -2,8 +2,12 @@ resource_types: [models] datatype: list required: no +keyword: governance, model version, model versioning, dbt model versioning --- +import VersionsCallout from '/snippets/_version-callout.md;' + + diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md new file mode 100644 index 00000000000..e5c21a7050d --- /dev/null +++ b/website/snippets/_version-callout.md @@ -0,0 +1,7 @@ + +::: important + +Take note that a version tag (or `version`) is different to [`versions`](/reference/resource-properties/versions_) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt (not required for dbt v1.5 and higher). + +Model versions and `versions` are _features_ that enable better governance and data model management by allowing you to track changes and updates to models over time. Model versions and `versions` are available in dbt v1.5 or higher. +::: From 164ddd458284461c89199b12e75cd2538e0e93e2 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 16:42:04 +0100 Subject: [PATCH 380/703] nits --- website/docs/docs/collaborate/govern/model-versions.md | 2 +- website/docs/reference/project-configs/version.md | 2 +- website/docs/reference/resource-properties/versions.md | 2 +- website/snippets/_version-callout.md | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index 0648bc3b8d6..c2956d74c7e 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -6,7 +6,7 @@ description: "Version models to help with lifecycle management" keyword: governance, model version, model versioning, dbt model versioning --- -import VersionsCallout from '/snippets/_version-callout.md;' +import VersionsCallout from '/snippets/_version-callout.md'; diff --git a/website/docs/reference/project-configs/version.md b/website/docs/reference/project-configs/version.md index f153877f22b..1c947412fcd 100644 --- a/website/docs/reference/project-configs/version.md +++ b/website/docs/reference/project-configs/version.md @@ -4,7 +4,7 @@ required: True keyword: project version, project versioning, dbt project versioning --- -import VersionsCallout from '/snippets/_version-callout.md;' +import VersionsCallout from '/snippets/_version-callout.md'; diff --git a/website/docs/reference/resource-properties/versions.md b/website/docs/reference/resource-properties/versions.md index be2145e0652..3b8aa7dd1b3 100644 --- a/website/docs/reference/resource-properties/versions.md +++ b/website/docs/reference/resource-properties/versions.md @@ -5,7 +5,7 @@ required: no keyword: governance, model version, model versioning, dbt model versioning --- -import VersionsCallout from '/snippets/_version-callout.md;' +import VersionsCallout from '/snippets/_version-callout.md'; diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index e5c21a7050d..9652986f19f 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -1,7 +1,7 @@ -::: important +:::important -Take note that a version tag (or `version`) is different to [`versions`](/reference/resource-properties/versions_) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt (not required for dbt v1.5 and higher). +Take note that a [version tag](/reference/project-configs/version) (or `version`) is different to [`versions`](/reference/resource-properties/versions_) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt. A version tag isn't required for dbt v1.5 and higher. Model versions and `versions` are _features_ that enable better governance and data model management by allowing you to track changes and updates to models over time. Model versions and `versions` are available in dbt v1.5 or higher. ::: From b8f2a080b436a6b427761dd7ece98cae01ad9f99 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:48:26 +0100 Subject: [PATCH 381/703] Update website/snippets/_version-callout.md --- website/snippets/_version-callout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index 9652986f19f..7fba6752505 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -1,7 +1,7 @@ :::important -Take note that a [version tag](/reference/project-configs/version) (or `version`) is different to [`versions`](/reference/resource-properties/versions_) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt. A version tag isn't required for dbt v1.5 and higher. +Take note that a [version tag](/reference/project-configs/version) (or `version`) is different to [`versions`](/reference/resource-properties/versions) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt. A version tag isn't required for dbt v1.5 and higher. Model versions and `versions` are _features_ that enable better governance and data model management by allowing you to track changes and updates to models over time. Model versions and `versions` are available in dbt v1.5 or higher. ::: From c5b9bcde876b27f60d49a978df9f2cde9d58cf94 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:51:39 +0100 Subject: [PATCH 382/703] Update website/docs/docs/dbt-cloud-apis/sl-manifest.md --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index 106e228a003..a143c878dce 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -25,7 +25,12 @@ Similar to the [`manifest.json` file](/reference/artifacts/manifest-json), the ` The `semantic_manifest.json` is produced whenever your dbt project is parsed. The easiest way to generate the file yourself is to run `dbt parse`. Since `dbt run`, `dbt build`, and `dbt compile` all parse your dbt project, these commands will generate a semantic manifest as well. -QUESTIONS: +## Top level keys + +Top-level keys for the semantic manifest are: +- `semantic_models` — Starting points of data with entities, dimensions, and measures, and correspond to models in your dbt project. +- `metrics` — Functions combining measures, constraints, and so on to define quantitative indicators. +- `project_configuration` — Contains information around your project configurations - WHAT IS IT PRODUCED BY? - WHAT ARE THE TOP LEVEL KEYS? - HOW DOES IT RELATED TO THE [JSON SCHEMA FILE](https://schemas.getdbt.com/)? From 9575b9d04c5f705be2b9fb886cb725ce3328733a Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:52:13 +0100 Subject: [PATCH 383/703] Update sl-manifest.md --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index a143c878dce..adfe65c79bc 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -31,9 +31,6 @@ Top-level keys for the semantic manifest are: - `semantic_models` — Starting points of data with entities, dimensions, and measures, and correspond to models in your dbt project. - `metrics` — Functions combining measures, constraints, and so on to define quantitative indicators. - `project_configuration` — Contains information around your project configurations -- WHAT IS IT PRODUCED BY? -- WHAT ARE THE TOP LEVEL KEYS? -- HOW DOES IT RELATED TO THE [JSON SCHEMA FILE](https://schemas.getdbt.com/)?
Example target/semantic_manifest.json file From cb72aad55be7ad2e7d8e5a46ea96e499bc6356d3 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:52:34 +0100 Subject: [PATCH 384/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 7a5488a92ea..18184d6e670 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -12,7 +12,7 @@ import NewSLChanges from '/snippets/_new-sl-changes.md'; -With the dbt Semantic Layer, you'll be able to centrally define business metrics, reduce code duplication and inconsistency, create self-service in downstream tools, and more. Configure the dbt Semantic Layer in dbt Cloud to connect with your integrated partner tool. +With the dbt Semantic Layer, you can centrally define business metrics, reduce code duplication and inconsistency, create self-service in downstream tools, and more. Configure the dbt Semantic Layer in dbt Cloud to connect with your integrated partner tool. ## Prerequisites From bfefcc0abdb4685e5be1c2fededd286e9c4a2839 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:52:48 +0100 Subject: [PATCH 385/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 18184d6e670..10cac28958f 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -16,7 +16,6 @@ With the dbt Semantic Layer, you can centrally define business metrics, reduce c ## Prerequisites -Before you set up the dbt Semantic Layer, make sure you meet the following: import SetUp from '/snippets/_v2-sl-prerequisites.md'; From e0d3ff05a14c672313b74a994b3d4dad6c924a3c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:52:59 +0100 Subject: [PATCH 386/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 10cac28958f..f67dac7e980 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -46,7 +46,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; -With the dbt Semantic Layer, you'll be able to centrally define business metrics, reduce code duplication and inconsistency, create self-service in downstream tools, and more. Configure the dbt Semantic Layer in dbt Cloud to connect with your integrated partner tool. +With the dbt Semantic Layer, you can define business metrics, reduce code duplication and inconsistency, create self-service in downstream tools, and more. Configure the dbt Semantic Layer in dbt Cloud to connect with your integrated partner tool. ## Prerequisites From 633e6a4da6650a050e648a98cfabf71eaa426737 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:53:08 +0100 Subject: [PATCH 387/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index f67dac7e980..c5711304fba 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -50,7 +50,6 @@ With the dbt Semantic Layer, you can define business metrics, reduce code duplic ## Prerequisites -Before you set up the dbt Semantic Layer, make sure you meet the following: From dd4335c90a2a46d77eb9785526ebcd7e41e73731 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:53:15 +0100 Subject: [PATCH 388/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index c5711304fba..0aaa301cb9c 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -56,7 +56,7 @@ With the dbt Semantic Layer, you can define business metrics, reduce code duplic ## Set up dbt Semantic Layer :::tip -If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. +If you're using the legacy Semantic Layer, dbt Labs strongly recommends that you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the latest dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. ::: From fbb1fa684589cdccbb7d22398dfcd314d93a7fab Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:53:29 +0100 Subject: [PATCH 389/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 0aaa301cb9c..0f034b1547d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -60,7 +60,6 @@ If you're using the legacy Semantic Layer, dbt Labs strongly recommends that you ::: -Before you continue with the following steps, you **must** have a multi-tenant dbt Cloud account hosted in North America. * Team and Enterprise accounts can set up the Semantic Layer and [Discovery API](/docs/dbt-cloud-apis/discovery-api) in the integrated partner tool to import metric definitions. * Developer accounts can query the Proxy Server using SQL but won't be able to browse dbt metrics in external tools, which requires access to the Discovery API. From ae098f39cedfea375512dbd922909256b45aef6b Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:53:40 +0100 Subject: [PATCH 390/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 0f034b1547d..b1354d7f274 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -69,7 +69,7 @@ You can set up the dbt Semantic Layer in dbt Cloud at the environment level by f 2. Go to **Account Settings**, and then **Service Tokens** to create a new [service account API token](/docs/dbt-cloud-apis/service-tokens). Save your token somewhere safe. 3. Assign permissions to service account tokens depending on the integration tool you choose. You can review the [integration partner documentation](https://www.getdbt.com/product/semantic-layer-integrations) to determine the permission sets you need to assign. 4. Go to **Deploy** and then **Environment**, and select your **Deployment** environment. -5. Click on **Settings** on the top right side of the page. +5. Click **Settings** on the top right side of the page. 6. Click **Edit** on the top right side of the page. 7. Select dbt version 1.2 or higher. 8. Toggle the Semantic Layer **On**. From 02645ada9e3207399defd89dc0a5c9874b1d7cad Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:55:06 +0100 Subject: [PATCH 391/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index b1354d7f274..c652146866d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -79,7 +79,7 @@ You can set up the dbt Semantic Layer in dbt Cloud at the environment level by f :::info📌 -Note - It is _not_ recommended that you use your dbt Cloud credentials due to elevated permissions. Instead, you can use your specific integration tool permissions. +It is _not_ recommended that you use your dbt Cloud credentials due to elevated permissions. Instead, you can use your specific integration tool permissions. ::: From 7a2a689c79f566154ca1db1b94705860f7d8ecf3 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:55:15 +0100 Subject: [PATCH 392/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index c652146866d..b5dd00b025c 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -1,7 +1,7 @@ --- title: "Set up the dbt Semantic Layer" id: setup-sl -description: "Seamlessly set up the dbt Semantic Layer in dbt Cloud using intuitive nagivation." +description: "Seamlessly set up the dbt Semantic Layer in dbt Cloud using intuitive navigation." sidebar_label: "Set up your Semantic Layer" tags: [Semantic Layer] --- From 36f1dc8996fd058a7da327addaabe79003e70ebb Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:55:24 +0100 Subject: [PATCH 393/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index b5dd00b025c..8761c39b746 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -85,7 +85,7 @@ It is _not_ recommended that you use your dbt Cloud credentials due to elevated 12. Set up the [Discovery API](/docs/dbt-cloud-apis/discovery-api) (Team and Enterprise accounts only) in the integrated partner tool to import the metric definitions. The [integrated partner tool](https://www.getdbt.com/product/semantic-layer-integrations) will treat the dbt Server as another data source (like a data platform). This requires: -- The account ID, environment ID, and job ID (visible in the job URL) +- The account ID, environment ID, and job ID (which is visible in the job URL) - An [API service token](/docs/dbt-cloud-apis/service-tokens) with job admin and metadata permissions - Add the items above to the relevant fields in your integration tool From 299b4ad1e3dc4467d0155128221b2c444997d702 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:55:51 +0100 Subject: [PATCH 394/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 8761c39b746..43317a46bcb 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -63,7 +63,6 @@ If you're using the legacy Semantic Layer, dbt Labs strongly recommends that you * Team and Enterprise accounts can set up the Semantic Layer and [Discovery API](/docs/dbt-cloud-apis/discovery-api) in the integrated partner tool to import metric definitions. * Developer accounts can query the Proxy Server using SQL but won't be able to browse dbt metrics in external tools, which requires access to the Discovery API. -You can set up the dbt Semantic Layer in dbt Cloud at the environment level by following these steps: 1. Login to your dbt Cloud account 2. Go to **Account Settings**, and then **Service Tokens** to create a new [service account API token](/docs/dbt-cloud-apis/service-tokens). Save your token somewhere safe. From a8a517b394c1f9cb87dcdcb1e03b10b6cedc0060 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:56:05 +0100 Subject: [PATCH 395/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 43317a46bcb..ae8efe351ce 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -64,7 +64,7 @@ If you're using the legacy Semantic Layer, dbt Labs strongly recommends that you * Developer accounts can query the Proxy Server using SQL but won't be able to browse dbt metrics in external tools, which requires access to the Discovery API. -1. Login to your dbt Cloud account +1. Log in to your dbt Cloud account. 2. Go to **Account Settings**, and then **Service Tokens** to create a new [service account API token](/docs/dbt-cloud-apis/service-tokens). Save your token somewhere safe. 3. Assign permissions to service account tokens depending on the integration tool you choose. You can review the [integration partner documentation](https://www.getdbt.com/product/semantic-layer-integrations) to determine the permission sets you need to assign. 4. Go to **Deploy** and then **Environment**, and select your **Deployment** environment. From 9ada74213119f0aec59e95fc42043b15d9767e41 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:56:20 +0100 Subject: [PATCH 396/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index ae8efe351ce..40bcbf17b2b 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -66,7 +66,7 @@ If you're using the legacy Semantic Layer, dbt Labs strongly recommends that you 1. Log in to your dbt Cloud account. 2. Go to **Account Settings**, and then **Service Tokens** to create a new [service account API token](/docs/dbt-cloud-apis/service-tokens). Save your token somewhere safe. -3. Assign permissions to service account tokens depending on the integration tool you choose. You can review the [integration partner documentation](https://www.getdbt.com/product/semantic-layer-integrations) to determine the permission sets you need to assign. +3. Assign permissions to service account tokens depending on the integration tool you choose. Refer to the [integration partner documentation](https://www.getdbt.com/product/semantic-layer-integrations) to determine the permission sets you need to assign. 4. Go to **Deploy** and then **Environment**, and select your **Deployment** environment. 5. Click **Settings** on the top right side of the page. 6. Click **Edit** on the top right side of the page. From 479d023dab84455e8a74e67d7c0e189a8b8d869e Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 16:56:36 +0100 Subject: [PATCH 397/703] Update website/docs/docs/use-dbt-semantic-layer/setup-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/setup-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md index 40bcbf17b2b..a2395d367e7 100644 --- a/website/docs/docs/use-dbt-semantic-layer/setup-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/setup-sl.md @@ -67,7 +67,7 @@ If you're using the legacy Semantic Layer, dbt Labs strongly recommends that you 1. Log in to your dbt Cloud account. 2. Go to **Account Settings**, and then **Service Tokens** to create a new [service account API token](/docs/dbt-cloud-apis/service-tokens). Save your token somewhere safe. 3. Assign permissions to service account tokens depending on the integration tool you choose. Refer to the [integration partner documentation](https://www.getdbt.com/product/semantic-layer-integrations) to determine the permission sets you need to assign. -4. Go to **Deploy** and then **Environment**, and select your **Deployment** environment. +4. Go to **Deploy** > **Environments**, and select your **Deployment** environment. 5. Click **Settings** on the top right side of the page. 6. Click **Edit** on the top right side of the page. 7. Select dbt version 1.2 or higher. From 6e3b470aea631c71672630217ff82df0ca090049 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 17:12:33 +0100 Subject: [PATCH 398/703] Update model-versions.md --- website/docs/docs/collaborate/govern/model-versions.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index c2956d74c7e..e21f963057f 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -6,14 +6,15 @@ description: "Version models to help with lifecycle management" keyword: governance, model version, model versioning, dbt model versioning --- -import VersionsCallout from '/snippets/_version-callout.md'; - - - :::info New functionality This functionality is new in v1.5 — if you have thoughts, participate in [the discussion on GitHub](https://github.com/dbt-labs/dbt-core/discussions/6736)! ::: + +import VersionsCallout from '/snippets/_version-callout.md'; + + + Versioning APIs is a hard problem in software engineering. The root of the challenge is that the producers and consumers of an API have competing incentives: - Producers of an API need the ability to modify its logic and structure. There is a real cost to maintaining legacy endpoints forever, but losing the trust of downstream users is far costlier. - Consumers of an API need to trust in its stability: their queries will keep working, and won't break without warning. Although migrating to a newer API version incurs an expense, an unplanned migration is far costlier. From 6d44f645346a403673ec03274f7c1b3153c93c86 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 27 Jul 2023 17:13:20 +0100 Subject: [PATCH 399/703] Update _version-callout.md --- website/snippets/_version-callout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index 7fba6752505..5dc168abeef 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -1,5 +1,5 @@ -:::important +:::tip Take note that a [version tag](/reference/project-configs/version) (or `version`) is different to [`versions`](/reference/resource-properties/versions) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt. A version tag isn't required for dbt v1.5 and higher. From f96ff78f5fbf97c52a0bb3d84e45559326c9deb6 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 27 Jul 2023 17:20:19 +0100 Subject: [PATCH 400/703] add info header --- website/snippets/_version-callout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index 5dc168abeef..40afbcfa8bf 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -1,5 +1,5 @@ -:::tip +:::info Model versioning is different to a version tag Take note that a [version tag](/reference/project-configs/version) (or `version`) is different to [`versions`](/reference/resource-properties/versions) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt. A version tag isn't required for dbt v1.5 and higher. From b4b4d4fcf8eccbad43f9aa7fdb0bb69afc1bd00d Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Thu, 27 Jul 2023 09:51:23 -0700 Subject: [PATCH 401/703] Update website/docs/docs/dbt-cloud-apis/sl-manifest.md --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 1 + 1 file changed, 1 insertion(+) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index adfe65c79bc..b6a9b73b08b 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -83,6 +83,7 @@ Top-level keys for the semantic manifest are: } } ``` +
## Related docs From 6514bb778a273d71b31c088f91ad7f3aea296f49 Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Thu, 27 Jul 2023 10:05:08 -0700 Subject: [PATCH 402/703] adding closing brackets --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index b6a9b73b08b..0034e61e6ab 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -81,6 +81,8 @@ Top-level keys for the semantic manifest are: "metadata": null, "dsi_package_version": {} } +} + ] } ``` From a12dc40119981ed27623f3652fd01438e9922a7a Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Thu, 27 Jul 2023 10:52:38 -0700 Subject: [PATCH 403/703] adding valid json --- website/docs/docs/dbt-cloud-apis/sl-manifest.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index 0034e61e6ab..47304accea3 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -57,7 +57,11 @@ Top-level keys for the semantic manifest are: "description": "metric description", "type": "metric type", "type_params": { - "measure": {"measures for the metric"}, + "measure": { + "name": "name for measure", + "filter": "filter for measure", + "alias": "alias for measure" + }, "numerator": null, "denominator": null, "expr": null, From e1dbabfb4559fdf916f1b4445a5e698efae1f140 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Thu, 27 Jul 2023 15:32:31 -0400 Subject: [PATCH 404/703] More updates and changing to new style --- .../manage-access/enterprise-permissions.md | 9 ++++----- ...table.md => _enterprise-permissions-table.md} | 16 ++++++++-------- 2 files changed, 12 insertions(+), 13 deletions(-) rename website/snippets/{enterprise-permissions-table.md => _enterprise-permissions-table.md} (94%) diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index 6d1a7cfda17..cb338b3dc39 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -5,6 +5,7 @@ description: "Permission sets for Enterprise plans." hide_table_of_contents: true #For the sake of the tables on this page --- +import Permissions from '/snippets/_enterprise-permissions-table.md'; import SetUpPages from '/snippets/_available-enterprise-only.md'; @@ -14,13 +15,11 @@ help manage access controls within a dbt Cloud account. See the docs on [access control](/docs/cloud/manage-access/about-user-access) for more information on Role-Based access control (RBAC). -## Permission Sets +## Roles and permissions -The following permission sets are available for assignment in dbt Cloud Enterprise accounts. They -can be granted to dbt Cloud groups which are then in turn granted to users. A dbt Cloud group -can be associated with more than one permission set. +The following roles and permission sets are available for assignment in dbt Cloud Enterprise accounts. They can be granted to dbt Cloud groups which are then in turn granted to users. A dbt Cloud group can be associated with more than one role and permission set. Roles with more access take precedence. - + ## Diagram of the Permission Sets diff --git a/website/snippets/enterprise-permissions-table.md b/website/snippets/_enterprise-permissions-table.md similarity index 94% rename from website/snippets/enterprise-permissions-table.md rename to website/snippets/_enterprise-permissions-table.md index 3fec61264ac..413a669f104 100644 --- a/website/snippets/enterprise-permissions-table.md +++ b/website/snippets/_enterprise-permissions-table.md @@ -9,10 +9,10 @@ Permissions: * Account-level permissions — Permissions related to management of the dbt Cloud account. For example, billing and account settings. * Project-level permissions — Permissions related to the projects in dbt Cloud. For example, repos and access to the IDE. -## Account roles +### Account roles Account roles are primarily designed for managing the dbt Cloud account. Permissions to alter the account settings (for example, generating service tokens, inviting users, configuring SSO). They may also have access to project-level permissions as well. The **Account Admin** role is the highest level of access that can be assigned. -### Account permissions +#### Account permissions for account roles | Account-level permission| Account Admin | Billing admin | Project creator | Security admin | Viewer | |:-------------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| @@ -28,13 +28,13 @@ Account roles are primarily designed for managing the dbt Cloud account. Permiss | Service tokens | W | | | R | | | Webhooks | W | | | | | -### Project permissions +#### Project permissions for account roles |Project-level permission | Account Admin | Billing admin | Project creator | Security admin | Viewer | |:-------------------------|:-------------:|:-------------:|:---------------:|:--------------:|:------:| | Connections | W | | W | | R | | Credentials | W | | W | | R | -| Custom env variables | W | | W | | R | +| Custom env. variables | W | | W | | R | | dbt adapters | W | | W | | R | | Develop (IDE) | W | | W | | | | Environments | W | | W | | R | @@ -50,11 +50,11 @@ Account roles are primarily designed for managing the dbt Cloud account. Permiss | Semantic Layer Config | W | | W | | R | -## Project role permissions +### Project role permissions The project roles are intended for users who will be working within the projects in various capacities. They'll primarily have access to project-level permissions such as repos and the IDE, but may also have some account-level permisions. -### Account permissions +#### Account permissions for project roles | Account-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | |--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| @@ -68,13 +68,13 @@ The project roles are intended for users who will be working within the projects | Service tokens | | | | | | | | | | | | | | Webhooks | W | | | W | | | | | | | | W | -### Project permissions +#### Project permissions for project roles |Project-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | |--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| | Connections | W | R | W | R | R | R | | | | R | R | | | Credentials | W | W | W | W | R | W | | | | R | R | | -| Custom env variables | W | W | W | W | W | W | R | | | R | W | | +| Custom env. variables | W | W | W | W | W | W | R | | | R | W | | | dbt adapters | W | W | W | W | R | W | | | | R | R | | | Develop (IDE) | W | W | | W | | | | | | | | | | Environments | W | R | R | R | R | W | R | | | R | R | | From d53c1e19c59248583c4e8389344c7912ce40fac6 Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Thu, 27 Jul 2023 15:31:16 -0700 Subject: [PATCH 405/703] Update website/docs/docs/use-dbt-semantic-layer/dbt-sl.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/dbt-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 18cd61b6e12..97fc1700634 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -18,7 +18,7 @@ The dbt Semantic Layer, powered by [MetricFlow](/docs/build/about-metricflow), s Moving metric definitions out of the BI layer and into the modeling layer allows data teams to feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. -To learn more about why you need a universal Semantic Layer, refer to the [Why we need a universal semantic layer](https://www.getdbt.com/blog/universal-semantic-layer/) blog post. +Refer to the [Why we need a universal semantic layer](https://www.getdbt.com/blog/universal-semantic-layer/) blog post to learn more. ## Explore the dbt Semantic Layer From 70edfad1a7467bb503b4e7d9ee223f0bf4b94d94 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Thu, 27 Jul 2023 15:35:48 -0700 Subject: [PATCH 406/703] Fix typo (#3827) ## What are you changing in this pull request and why? Fix `constraint` to `filter` --------- Co-authored-by: winnie <91998347+gwenwindflower@users.noreply.github.com> --- website/docs/docs/build/metrics-overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index a7f0d1d3d21..9f04cab1b82 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -15,7 +15,7 @@ The keys for metrics definitions are: | `name` | Provide the reference name for the metric. This name must be unique amongst all metrics. | Required | | `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Optional | | `type_params` | Additional parameters used to configure metrics. `type_params` are different for each metric type. | Required | -| `constraint` | For any type of metric, you may optionally include a constraint string, which applies a dimensional filter when computing the metric. You may think of this as your WHERE clause. | Required | +| `filter` | For any type of metric, you may optionally include a filter string, which applies a dimensional filter when computing the metric. You can think of this as your WHERE clause. | Optional | | `meta` | Additional metadata you want to add to your metric. | From 6ade349541bb4a4e13ee0ab46756522eb02007be Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Thu, 27 Jul 2023 18:55:28 -0400 Subject: [PATCH 407/703] Update website/snippets/_enterprise-permissions-table.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_enterprise-permissions-table.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_enterprise-permissions-table.md b/website/snippets/_enterprise-permissions-table.md index 413a669f104..e5c248d6bfa 100644 --- a/website/snippets/_enterprise-permissions-table.md +++ b/website/snippets/_enterprise-permissions-table.md @@ -10,7 +10,7 @@ Permissions: * Project-level permissions — Permissions related to the projects in dbt Cloud. For example, repos and access to the IDE. ### Account roles -Account roles are primarily designed for managing the dbt Cloud account. Permissions to alter the account settings (for example, generating service tokens, inviting users, configuring SSO). They may also have access to project-level permissions as well. The **Account Admin** role is the highest level of access that can be assigned. +Account roles enable you to manage the dbt Cloud account and manage the account settings (for example, generating service tokens, inviting users, configuring SSO). They also provide project-level permissions. The **Account Admin** role is the highest level of access you can assign. #### Account permissions for account roles From a18b67d065dad2bdd39c812e400899cc9fcc0287 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Thu, 27 Jul 2023 18:55:40 -0400 Subject: [PATCH 408/703] Update website/snippets/_enterprise-permissions-table.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/snippets/_enterprise-permissions-table.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_enterprise-permissions-table.md b/website/snippets/_enterprise-permissions-table.md index e5c248d6bfa..75ced50dc2b 100644 --- a/website/snippets/_enterprise-permissions-table.md +++ b/website/snippets/_enterprise-permissions-table.md @@ -52,7 +52,7 @@ Account roles enable you to manage the dbt Cloud account and manage the account ### Project role permissions -The project roles are intended for users who will be working within the projects in various capacities. They'll primarily have access to project-level permissions such as repos and the IDE, but may also have some account-level permisions. +The project roles enable you to work within the projects in various capacities. They primarily provide access to project-level permissions such as repos and the IDE, but may also provide some account-level permissions. #### Account permissions for project roles From 0b4adf1ffbd16f0253e39c876973eb5ad8600b86 Mon Sep 17 00:00:00 2001 From: Ha Pam Date: Fri, 28 Jul 2023 10:15:49 +0700 Subject: [PATCH 409/703] Update typo in 4-dbt-cloud-job-on-pr.md --- .../custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md b/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md index 8a6f8965b87..6d814ffcac6 100644 --- a/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md +++ b/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md @@ -89,7 +89,7 @@ As noted above, when the PR job runs it will create a new schema based on the PR Add this as a macro to your project. It takes 2 arguments that lets you control which schema get dropped: - `age_in_days`: The number of days since the schema was last altered before it should be dropped (default 10 days) - - `databse_to_clean`: The name of the database to remove schemas from + - `database_to_clean`: The name of the database to remove schemas from ```sql {# @@ -128,4 +128,4 @@ Add this as a macro to your project. It takes 2 arguments that lets you control This macro goes into a dbt Cloud job that is run on a schedule. The command will look like this (text below for copy/paste): ![dbt Cloud job showing the run operation command for the cleanup macro](/img/guides/orchestration/custom-cicd-pipelines/dbt-macro-cleanup-pr.png) -`dbt run-operation pr_schema_cleanup --args "{ 'database_to_clean': 'development','age_in_days':15}"` \ No newline at end of file +`dbt run-operation pr_schema_cleanup --args "{ 'database_to_clean': 'development','age_in_days':15}"` From ca23f66f48a176d4456770d3399e797f40fd1650 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Fri, 28 Jul 2023 09:05:56 -0700 Subject: [PATCH 410/703] Fix quickstart example --- website/snippets/quickstarts/change-way-model-materialized.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/quickstarts/change-way-model-materialized.md b/website/snippets/quickstarts/change-way-model-materialized.md index 08d1b5ca0d8..2a21e561f07 100644 --- a/website/snippets/quickstarts/change-way-model-materialized.md +++ b/website/snippets/quickstarts/change-way-model-materialized.md @@ -1,6 +1,6 @@ One of the most powerful features of dbt is that you can change the way a model is materialized in your warehouse, simply by changing a configuration value. You can change things between tables and views by changing a keyword rather than writing the data definition language (DDL) to do this behind the scenes. -By default, everything gets created as a view. You can override that by materializing everything in jaffle_shop as a table. Everything in the example project will still be materialized as a view. +By default, everything gets created as a view. You can override that by materializing everything in jaffle_shop as a table. Everything in the example project will also be materialized as a table. 1. Edit your `dbt_project.yml` file. - Update your project `name` to: @@ -20,7 +20,7 @@ By default, everything gets created as a view. You can override that by material jaffle_shop: +materialized: table example: - +materialized: view + +materialized: table ```
From 681b658e648e013c6e484cab99dff9119df7ab09 Mon Sep 17 00:00:00 2001 From: Cameron Afzal Date: Fri, 28 Jul 2023 09:16:57 -0700 Subject: [PATCH 411/703] Update docs for prod environment setting (#3815) ## What are you changing in this pull request and why? Add new default production environment language and guidance Default prod environment is a new setting for deployment environments. Setting it is required to use new features like dbt Explorer and cross-project refs (Mesh/multi-project) which require a single source of truth for production metadata per dbt Cloud project. We need to educate customers so they set this, especially once these features are broadly available (currently all invite-only beta, feature flagged in launchdarkly) --------- Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/dbt-cloud-environments.md | 4 ++-- website/docs/docs/deploy/deploy-environments.md | 14 +++++++++++--- .../environment-setup/1-env-guide-overview.md | 2 +- .../2-one-deployment-environment.md | 7 +++++-- .../3-many-deployment-environments.md | 7 +++++-- website/snippets/_explorer-beta-banner.md | 3 +++ website/snippets/_explorer-beta-note.md | 1 + 7 files changed, 28 insertions(+), 10 deletions(-) create mode 100644 website/snippets/_explorer-beta-banner.md create mode 100644 website/snippets/_explorer-beta-note.md diff --git a/website/docs/docs/dbt-cloud-environments.md b/website/docs/docs/dbt-cloud-environments.md index 5eccf3e7400..f61ec5ef72b 100644 --- a/website/docs/docs/dbt-cloud-environments.md +++ b/website/docs/docs/dbt-cloud-environments.md @@ -42,6 +42,6 @@ To use the IDE, each developer will need to set up [personal development credent ## Deployment environment -Deployment environments in dbt Cloud are crucial for executing scheduled jobs. A dbt Cloud project can have multiple deployment environments, allowing for flexibility and customization. +Deployment environments in dbt Cloud are necessary to execute scheduled jobs and use other features. A dbt Cloud project can have multiple deployment environments, allowing for flexibility and customization. However, a dbt Cloud project can only have one deployment environment that represents the production source of truth. -To learn more about dbt Cloud deployments and how to configure deployment environments, visit the [Deployment environments](/docs/deploy/deploy-environments) page. For our best practices guide, read [dbt Cloud environment best practices](https://docs.getdbt.com/guides/best-practices/environment-setup/1-env-guide-overview) for more info. +To learn more about dbt Cloud deployment environments and how to configure them, visit the [Deployment environments](/docs/deploy/deploy-environments) page. For our best practices guide, read [dbt Cloud environment best practices](https://docs.getdbt.com/guides/best-practices/environment-setup/1-env-guide-overview) for more info. diff --git a/website/docs/docs/deploy/deploy-environments.md b/website/docs/docs/deploy/deploy-environments.md index da54b918436..553a7d2fcdd 100644 --- a/website/docs/docs/deploy/deploy-environments.md +++ b/website/docs/docs/deploy/deploy-environments.md @@ -4,7 +4,7 @@ id: "deploy-environments" description: "Learn about dbt Cloud's deployment environment to seamlessly schedule jobs or enable CI." --- -Deployment environments in dbt Cloud are crucial for deploying dbt jobs. To execute dbt, environments determine the settings used during job runs, including: +Deployment environments in dbt Cloud are crucial for deploying dbt jobs in production and using features or integrations that depend on dbt metadata or results. To execute dbt, environments determine the settings used during job runs, including: - The version of dbt Core that will be used to run your project - The warehouse connection information (including the target database/schema settings) @@ -15,8 +15,8 @@ A dbt Cloud project can have multiple deployment environments, providing you the :::tip Learn how to manage dbt Cloud environments To learn different approaches to managing dbt Cloud environments and recommendations for your organization's unique needs, read [dbt Cloud environment best practices](https://docs.getdbt.com/guides/best-practices/environment-setup/1-env-guide-overview). ::: - -This page will go over the different types of environments and how to intuitively configure your deployment environment in dbt Cloud. + +This page reviews the different types of environments and how to configure your deployment environment in dbt Cloud. import CloudEnvInfo from '/snippets/_cloud-environments-info.md'; @@ -28,6 +28,14 @@ To create a new dbt Cloud development environment, navigate to **Deploy** -> **E +### Set as production environment (Beta) + +import ExpBeta from '/snippets/_explorer-beta-banner.md'; + + + +In dbt Cloud, each project can have one designated deployment environment, which serves as its production environment. This production environment is _essential_ for using features like dbt Explorer and cross-project references. It acts as the source of truth for the project's production state in dbt Cloud. + ### Semantic Layer For Semantic Layer-eligible customers, the next section of environment settings is the Semantic Layer configurations. [The Semantic Layer setup guide](/docs/use-dbt-semantic-layer/setup-dbt-semantic-layer) has the most up-to-date setup instructions! diff --git a/website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md b/website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md index 17811b14ca3..844c895af98 100644 --- a/website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md +++ b/website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md @@ -39,7 +39,7 @@ Environments define the way that dbt will execute your code, including: - **Development** — the environment settings in which you work in the IDE on a development branch. - **Deployment** — the environment settings in which a dbt Cloud job runs. -In this guide, we’re going to focus on **deployment environments**, which determine how your project is executed when a **dbt Cloud job executes**. +In this guide, we’re going to focus on **deployment environments**, which determine how your project is executed when a **dbt Cloud job executes**. When using both approaches, make sure to designate one environment as "Production." This will allow you to use features such as dbt Explorer and cross-project references. Refer to [Set product environment](/docs/deploy/deploy-environments#set-as-production-environment-beta) for details. Depending on your git workflow and testing strategy, you'll be choosing between one deployment environment or many deployment environments. We provide a high-level overview of how these two deployment strategies work here, but use each section of this guide to get a deep-dive into how these setups differ. diff --git a/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md b/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md index d7d64eda548..89bb05e7c75 100644 --- a/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md +++ b/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md @@ -5,13 +5,16 @@ description: Learn how to configure a single deployment environment setup in dbt displayText: "dbt Cloud environment best practices" hoverSnippet: Learn how to configure a single deployment environment setup in dbt Cloud. --- - +import ExpNote from '/snippets/_explorer-beta-note.md'; ## What this looks like 1. You have a **single *development* environment** where dbt users can access the dbt Cloud IDE and make changes to their code on feature branches created off of your default branch in your repository (most often the `main` branch). -2. You have a **single *deployment* environment** (let’s call it “Production”) where your scheduled jobs run referencing the `main` branch. +2. You have a **single *deployment* environment** (let’s call it “Production”) where your scheduled jobs run referencing the `main` branch.
+ + + 3. You also have a [**Slim CI job**](/docs/deploy/continuous-integration) that kicks off anytime you open a PR to merge a feature branch into `main`. This Slim CI job can run in your dbt “Production” environment. :::info diff --git a/website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md b/website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md index cf9f6954ca7..cb882d4ac1b 100644 --- a/website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md +++ b/website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md @@ -5,13 +5,16 @@ description: Learn how to configure a many deployment environment setup in dbt C displayText: "dbt Cloud environment best practices" hoverSnippet: Learn how to configure a many deployment environment setup in dbt Cloud. --- - +import ExpNote from '/snippets/_explorer-beta-note.md'; ## What this looks like 1. You have a **single *development* environment** where dbt users can access the dbt Cloud IDE and make changes to their code. However, you’ll want to update the **[custom branch settings](faqs/Environments/custom-branch-settings)** to ensure that developers create feature branches off of the a non-production branch. For this example, we’ll refer to this as the `qa` branch. 2. You have a **QA deployment environment**, running scheduled jobs from the `qa` branch that deploys your dbt project to a pre-production warehouse location. -3. You have a **Production deployment environment,** running scheduled jobs from the `main` branch that deploys your dbt project to your production warehouse location. +3. You have a **Production deployment environment,** running scheduled jobs from the `main` branch that deploys your dbt project to your production warehouse location.
+ + + 4. You have **multiple Slim CI jobs** (one in each deployment environment) to ensure changes to each branch are tested. diff --git a/website/snippets/_explorer-beta-banner.md b/website/snippets/_explorer-beta-banner.md new file mode 100644 index 00000000000..ab501c7bd0f --- /dev/null +++ b/website/snippets/_explorer-beta-banner.md @@ -0,0 +1,3 @@ +:::info Beta +This feature is related to dbt Explorer and cross-project references [beta](/docs/dbt-versions/product-lifecycles#dbt-cloud) projects and subject to change. If you are interested in getting access to the beta, please [contact us](mailto:support@getdbt.com). +::: diff --git a/website/snippets/_explorer-beta-note.md b/website/snippets/_explorer-beta-note.md new file mode 100644 index 00000000000..3bdcd5bcf7a --- /dev/null +++ b/website/snippets/_explorer-beta-note.md @@ -0,0 +1 @@ +**Note:** Make sure to set the environment to "Production" so you can take advantage of features like dbt Explorer and cross-project references. Refer to [Set product environment](/docs/deploy/deploy-environments#set-as-production-environment-beta) for details. From 3163ba3dd18b7aa27361d34d06f3c7174d9bc989 Mon Sep 17 00:00:00 2001 From: winnie <91998347+gwenwindflower@users.noreply.github.com> Date: Fri, 28 Jul 2023 11:27:15 -0500 Subject: [PATCH 412/703] Update change-way-model-materialized.md --- website/snippets/quickstarts/change-way-model-materialized.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/quickstarts/change-way-model-materialized.md b/website/snippets/quickstarts/change-way-model-materialized.md index 2a21e561f07..9fff4fdfa91 100644 --- a/website/snippets/quickstarts/change-way-model-materialized.md +++ b/website/snippets/quickstarts/change-way-model-materialized.md @@ -1,6 +1,6 @@ One of the most powerful features of dbt is that you can change the way a model is materialized in your warehouse, simply by changing a configuration value. You can change things between tables and views by changing a keyword rather than writing the data definition language (DDL) to do this behind the scenes. -By default, everything gets created as a view. You can override that by materializing everything in jaffle_shop as a table. Everything in the example project will also be materialized as a table. +By default, everything gets created as a view. You can override that by materializing everything in a directory as a different materialization. Everything in the example project will now be materialized as a view, while everything above it in the root models folder will be a table. 1. Edit your `dbt_project.yml` file. - Update your project `name` to: @@ -20,7 +20,7 @@ By default, everything gets created as a view. You can override that by material jaffle_shop: +materialized: table example: - +materialized: table + +materialized: view ``` From e575a33a842c210459ca765875d984b4092e5220 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Fri, 28 Jul 2023 10:01:05 -0700 Subject: [PATCH 413/703] Incorporate feedback --- website/snippets/quickstarts/change-way-model-materialized.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/quickstarts/change-way-model-materialized.md b/website/snippets/quickstarts/change-way-model-materialized.md index 9fff4fdfa91..d8468bcf3bf 100644 --- a/website/snippets/quickstarts/change-way-model-materialized.md +++ b/website/snippets/quickstarts/change-way-model-materialized.md @@ -1,6 +1,6 @@ One of the most powerful features of dbt is that you can change the way a model is materialized in your warehouse, simply by changing a configuration value. You can change things between tables and views by changing a keyword rather than writing the data definition language (DDL) to do this behind the scenes. -By default, everything gets created as a view. You can override that by materializing everything in a directory as a different materialization. Everything in the example project will now be materialized as a view, while everything above it in the root models folder will be a table. +By default, everything gets created as a view. You can override that at the directory level so everything in that directory will materialize to a different materialization. 1. Edit your `dbt_project.yml` file. - Update your project `name` to: @@ -11,7 +11,7 @@ By default, everything gets created as a view. You can override that by material ``` - - Update your `models` config block to: + - Configure `jaffle_shop` so everything in it will be materialized as a table; and configure `example` so everything in it will be materialized as a view. Update your `models` config block to: From 71b9b5cfc646ea59776c23b7fff21683676a7eb8 Mon Sep 17 00:00:00 2001 From: bethanyhipple-dbtlabs <108838013+bethanyhipple-dbtlabs@users.noreply.github.com> Date: Fri, 28 Jul 2023 11:25:59 -0700 Subject: [PATCH 414/703] Update pr-template.md updated the Bit Bucket PR template URL to include the destination variable. --- website/docs/docs/collaborate/git/pr-template.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/collaborate/git/pr-template.md b/website/docs/docs/collaborate/git/pr-template.md index 83d620b7af9..ddb4948dad9 100644 --- a/website/docs/docs/collaborate/git/pr-template.md +++ b/website/docs/docs/collaborate/git/pr-template.md @@ -72,7 +72,7 @@ https://gitlab.com///-/merge_requests/new?merge_request[source_branch ### BitBucket ``` -https://bitbucket.org///pull-requests/new?source={{source}} +https://bitbucket.org///pull-requests/new?source={{source}}&dest={{destination}} ``` ### AWS CodeCommit From 6c8e2422cfc5695e01258b106f4519d942326b56 Mon Sep 17 00:00:00 2001 From: amada-ech <94760092+amada-ech@users.noreply.github.com> Date: Fri, 28 Jul 2023 14:51:49 -0400 Subject: [PATCH 415/703] Update alan-cruickshank.md --- website/docs/community/spotlight/alan-cruickshank.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/docs/community/spotlight/alan-cruickshank.md b/website/docs/community/spotlight/alan-cruickshank.md index 52bfb821402..74ef95a2b61 100644 --- a/website/docs/community/spotlight/alan-cruickshank.md +++ b/website/docs/community/spotlight/alan-cruickshank.md @@ -36,6 +36,8 @@ I also see SQLFluff as a vehicle to drive more consistency in the way we write S For better or worse, I spend most of my day job on people and organisational things, less on how to solve individual problems, and more on how to enable and support groups of people in being able to make great decisions themselves. In some ways, if I have to touch the keyboard too much, it's a sign that I've failed in that calling. dbt itself is a tool which enables better collaboration—and the community is full of people with great ideas on how to better enable other people around us. I hope that I'm able to pass some of that knowledge and the experience of applying it in a scaleup environment back to others also treading this path. +More specifically from the dbt community, if I were to pick one recommendation, it would be Emilie Schario’s talk from Coalesce 2022 on [“Data Led is Dumb”](https://www.youtube.com/watch?v=WsMHPALc8Vg&t=1s). I think should be essential watching for anyone who’s hearing “Data Led” a lot, and wants to turn that excitement into practical action. + ## Anything else interesting you want to tell us? If you're not using SQLFluff on your dbt project, you probably should be: https://github.com/sqlfluff/sqlfluff From 166638e33c627aed60c1a6b0769a1e41c9b9a43a Mon Sep 17 00:00:00 2001 From: amada-ech <94760092+amada-ech@users.noreply.github.com> Date: Fri, 28 Jul 2023 15:38:04 -0400 Subject: [PATCH 416/703] Update jing-yu-lim.md --- website/docs/community/spotlight/jing-yu-lim.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/community/spotlight/jing-yu-lim.md b/website/docs/community/spotlight/jing-yu-lim.md index 862e2a80de9..363d9a0216e 100644 --- a/website/docs/community/spotlight/jing-yu-lim.md +++ b/website/docs/community/spotlight/jing-yu-lim.md @@ -2,14 +2,14 @@ id: jing-yu-lim title: Jing Yu Lim description: | - For ~3 years, I was a Product Analyst at Grab, a ride-hailing and food delivery app in Southeast Asia, before taking on an Analytics Engineering role in Spenmo, a B2B Fintech startup. I recently made the switch back to an Analyst role when I joined ExpressVPN, a VPN service for both consumers and businesses. I'm also one of the co-organisers of the Singapore dbt Meetup! + For ~3 years, I was a Product Analyst at Grab, a ride-hailing and food delivery app in Southeast Asia, before taking on an Analytics Engineering role in Spenmo, a B2B Fintech startup. I joined a tech company in June 2023, but was recently impacted by a layoff. I'm also one of the co-organisers of the Singapore dbt Meetup! My story with dbt started in Jan 2022, when I joined Spenmo where I taught myself dbt, mainly via dbt's documentation and Slack community. We used Snowflake as our data warehouse, and Holistics for BI. I spoke about data self-serve and Spenmo's journey with dbt at multiple meetups. image: /img/community/spotlight/jing-lim.jpg pronouns: she/her location: Singapore, Singapore -jobTitle: Senior Data Analyst -companyName: ExpressVPN +jobTitle: I'm open to work! +companyName: # organization: "" socialLinks: - name: LinkedIn From 986e1954c9410611e3efc7b0fcce2335e602e177 Mon Sep 17 00:00:00 2001 From: amada-ech <94760092+amada-ech@users.noreply.github.com> Date: Fri, 28 Jul 2023 15:39:12 -0400 Subject: [PATCH 417/703] Update jing-yu-lim.md --- website/docs/community/spotlight/jing-yu-lim.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/community/spotlight/jing-yu-lim.md b/website/docs/community/spotlight/jing-yu-lim.md index 363d9a0216e..d176798106c 100644 --- a/website/docs/community/spotlight/jing-yu-lim.md +++ b/website/docs/community/spotlight/jing-yu-lim.md @@ -9,7 +9,7 @@ image: /img/community/spotlight/jing-lim.jpg pronouns: she/her location: Singapore, Singapore jobTitle: I'm open to work! -companyName: # +companyName: "" organization: "" socialLinks: - name: LinkedIn From 1fc837bc0c869cf91220597b9b5fb377b000f9c6 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Fri, 28 Jul 2023 14:57:20 -0700 Subject: [PATCH 418/703] tweak examples in quickstart --- website/docs/docs/build/sl-getting-started.md | 100 +++++++++++++----- 1 file changed, 72 insertions(+), 28 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 0e6c9c87d04..d7bcee80d88 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -50,11 +50,11 @@ Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platfor The following steps will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). -It's highly recommended you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the .yaml extension so it's ignored during parsing. You'll be rebuilding it step by step in this example. +We highly recommend you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the [Jaffle shop example]((https://github.com/dbt-labs/jaffle-sl-template)), delete the `orders.yml` config or delete the .yml extension so it's ignored during parsing. **We'll be rebuilding it step by step in this example.** If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. -1. Create a new semantic model file, such as `orders.yaml`. +1. Create a new yml config file for the orders model, such as `orders.yml`. It's best practice to create semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name and appropriate metadata, map it to a model in your dbt project, and specify model defaults. For now, `default_agg_time_dimension` is the only supported default. @@ -62,12 +62,12 @@ It's best practice to create semantic models in the `/models/semantic_models` di semantic_models: #The name of the semantic model. - name: orders + defaults: + agg_time_dimension: ordered_at description: | - Model containing order data. The grain of the table is the order id. + Order fact table. This table is at the order grain with one row per order. #The name of the dbt model and schema model: ref('orders') - defaults: - agg_time_dimension: ordered_at ``` 2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `order_id`, and so on. @@ -88,19 +88,41 @@ semantic_models: 3. Define your dimensions and measures. Dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. ```yaml - #Measures. These are the aggregations on the columns in the table. - measures: - - name: order_total - agg: sum - #Dimensions, either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + #Measures. These are the aggregations on the columns in the table. + measures: + - name: order_total + description: The total revenue for each order. + agg: sum + - name: order_count + expr: 1 + agg: sum + - name: tax_paid + description: The toal tax paid on each order. + agg: sum + - name: customers_with_orders + description: Distinct count of customers placing orders + agg: count_distinct + expr: customer_id + - name: locations_with_orders + description: Distinct count of locations with order + expr: location_id + agg: count_distinct + - name: order_cost + description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. + agg: sum + #Dimensions. Either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - - name: location_name - type: categorical - name: ordered_at - expr: cast(ordered_at as date) type: time type_params: - time_granularity: day + time_granularity: day + - name: order_total_dim + type: categorical + expr: order_total + - name: is_food_order + type: categorical + - name: is_drink_order + type: categorical ``` Putting it all together, a complete semantic model configurations based on the order model would look like the following example: @@ -109,13 +131,13 @@ Putting it all together, a complete semantic model configurations based on the o semantic_models: #The name of the semantic model. - name: orders + defaults: + agg_time_dimension: ordered_at description: | - Model containing order data. The grain of the table is the order id. + Order fact table. This table is at the order grain with one row per order. #The name of the dbt model and schema model: ref('orders') - defaults: - agg_time_dimension: ordered_at - #Entities. These usually correspond to keys in the table. + #Entities. These usually corespond to keys in the table. entities: - name: order_id type: primary @@ -126,18 +148,40 @@ semantic_models: type: foreign expr: customer_id #Measures. These are the aggregations on the columns in the table. - measures: + measures: - name: order_total + description: The total revenue for each order. + agg: sum + - name: order_count + expr: 1 + agg: sum + - name: tax_paid + description: The toal tax paid on each order. agg: sum - #Dimensions, either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + - name: customers_with_orders + description: Distinct count of customers placing orders + agg: count_distinct + expr: customer_id + - name: locations_with_orders + description: Distinct count of locations with order + expr: location_id + agg: count_distinct + - name: order_cost + description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. + agg: sum + #Dimensions. Either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - - name: location_name - type: categorical - name: ordered_at - expr: cast(ordered_at as date) type: time type_params: - time_granularity: day + time_granularity: day + - name: order_total_dim + type: categorical + expr: order_total + - name: is_food_order + type: categorical + - name: is_drink_order + type: categorical ``` :::tip @@ -160,14 +204,14 @@ Now that you've created your first semantic model, it's time to define your firs 1. You can define metrics in the same YAML files as your semantic models or create a new file. If you want to create your metrics in a new file, create another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example, by data source or business line. -2. The example metric you'll create is a simple metric that refers directly to the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, delete the `example_metrics` file or remove the .yaml extension so it's ignored during parsing. You'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. +2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recommend deleting the original `orders.yml` file, or removing the .yml extension so it's ignored during parsing. We'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. ```yaml metrics: - name: order_total - description: "Sum of orders value" + description: Sum of total order amonunt. Includes tax + revenue. type: simple - label: "Order Total" + label: Order Total type_params: measure: order_total ``` @@ -192,7 +236,7 @@ This section will explain how you can test and query metrics locally. Before you **Query and commit your metrics using the CLI:** -MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt build` before preceding to ensure the data exists in your warehouse. +MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt run` before preceding to ensure the data exists in your warehouse. 1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. From 84e0c418fa3a8a3050644d47020f89f3f2320d3a Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Fri, 28 Jul 2023 15:04:19 -0700 Subject: [PATCH 419/703] commenting out guide links --- .../docs/dbt-cloud-apis/sl-api-overview.md | 2 +- website/docs/guides/migration/sl-migration.md | 20 +++++++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index 1ff2fce17be..efe54cbd833 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -13,7 +13,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md';
- + The rapid growth of different tools in the modern data stack has helped data professionals address the diverse needs of different teams. The downside of this growth is the fragmentation of business logic across teams, tools, and workloads. The [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) allows you to define metrics in code (with [MetricFlow](/docs/build/about-metricflow)) and dynamically generate and query datasets in downstream tools based on their dbt governed assets, such as metrics and models. Integrating with the dbt Semantic Layer will help organizations that use your product make more efficient and trustworthy decisions with their data. It also helps you to avoid duplicative coding, optimize development workflow, ensure data governance, and guarantee consistency for data consumers. diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 43facab9d50..da7d2691210 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -50,7 +50,9 @@ To help ensure a smooth transition, use our [custom-built migration tool](https: For detailed instructions on how to configure semantic models and metrics, refer to our [getting started guide](/docs/use-dbt-semantic-layer/quickstart-sl). -* Note, if you're developing in metrics and semantic models in the dbt Cloud IDE, make sure to update your development environment to dbt version 1.6 or newer. This update will affect other analysts on your team who use the IDE for the same project. If they have metrics defined using dbt version 1.5 or older, it might cause errors. +:::info +If you're developing in metrics and semantic models in the dbt Cloud IDE, make sure to update your development environment to dbt version 1.6 or newer. This update will affect other analysts on your team who use the IDE for the same project. If they have metrics defined using dbt version 1.5 or older, it might cause errors. +::: #### Test your metrics @@ -86,12 +88,14 @@ Ensure that all jobs run successfully with the new version. Now that your Semantic Layer is set up, you will need to update any downstream integrations that relied on the legacy Semantic Layer. To set up a new connection or update an existing connection, you should do so in the downstream tool and not in dbt Cloud. -**Link to migration guide for Hex** + ## Create environment for the new Semantic Layer @@ -128,11 +132,12 @@ To migrate to the new specification, you'll need to: - Upgrade your existing metrics configs to the new spec To help ensure a smooth transition, you can use our [custom-built migration tool](https://github.com/dbt-labs/dbt-converter/blob/master/README.md) that automates this process. -**Note**, this tool doesn't support [derived metrics](/docs/build/derived) and you'll need to migrate them over manually. +**Note:** this tool doesn't support [derived metrics](/docs/build/derived) and you'll need to migrate them over manually. For detailed instructions on how to configure semantic models and metrics, refer to our [getting started guide](/docs/use-dbt-semantic-layer/quickstart-sl). -* Note, if you're developing in metrics and semantic models in the dbt Cloud IDE, make sure to update your development environment to dbt version 1.6 or newer. This update will affect other analysts on your team who use the IDE for the same project. If they have metrics defined using dbt version 1.5 or older, it might cause errors. + +If you're developing in metrics and semantic models in the dbt Cloud IDE, make sure to update your development environment to dbt version 1.6 or newer. This update will affect other analysts on your team who use the IDE for the same project. If they have metrics defined using dbt version 1.5 or older, it might cause errors. #### Test your metrics @@ -152,10 +157,13 @@ Once you've thoroughly tested and verified the accuracy of your metrics, commit Now that your Semantic Layer is set up, you will need to update any downstream integrations that relied on the legacy Semantic Layer. To set up a new connection or update an existing connection, you should do so in the downstream tool and not in dbt Cloud. -**Link to migration guide for Hex** + ## Resources From cc7ad387117b5d0c94559ea6285ea74d014c7b58 Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Fri, 28 Jul 2023 15:14:17 -0700 Subject: [PATCH 420/703] fixing build err --- website/docs/docs/build/sl-getting-started.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index d7bcee80d88..986b1f2e500 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -8,7 +8,7 @@ meta: api_name: dbt Semantic Layer API --- -This getting started page presents a sample workflow to help you create your first metrics. It uses the [Jaffle shop example](https://github.com/dbt-labs/jaffle-sl-template) as the project data source and is available for you to use. If you prefer, you can create semantic models and metrics for your own dbt project. +This getting started page presents a sample workflow to help you create your first metrics. It uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template) as the project data source and is available for you to use. If you prefer, you can create semantic models and metrics for your own dbt project. To fully experience the power of a universal dbt Semantic Layer, take the following steps: @@ -97,7 +97,7 @@ semantic_models: expr: 1 agg: sum - name: tax_paid - description: The toal tax paid on each order. + description: The total tax paid on each order. agg: sum - name: customers_with_orders description: Distinct count of customers placing orders @@ -110,7 +110,7 @@ semantic_models: - name: order_cost description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. agg: sum - #Dimensions. Either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. + #Dimensions. Either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - name: ordered_at type: time @@ -156,7 +156,7 @@ semantic_models: expr: 1 agg: sum - name: tax_paid - description: The toal tax paid on each order. + description: The total tax paid on each order. agg: sum - name: customers_with_orders description: Distinct count of customers placing orders @@ -169,7 +169,7 @@ semantic_models: - name: order_cost description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. agg: sum - #Dimensions. Either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. + #Dimensions. Either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - name: ordered_at type: time @@ -200,7 +200,7 @@ group by metric_time_day, country -- dimensions ## Define metrics -Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](https://docs.getdbt.com/docs/build/metrics-overview) before getting started. +Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](/docs/build/metrics-overview) before getting started. 1. You can define metrics in the same YAML files as your semantic models or create a new file. If you want to create your metrics in a new file, create another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example, by data source or business line. From 433f4d65cdd0e31ef1401a72124a094548767a56 Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Fri, 28 Jul 2023 15:16:45 -0700 Subject: [PATCH 421/703] fixing build err --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 986b1f2e500..dbd953b2a5c 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -50,7 +50,7 @@ Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platfor The following steps will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). -We highly recommend you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the [Jaffle shop example]((https://github.com/dbt-labs/jaffle-sl-template)), delete the `orders.yml` config or delete the .yml extension so it's ignored during parsing. **We'll be rebuilding it step by step in this example.** +We highly recommend you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the [Jaffle shop example](https://github.com/dbt-labs/jaffle-sl-template), delete the `orders.yml` config or delete the .yml extension so it's ignored during parsing. **We'll be rebuilding it step by step in this example.** If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. From 927709899729b735da48f4f95e3f1406bf327460 Mon Sep 17 00:00:00 2001 From: Grant Murray Date: Mon, 31 Jul 2023 06:41:42 -0400 Subject: [PATCH 422/703] patch(constraints): fix-typo --- website/docs/reference/resource-properties/constraints.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-properties/constraints.md b/website/docs/reference/resource-properties/constraints.md index b25893729e5..51e10e028ab 100644 --- a/website/docs/reference/resource-properties/constraints.md +++ b/website/docs/reference/resource-properties/constraints.md @@ -228,7 +228,7 @@ select Snowflake suppports four types of constraints: `unique`, `not null`, `primary key` and `foreign key`. It is important to note that only the `not null` (and the `not null` property of `primary key`) are actually checked today. -There rest of the constraints are purely metadata, not verified when inserting data. +The rest of the constraints are purely metadata, not verified when inserting data. Currently, Snowflake doesn't support the `check` syntax and dbt will skip the `check` config and raise a warning message if it is set on some models in the dbt project. From 750254cefaec2bbce3daee115d039e1c725c190e Mon Sep 17 00:00:00 2001 From: Grant Murray Date: Mon, 31 Jul 2023 07:39:18 -0400 Subject: [PATCH 423/703] patch: fix-typo-in-quickstart-semantic-layer --- .../docs/use-dbt-semantic-layer/quickstart-semantic-layer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md index af8de189fa9..aa490511004 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md @@ -8,7 +8,7 @@ sidebar_label: "Quickstart" :::info Coming soon The dbt Semantic Layer is undergoing a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. -**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new way framework for defining metrics in dbt. +**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new framework for defining metrics in dbt. **What's new?** Learn how to [Build your metrics](/docs/build/build-metrics-intro?version=1.6) using MetricFlow, one of the key components that makes up the revamped dbt Semantic Layer. It handles SQL query construction and defines the specification for dbt semantic models and metrics. ::: From 71f98c98dce1beb93788d9466dface82d086d198 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Mon, 31 Jul 2023 09:20:54 -0400 Subject: [PATCH 424/703] Update discovery-querying.md --- website/docs/docs/dbt-cloud-apis/discovery-querying.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/discovery-querying.md b/website/docs/docs/dbt-cloud-apis/discovery-querying.md index 77fed109c68..9791ee5af3d 100644 --- a/website/docs/docs/dbt-cloud-apis/discovery-querying.md +++ b/website/docs/docs/dbt-cloud-apis/discovery-querying.md @@ -63,8 +63,7 @@ There are several illustrative example queries on this page. For more examples, ## Reasonable use Discovery (GraphQL) API usage is subject to request rate and response size limits to maintain the performance and stability of the metadata platform and prevent abuse. -- The current request rate limit is 200 requests for a given IP address within a minute. If you exceed this limit, you will receive an HTTP 429 response status. -- Environment-level endpoints will be subject to response size limits in the future. The depth of the graph should not exceed three levels. A user can paginate up to 500 items per query. + - Job-level endpoints are subject to query complexity limits. Nested nodes (like parents), code (like rawCode), and catalog columns are considered as most complex. Overly complex queries should be broken up into separate queries with only necessary fields included. dbt Labs recommends using the environment endpoint instead for most use cases to get the latest descriptive and result metadata for a dbt Cloud project. ## Retention limits From a1d5b58de6d6bacdc0bd6e31ea2cdb2f9ddbf532 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 31 Jul 2023 13:38:24 -0400 Subject: [PATCH 425/703] 1.6 GA Docs changes --- website/dbt-versions.js | 1 - .../migration/versions/01-upgrading-to-v1.6.md | 10 +--------- .../migration/versions/02-upgrading-to-v1.5.md | 2 +- website/snippets/core-versions-table.md | 13 +++++++------ 4 files changed, 9 insertions(+), 17 deletions(-) diff --git a/website/dbt-versions.js b/website/dbt-versions.js index 01d1bf5d128..82de0ad6333 100644 --- a/website/dbt-versions.js +++ b/website/dbt-versions.js @@ -2,7 +2,6 @@ exports.versions = [ { version: "1.6", EOLDate: "2024-07-31", - isPrerelease: true }, { version: "1.5", diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index cb1e9af603d..6859e183362 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -1,16 +1,8 @@ --- -title: "Upgrading to v1.6 (prerelease)" +title: "Upgrading to v1.6 (latest)" description: New features and changes in dbt Core v1.6 --- -:::warning Prerelease - -dbt Core v1.6 is available as a release candidate. [Final release is planned for July 31.](https://github.com/dbt-labs/dbt-core/issues/7990) - -Test it out, and [let us know](https://github.com/dbt-labs/dbt-core/issues/new/choose) if you run into any issues! - -::: - ## Resources - [Changelog](https://github.com/dbt-labs/dbt-core/blob/1.6.latest/CHANGELOG.md) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index bb793edf4c7..5283070217c 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -1,5 +1,5 @@ --- -title: "Upgrading to v1.5 (latest)" +title: "Upgrading to v1.5" description: New features and changes in dbt Core v1.5 --- diff --git a/website/snippets/core-versions-table.md b/website/snippets/core-versions-table.md index 6997353545b..fb2e2a5d60e 100644 --- a/website/snippets/core-versions-table.md +++ b/website/snippets/core-versions-table.md @@ -1,14 +1,15 @@ ### Latest Releases | dbt Core | Initial Release | Support Level | Critical Support Until | -|------------------------------------------------------------|-----------------|---------------|-------------------------| -| [**v1.5**](/guides/migration/versions/upgrading-to-v1.5) | Apr 27, 2023 | Active | Apr 27, 2024 | -| [**v1.4**](/guides/migration/versions/upgrading-to-v1.4) | Jan 25, 2023 | Critical | Jan 25, 2024 | -| [**v1.3**](/guides/migration/versions/upgrading-to-v1.3) | Oct 12, 2022 | Critical | Oct 12, 2023 | -| [**v1.2**](/guides/migration/versions/upgrading-to-v1.2) | Jul 26, 2022 | Critical | Jul 26, 2023 | +|------------------------------------------------------------|-----------------|----------------|-------------------------| +| [**v1.6**](/guides/migration/versions/upgrading-to-v1.6) | Jul 31, 2023 | Active | Jul 30, 2024 | +| [**v1.5**](/guides/migration/versions/upgrading-to-v1.5) | Apr 27, 2023 | Critical | Apr 27, 2024 | +| [**v1.4**](/guides/migration/versions/upgrading-to-v1.4) | Jan 25, 2023 | Critical | Jan 25, 2024 | +| [**v1.3**](/guides/migration/versions/upgrading-to-v1.3) | Oct 12, 2022 | Critical | Oct 12, 2023 | +| [**v1.2**](/guides/migration/versions/upgrading-to-v1.2) | Jul 26, 2022 | End of Life* ⚠️ | Jul 26, 2023 | | [**v1.1**](/guides/migration/versions/upgrading-to-v1.1) ⚠️ | Apr 28, 2022 | End of Life* ⚠️ | Apr 28, 2023 | | [**v1.0**](/guides/migration/versions/upgrading-to-v1.0) ⚠️ | Dec 3, 2021 | End of Life* ⚠️ | Dec 3, 2022 ⚠️ | -| **v0.X** ⛔️ | (Various dates) | Deprecated ⛔️ | Deprecated ⛔️ | +| **v0.X** ⛔️ | (Various dates) | Deprecated ⛔️ | Deprecated ⛔️ | _*All versions of dbt Core since v1.0 are available in dbt Cloud until further notice. Versions that are EOL do not receive any fixes. For the best support, we recommend upgrading to a version released within the past 12 months._ ### Planned future releases From cf12adf724a3c7d31b2be57e6c95db66e7cf9e28 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 31 Jul 2023 14:16:08 -0400 Subject: [PATCH 426/703] Update 01-upgrading-to-v1.6.md --- website/docs/guides/migration/versions/01-upgrading-to-v1.6.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index 6859e183362..ac3d7348ef9 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -18,7 +18,7 @@ dbt Labs is committed to providing backward compatibility for all versions 1.x, - dbt Core v1.6 does not support Python 3.7, which reached End Of Life on June 23. Support Python versions are 3.8, 3.9, 3.10, and 3.11. - As part of the Semantic layer re-launch (in beta), the spec for `metrics` has changed significantly. Migration guide coming soon: https://github.com/dbt-labs/docs.getdbt.com/pull/3705 -- Manifest schema version is now v10, reflecting [TODO] changes +- The manifest schema version is now v10. ### For consumers of dbt artifacts (metadata) From 11072636633d4325ab6e8003086cd492b6b010ad Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Mon, 31 Jul 2023 11:21:19 -0700 Subject: [PATCH 427/703] Test 3 --- website/docs/docs/dbt-support.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-support.md b/website/docs/docs/dbt-support.md index a6e9262200c..f63e016b03e 100644 --- a/website/docs/docs/dbt-support.md +++ b/website/docs/docs/dbt-support.md @@ -5,7 +5,7 @@ id: "dbt-support" ## dbt Core support -If you're developing in the command line (CLI) and have questions or need some help — reach out to the helpful dbt community through [the Community Forum](https://discourse.getdbt.com/) or [dbt Community slack](https://www.getdbt.com/community/join-the-community/). +If you're developing on the command line (CLI) and have questions or need some help — reach out to the helpful dbt community through [the Community Forum](https://discourse.getdbt.com/) or [dbt Community slack](https://www.getdbt.com/community/join-the-community/). ## dbt Cloud support From b95e35ff5c9346f0807cfcff628db0030de10297 Mon Sep 17 00:00:00 2001 From: amada-ech <94760092+amada-ech@users.noreply.github.com> Date: Mon, 31 Jul 2023 15:59:57 -0400 Subject: [PATCH 428/703] Update jing-yu-lim.md --- website/docs/community/spotlight/jing-yu-lim.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/community/spotlight/jing-yu-lim.md b/website/docs/community/spotlight/jing-yu-lim.md index d176798106c..a3d1784293f 100644 --- a/website/docs/community/spotlight/jing-yu-lim.md +++ b/website/docs/community/spotlight/jing-yu-lim.md @@ -2,7 +2,7 @@ id: jing-yu-lim title: Jing Yu Lim description: | - For ~3 years, I was a Product Analyst at Grab, a ride-hailing and food delivery app in Southeast Asia, before taking on an Analytics Engineering role in Spenmo, a B2B Fintech startup. I joined a tech company in June 2023, but was recently impacted by a layoff. I'm also one of the co-organisers of the Singapore dbt Meetup! + For ~3 years, I was a Product Analyst at Grab, a ride-hailing and food delivery app in Southeast Asia, before taking on an Analytics Engineering role in Spenmo, a B2B Fintech startup. I joined a tech company as an analyst in June 2023, but was recently impacted by a layoff. I'm also one of the co-organisers of the Singapore dbt Meetup! My story with dbt started in Jan 2022, when I joined Spenmo where I taught myself dbt, mainly via dbt's documentation and Slack community. We used Snowflake as our data warehouse, and Holistics for BI. I spoke about data self-serve and Spenmo's journey with dbt at multiple meetups. image: /img/community/spotlight/jing-lim.jpg From db455e3d40a8bb62f8fb6c0564d6d741bca62846 Mon Sep 17 00:00:00 2001 From: Grant Murray Date: Mon, 31 Jul 2023 07:39:18 -0400 Subject: [PATCH 429/703] patch: fix-typo-in-quickstart-semantic-layer --- .../docs/use-dbt-semantic-layer/quickstart-semantic-layer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md index af8de189fa9..aa490511004 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-semantic-layer.md @@ -8,7 +8,7 @@ sidebar_label: "Quickstart" :::info Coming soon The dbt Semantic Layer is undergoing a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. -**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new way framework for defining metrics in dbt. +**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new framework for defining metrics in dbt. **What's new?** Learn how to [Build your metrics](/docs/build/build-metrics-intro?version=1.6) using MetricFlow, one of the key components that makes up the revamped dbt Semantic Layer. It handles SQL query construction and defines the specification for dbt semantic models and metrics. ::: From 4d00e3b5a523f612d80a40eefa951660cc6f10aa Mon Sep 17 00:00:00 2001 From: Grant Murray Date: Mon, 31 Jul 2023 06:41:42 -0400 Subject: [PATCH 430/703] patch(constraints): fix-typo --- website/docs/reference/resource-properties/constraints.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-properties/constraints.md b/website/docs/reference/resource-properties/constraints.md index b25893729e5..51e10e028ab 100644 --- a/website/docs/reference/resource-properties/constraints.md +++ b/website/docs/reference/resource-properties/constraints.md @@ -228,7 +228,7 @@ select Snowflake suppports four types of constraints: `unique`, `not null`, `primary key` and `foreign key`. It is important to note that only the `not null` (and the `not null` property of `primary key`) are actually checked today. -There rest of the constraints are purely metadata, not verified when inserting data. +The rest of the constraints are purely metadata, not verified when inserting data. Currently, Snowflake doesn't support the `check` syntax and dbt will skip the `check` config and raise a warning message if it is set on some models in the dbt project. From 2f0dfac65a5ab6f6caa7555438d7ec0da6338b3f Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 31 Jul 2023 13:38:24 -0400 Subject: [PATCH 431/703] 1.6 GA Docs changes --- website/dbt-versions.js | 1 - .../migration/versions/01-upgrading-to-v1.6.md | 10 +--------- .../migration/versions/02-upgrading-to-v1.5.md | 2 +- website/snippets/core-versions-table.md | 13 +++++++------ 4 files changed, 9 insertions(+), 17 deletions(-) diff --git a/website/dbt-versions.js b/website/dbt-versions.js index 01d1bf5d128..82de0ad6333 100644 --- a/website/dbt-versions.js +++ b/website/dbt-versions.js @@ -2,7 +2,6 @@ exports.versions = [ { version: "1.6", EOLDate: "2024-07-31", - isPrerelease: true }, { version: "1.5", diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index cb1e9af603d..6859e183362 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -1,16 +1,8 @@ --- -title: "Upgrading to v1.6 (prerelease)" +title: "Upgrading to v1.6 (latest)" description: New features and changes in dbt Core v1.6 --- -:::warning Prerelease - -dbt Core v1.6 is available as a release candidate. [Final release is planned for July 31.](https://github.com/dbt-labs/dbt-core/issues/7990) - -Test it out, and [let us know](https://github.com/dbt-labs/dbt-core/issues/new/choose) if you run into any issues! - -::: - ## Resources - [Changelog](https://github.com/dbt-labs/dbt-core/blob/1.6.latest/CHANGELOG.md) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index bb793edf4c7..5283070217c 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -1,5 +1,5 @@ --- -title: "Upgrading to v1.5 (latest)" +title: "Upgrading to v1.5" description: New features and changes in dbt Core v1.5 --- diff --git a/website/snippets/core-versions-table.md b/website/snippets/core-versions-table.md index 6997353545b..fb2e2a5d60e 100644 --- a/website/snippets/core-versions-table.md +++ b/website/snippets/core-versions-table.md @@ -1,14 +1,15 @@ ### Latest Releases | dbt Core | Initial Release | Support Level | Critical Support Until | -|------------------------------------------------------------|-----------------|---------------|-------------------------| -| [**v1.5**](/guides/migration/versions/upgrading-to-v1.5) | Apr 27, 2023 | Active | Apr 27, 2024 | -| [**v1.4**](/guides/migration/versions/upgrading-to-v1.4) | Jan 25, 2023 | Critical | Jan 25, 2024 | -| [**v1.3**](/guides/migration/versions/upgrading-to-v1.3) | Oct 12, 2022 | Critical | Oct 12, 2023 | -| [**v1.2**](/guides/migration/versions/upgrading-to-v1.2) | Jul 26, 2022 | Critical | Jul 26, 2023 | +|------------------------------------------------------------|-----------------|----------------|-------------------------| +| [**v1.6**](/guides/migration/versions/upgrading-to-v1.6) | Jul 31, 2023 | Active | Jul 30, 2024 | +| [**v1.5**](/guides/migration/versions/upgrading-to-v1.5) | Apr 27, 2023 | Critical | Apr 27, 2024 | +| [**v1.4**](/guides/migration/versions/upgrading-to-v1.4) | Jan 25, 2023 | Critical | Jan 25, 2024 | +| [**v1.3**](/guides/migration/versions/upgrading-to-v1.3) | Oct 12, 2022 | Critical | Oct 12, 2023 | +| [**v1.2**](/guides/migration/versions/upgrading-to-v1.2) | Jul 26, 2022 | End of Life* ⚠️ | Jul 26, 2023 | | [**v1.1**](/guides/migration/versions/upgrading-to-v1.1) ⚠️ | Apr 28, 2022 | End of Life* ⚠️ | Apr 28, 2023 | | [**v1.0**](/guides/migration/versions/upgrading-to-v1.0) ⚠️ | Dec 3, 2021 | End of Life* ⚠️ | Dec 3, 2022 ⚠️ | -| **v0.X** ⛔️ | (Various dates) | Deprecated ⛔️ | Deprecated ⛔️ | +| **v0.X** ⛔️ | (Various dates) | Deprecated ⛔️ | Deprecated ⛔️ | _*All versions of dbt Core since v1.0 are available in dbt Cloud until further notice. Versions that are EOL do not receive any fixes. For the best support, we recommend upgrading to a version released within the past 12 months._ ### Planned future releases From 6c504495afeb31d5cb4719aef4862f02d6c50e73 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 31 Jul 2023 14:16:08 -0400 Subject: [PATCH 432/703] Update 01-upgrading-to-v1.6.md --- website/docs/guides/migration/versions/01-upgrading-to-v1.6.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index 6859e183362..ac3d7348ef9 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -18,7 +18,7 @@ dbt Labs is committed to providing backward compatibility for all versions 1.x, - dbt Core v1.6 does not support Python 3.7, which reached End Of Life on June 23. Support Python versions are 3.8, 3.9, 3.10, and 3.11. - As part of the Semantic layer re-launch (in beta), the spec for `metrics` has changed significantly. Migration guide coming soon: https://github.com/dbt-labs/docs.getdbt.com/pull/3705 -- Manifest schema version is now v10, reflecting [TODO] changes +- The manifest schema version is now v10. ### For consumers of dbt artifacts (metadata) From f9edcb1657e1a5a613f6fa090c6147edb5a5f48a Mon Sep 17 00:00:00 2001 From: Jason Karlavige Date: Mon, 31 Jul 2023 16:31:22 -0400 Subject: [PATCH 433/703] update featured spotlight member --- website/docusaurus.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index af285961145..24030624290 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -79,7 +79,7 @@ var siteSettings = { announcementBarLink: "https://www.getdbt.com/resources/dbt-cloud-demos-with-experts/?utm_medium=event&utm_source=docs&utm_campaign=q1-2024_cloud-demos-with-experts_awareness", // Set community spotlight member on homepage // This is the ID for a specific file under docs/community/spotlight - communitySpotlightMember: "david-effiong", + communitySpotlightMember: "faith-lierheimer", prism: { theme: (() => { var theme = require("prism-react-renderer/themes/nightOwl"); From 6711cdfcdd343d67e634e9f71b2f06ccf776cea1 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 31 Jul 2023 17:20:02 -0400 Subject: [PATCH 434/703] Update website/docs/reference/resource-configs/postgres-configs.md --- website/docs/reference/resource-configs/postgres-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/postgres-configs.md b/website/docs/reference/resource-configs/postgres-configs.md index 2e603ba8111..d7348d9a4f3 100644 --- a/website/docs/reference/resource-configs/postgres-configs.md +++ b/website/docs/reference/resource-configs/postgres-configs.md @@ -153,7 +153,7 @@ models: Below are current limitations that we hope to address in a future release. #### Changing materialization to and from "materialized_view" -Swapping an already materialized model to be a materialized view and vise versa. The workaround is the manually drop the existing materialization in the data warehouse before calling `dbt run` again. Normally, re-running with the `--full-refresh` flag would resolve this, but not in this case. +Swapping an already materialized model to a materialized view and vice versa. The workaround is manually dropping the existing materialization in the data warehouse before calling `dbt run` again. Normally, re-running with the `--full-refresh` flag would resolve this, but not in this case. To illustrate, assume for the example model below, `my_model`, that it has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="materialized_view"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. From 335e5346f657502a815153e3d6183d33051cb08e Mon Sep 17 00:00:00 2001 From: Grace Goheen Date: Mon, 31 Jul 2023 14:54:36 -0700 Subject: [PATCH 435/703] remove retry from cloud supported commands --- website/docs/reference/commands/retry.md | 6 ++++++ website/docs/reference/dbt-commands.md | 1 - 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/website/docs/reference/commands/retry.md b/website/docs/reference/commands/retry.md index 0c010ede2c1..692b2f6b744 100644 --- a/website/docs/reference/commands/retry.md +++ b/website/docs/reference/commands/retry.md @@ -4,6 +4,12 @@ sidebar_label: "retry" id: "retry" --- +:::warning dbt Cloud support coming soon + +Native support for `dbt retry` is coming to dbt Cloud soon. + +::: + `dbt retry` re-executes the last `dbt` command from the node point of failure. If the previously executed `dbt` command was successful, `retry` will finish as `no operation`. Retry works with the following commands: diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index 5b37f13a3fb..1a45ea47a3d 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -24,7 +24,6 @@ Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/ - [compile](/reference/commands/compile): compiles (but does not run) the models in a project - [deps](/reference/commands/deps): downloads dependencies for a project - [docs](/reference/commands/cmd-docs) : generates documentation for a project -- [retry](/reference/commands/retry): retry the last run `dbt` command from the point of failure (requires dbt 1.6 or higher) - [run](/reference/commands/run): runs the models in a project - [run-operation](/reference/commands/run-operation): invoke a macro, including running arbitrary maintenance SQL against the database - [seed](/reference/commands/seed): loads CSV files into the database From ec0accd8001f2fc7331e2ca7df33f86999c17534 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Mon, 31 Jul 2023 15:19:17 -0700 Subject: [PATCH 436/703] Update website/docs/guides/migration/versions/02-upgrading-to-v1.5.md remove extra underscore --- website/docs/guides/migration/versions/02-upgrading-to-v1.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index aad0883f014..bfb27f3420c 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -57,7 +57,7 @@ models: config: ... ``` -Some options that could previously be specified _after_ a sub-command can now only be specified _before__. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected commands are: +Some options that could previously be specified _after_ a sub-command can now only be specified _before_. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected commands are: | --cache-selected-only | --debug | --deprecated-print | --enable-legacy-logger| --fail-fast | |--------------|--------------|-----------------|-----------|---------------------------| From e19dba6f4681bdbefd52cb0935d473ca3bd02748 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 31 Jul 2023 20:10:54 -0400 Subject: [PATCH 437/703] Updating table headers --- website/docs/guides/migration/versions/02-upgrading-to-v1.5.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index bfb27f3420c..ebcf74bc5a7 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -59,8 +59,9 @@ models: Some options that could previously be specified _after_ a sub-command can now only be specified _before_. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected commands are: -| --cache-selected-only | --debug | --deprecated-print | --enable-legacy-logger| --fail-fast | +| | | | | | |--------------|--------------|-----------------|-----------|---------------------------| +| --cache-selected-only | --debug | --deprecated-print | --enable-legacy-logger| --fail-fast | | --log-cache-events | --log-format | --log-level | --log-path | --macro-debugging | | --partial-parse | --populate-cache | --print | --printer-width | --quiet | | --record-timing-info | --send-anonymous-usage-stats | --single-threaded | --static-parser | --use-colors | From 6cb3dbeefcdd794623087dcb5443dfb525544cfc Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:03:51 -0400 Subject: [PATCH 438/703] Update website/docs/reference/resource-configs/postgres-configs.md --- website/docs/reference/resource-configs/postgres-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/postgres-configs.md b/website/docs/reference/resource-configs/postgres-configs.md index d7348d9a4f3..a8d5af2301e 100644 --- a/website/docs/reference/resource-configs/postgres-configs.md +++ b/website/docs/reference/resource-configs/postgres-configs.md @@ -155,7 +155,7 @@ Below are current limitations that we hope to address in a future release. Swapping an already materialized model to a materialized view and vice versa. The workaround is manually dropping the existing materialization in the data warehouse before calling `dbt run` again. Normally, re-running with the `--full-refresh` flag would resolve this, but not in this case. -To illustrate, assume for the example model below, `my_model`, that it has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="materialized_view"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. +For example, assume the model below, `my_model`, has already been materialized to the underlying data platform via `dbt run`. If a user changes the model's config to `materialized="materialized_view"`, they will get an error. The solution is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. From ab88c681a1079e320a2fcda09e9773714739878d Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:05:25 -0400 Subject: [PATCH 439/703] Update website/docs/reference/resource-configs/redshift-configs.md --- website/docs/reference/resource-configs/redshift-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 0991afc21db..8f874e67cdd 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -138,7 +138,7 @@ models: ### Limitations -Below are current limitations that we hope to address in a future release. +We hope to address the following limitations in a future release. #### Changing materialization from "materialized_view" to table or view Swapping a materialized view to be a table or view is not supported. The workaround is to manually drop the existing materialized view in the data warehouse before calling `dbt run` again. From 106b9a8157a68e396ac4185df15801de7e9fcb0d Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:05:33 -0400 Subject: [PATCH 440/703] Update website/docs/reference/resource-configs/redshift-configs.md --- website/docs/reference/resource-configs/redshift-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 8f874e67cdd..2e1cddeaf1c 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -141,7 +141,7 @@ models: We hope to address the following limitations in a future release. #### Changing materialization from "materialized_view" to table or view -Swapping a materialized view to be a table or view is not supported. The workaround is to manually drop the existing materialized view in the data warehouse before calling `dbt run` again. +Swapping a materialized view to a table or view is not supported. You must manually drop the existing materialized view in the data warehouse before calling `dbt run` again. To illustrate, assume for a materialized view, `my_mv.sql`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="view"`, they will get an error. The workaround is to execute `DROP MATERIALIZE VIEW my_mv CASCASE` on the data warehouse before trying the model again. From cde65f0942b3036bb8c915f85feee31bc7caddd2 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:07:04 -0400 Subject: [PATCH 441/703] Update website/docs/reference/resource-configs/redshift-configs.md --- website/docs/reference/resource-configs/redshift-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 2e1cddeaf1c..18e4da73225 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -143,6 +143,6 @@ We hope to address the following limitations in a future release. Swapping a materialized view to a table or view is not supported. You must manually drop the existing materialized view in the data warehouse before calling `dbt run` again. -To illustrate, assume for a materialized view, `my_mv.sql`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="view"`, they will get an error. The workaround is to execute `DROP MATERIALIZE VIEW my_mv CASCASE` on the data warehouse before trying the model again. +For example, assume that a view, `my_mv.sql`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="table"`, they will get an error. The workaround is to execute `DROP MATERIALIZE VIEW my_mv CASCASE` on the data warehouse before trying the model again. From 7e6a62b4cd64c19e3c2f675ae72e5f605c45c9fd Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:08:58 -0400 Subject: [PATCH 442/703] Update website/docs/reference/resource-configs/snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 9644a1539f5..78575f87c31 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -346,7 +346,7 @@ In the configuration format for the model SQL file: ## Dynamic Tables -[Dynamic Tables](https://docs.snowflake.com/en/user-guide/dynamic-tables-about) are Snowflake's flavor of Materialized Views. +[Dynamic Tables](https://docs.snowflake.com/en/user-guide/dynamic-tables-about) are Snowflake's version of Materialized Views. ### Parameters From 24436a2cdb1e1f69c4f429ad1d09cc4aef24767b Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:10:17 -0400 Subject: [PATCH 443/703] Update website/docs/reference/resource-configs/snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 78575f87c31..6c0bc69f6ab 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -399,7 +399,7 @@ models: Swapping an already materialized model to be a dynamic table and vise versa. The workaround is the manually drop the existing materialization in the data warehouse before calling `dbt run` again. -To illustrate, assume for the example model below, `my_model`, that it has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="dynamic_table"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. +For example, assume for the example model below, `my_model`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="dynamic_table"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. From 3322d14e9b0641b325ebafd0488a37fb3c7bc26a Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:10:31 -0400 Subject: [PATCH 444/703] Update website/docs/reference/resource-configs/snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 6c0bc69f6ab..1d6d2e8858a 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -397,7 +397,7 @@ models: #### Changing materialization to and from "dynamic_table" -Swapping an already materialized model to be a dynamic table and vise versa. The workaround is the manually drop the existing materialization in the data warehouse before calling `dbt run` again. +Swapping an already materialized model to be a dynamic table and vice versa. The workaround is manually dropping the existing materialization in the data warehouse before calling `dbt run` again. For example, assume for the example model below, `my_model`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="dynamic_table"`, they will get an error. The workaround is to execute `DROP TABLE my_model` on the data warehouse before trying the model again. From 2df94ec57d3b7d14c3aba480bb459e23f16c9abd Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:11:39 -0400 Subject: [PATCH 445/703] Update website/docs/reference/resource-configs/snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 1d6d2e8858a..2420b032b88 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -413,7 +413,6 @@ For example, assume for the example model below, `my_model`, has already been ma -#### Altering `target_lag` or `warehouse` Currently, changing either the `target_lag` or `warehouse` parameters for a pre-existing Dynamic Table (DT) will result in the Dynamic Table being dropped and replaced, rather than altered. From 49d6eb44096316ad5e14d4c17d6f96464546bdd2 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:11:46 -0400 Subject: [PATCH 446/703] Update website/docs/reference/resource-configs/snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 2420b032b88..b3ef3f484fc 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -414,6 +414,5 @@ For example, assume for the example model below, `my_model`, has already been ma -Currently, changing either the `target_lag` or `warehouse` parameters for a pre-existing Dynamic Table (DT) will result in the Dynamic Table being dropped and replaced, rather than altered. From d84c5ff0294d19cec9fca59466436944439bd6fe Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:13:43 -0400 Subject: [PATCH 447/703] Update website/docs/reference/resource-configs/snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index b3ef3f484fc..12851f48a69 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -352,7 +352,7 @@ In the configuration format for the model SQL file: dbt-snowflake requires the following parameters: -- `TARGET_LAG` +- `target_lag` - `WAREHOUSE` To learn more about each parameter and what values it can take, see From 11b4edb740c5341609527c0210d6479226fe541c Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:14:06 -0400 Subject: [PATCH 448/703] Apply suggestions from code review --- .../docs/reference/resource-configs/snowflake-configs.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 12851f48a69..d5526a03bcd 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -353,7 +353,7 @@ In the configuration format for the model SQL file: dbt-snowflake requires the following parameters: - `target_lag` -- `WAREHOUSE` +- `snowflake_warehouse` To learn more about each parameter and what values it can take, see the Snowflake docs page: [`CREATE DYNAMIC TABLE: Parameters`](https://docs.snowflake.com/en/sql-reference/sql/create-dynamic-table) @@ -373,7 +373,7 @@ The following examples create a dynamic table: {{ config( materialized = 'dynamic_table', - warehouse = 'MY_WAREHOUSE', + warehouse = 'snowflake_warehouse', target_lag = '10 minutes', ) }} @@ -387,7 +387,7 @@ The following examples create a dynamic table: models: path: materialized: dynamic_table - warehouse: MY_WAREHOUSE + warehouse: snowflake_warehouse target_lag: '10 minutes' ``` From 6e2426d7e6d5563a8208d814d0785947b9437bc5 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:15:34 -0400 Subject: [PATCH 449/703] Update website/docs/reference/resource-configs/snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index d5526a03bcd..a79326743a2 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -356,7 +356,7 @@ dbt-snowflake requires the following parameters: - `snowflake_warehouse` To learn more about each parameter and what values it can take, see -the Snowflake docs page: [`CREATE DYNAMIC TABLE: Parameters`](https://docs.snowflake.com/en/sql-reference/sql/create-dynamic-table) +the Snowflake docs page: [`CREATE DYNAMIC TABLE: Parameters`](https://docs.snowflake.com/en/sql-reference/sql/create-dynamic-table). Note that `downstream` for `target_lag` is not supported. ### Usage From 6fc5af1516f5c964c74fea5aff16ae678796080e Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 1 Aug 2023 09:16:42 -0400 Subject: [PATCH 450/703] Update snowflake-configs.md --- website/docs/reference/resource-configs/snowflake-configs.md | 1 + 1 file changed, 1 insertion(+) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index a79326743a2..1e113d6a3b1 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -354,6 +354,7 @@ dbt-snowflake requires the following parameters: - `target_lag` - `snowflake_warehouse` +- `on_configuration_change` To learn more about each parameter and what values it can take, see the Snowflake docs page: [`CREATE DYNAMIC TABLE: Parameters`](https://docs.snowflake.com/en/sql-reference/sql/create-dynamic-table). Note that `downstream` for `target_lag` is not supported. From 453820924d734ba980419d88145ce7c55e85bf36 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Tue, 1 Aug 2023 10:42:12 -0600 Subject: [PATCH 451/703] add migration guide --- website/docs/guides/migration/sl-migration.md | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 website/docs/guides/migration/sl-migration.md diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md new file mode 100644 index 00000000000..908ef8e72fb --- /dev/null +++ b/website/docs/guides/migration/sl-migration.md @@ -0,0 +1,53 @@ +--- +title: "Semantic Layer Migration" +description: Migration guide for ugpgrading the semantic layer in v1.6 +--- +**Technical resources:** + +- MetricFlow [quickstart guide](https://docs.getdbt.com/docs/build/sl-getting-started) +- [Example dbt project](https://github.com/dbt-labs/jaffle-sl-template) +- [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) +- [dbt_metrics deprecation post](https://docs.getdbt.com/blog/deprecating-dbt-metrics) + +## Intro + +The legacy Semantic Layer will be deprecated in H2 2023. Additionally, the `dbt_metrics` package will not be support in dbt 1.6 and above. If you are using `dbt_metrics` you will need to upgrade your configurations before upgrading to 1.6. This guide walks through the migration process for users of the legacy semantic layer who want to use to the new Semantic Layer. The estimated migration time is 2 weeks. + +### Step 1: **Migrate Metric configs to the new spec.** + +The metrics specification in dbt core has changed in v1.6 in order to support the integration of MetricFlow. It is highly recommended that you read the [MetricFlow docs](https://docs.getdbt.com/docs/build/build-metrics-intro) and before getting started so you understand the core concepts of the Semantic Layer. We recommend completing these steps in a local dev environment instead of the IDE. To migrate your metrics configs: +** + +1. Creating new Semantic Model configs as YAML files in your dbt project. * +2. Upgrading the Metrics configs in your project to the new spec.* +3. Delete your old metrics file or remove .yml extension so they are ignored at parse time. Remove the `dbt-metrics` package form your project. Remove any macros that reference `dbt-metrics` i.e like `metrics.calculate()`. Make sure that any packages you’re using do not have references to the old metrics spec. +4. Install the CLI via `pip install "dbt-metricflow[your_adapter_name]` i.e `pip install "dbt-metricflow[snowflake]` . The MetricFlow CLI is not available in the IDE. We’re working hard to support it soon 🙂. +5. Run `dbt parse`. This will parse your project and create a `semantic_manifest.json` file in your target directory. MetricFlow needs this file to query metrics. You will need to re-parse your project when you make changes to your configs. +6. Run `mf list metrics` to view the metrics in your project +7. Test querying a metric by running `mf query --metrics --group-by ` i.e `mf query --metrics revenue --group-by metric_time` +8. Run `mf validate-configs` to run semantic and warehouse validations. This ensures are configs are valid, and the underlying objects exist in your warehouse. +9. Push these changes to a new branch in your repo. + +**To make this process easier, we have [developed a custom migration tool](https://github.com/dbt-labs/dbt-converter) that automates these steps for you. You can find installation instructions in the [README](https://github.com/dbt-labs/dbt-converter/blob/master/README.md). Derived metrics aren’t supported in the migration tool, and will have to be migrated manualy* + +## Step 2: **Audit metric values after the migration** + +You may need to audit metric values during the migration to ensure that the historical values of key business metrics are the same. To audit you metric values follow these steps: + +1. In the CLI, query the metric(s) and dimensions you want to test and add the `--explain` option. For examples `mf query --metrics orders,revenue --group-by metric_time__month,customer_type --explain` +2. Use the SQL MetricFlow generates to create a temporary model in your project i.e `tmp_orders_revenue audit.sql`. You will use the model to compare to your legacy metrics. +3. If you haven’t already done so, create a model using metrics.calculate() for the metrics you want to compare i.e + +```bash +select * +from {{ metrics.calculate( +[metric('orders)', +metric('revenue)'], + grain='week', + dimensions=['metric_time', 'customer_type'], +) }} + +``` + +1. Run [dbt-audit](https://github.com/dbt-labs/dbt-audit-helper) helper on both models to compare the metric values. + From d75c304ba30ebaf86f0dbd677cad6fd656cab008 Mon Sep 17 00:00:00 2001 From: winnie <91998347+gwenwindflower@users.noreply.github.com> Date: Tue, 1 Aug 2023 11:42:59 -0500 Subject: [PATCH 452/703] Semantic Layer Guide (#3823) ## What are you changing in this pull request and why? This adds a Guide for Semantic Layer Best Practices --- .../semantic-layer-1-intro.md | 33 ++ .../semantic-layer-2-setup.md | 44 +++ .../semantic-layer-3-build-semantic-models.md | 291 ++++++++++++++++++ .../semantic-layer-4-build-metrics.md | 42 +++ .../semantic-layer-5-refactor-a-mart.md | 243 +++++++++++++++ .../semantic-layer-6-advanced-metrics.md | 80 +++++ .../semantic-layer-7-conclusion.md | 35 +++ website/sidebars.js | 18 +- .../semantic-layer/orders_erd.png | Bin 0 -> 1345248 bytes 9 files changed, 785 insertions(+), 1 deletion(-) create mode 100644 website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md create mode 100644 website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md create mode 100644 website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md create mode 100644 website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md create mode 100644 website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md create mode 100644 website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md create mode 100644 website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md create mode 100644 website/static/img/guides/best-practices/semantic-layer/orders_erd.png diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md new file mode 100644 index 00000000000..3df92e63f12 --- /dev/null +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md @@ -0,0 +1,33 @@ +--- +title: "Intro to the Semantic Layer" +description: Getting started with the dbt Semantic Layer +displayText: "dbt Cloud Semantic Layer best practices" +hoverSnippet: Learn how to get started with the dbt Semantic Layer +--- + +:::beta +**This is a guide for a beta product.** We anticipate this guide will evolve alongside the Semantic Layer through community collaboration. We welcome discussions, ideas, issues, and contributions to refining best practices. +::: + +Flying cars, hoverboards, and true self-service analytics: this is the future we were promised. The first two might still be a few years out, but real self-service analytics is here today. With dbt Cloud's Semantic Layer, you can resolve the tension between accuracy and flexibility that has hampered analytics tools for years, empowering everybody in your organization to explore a shared reality of metrics. Best of all for analytics engineers, building with these new tools will significantly [DRY](https://docs.getdbt.com/terms/dry) up and simplify your codebase. As you'll see, the deep interaction between your dbt models and the Semantic Layer make your dbt project the ideal place to craft your metrics. + +## Learning goals + +- ❓ Understand the **purpose and capabilities** of the **dbt Semantic Layer**. +- 🧱 Familiarity with the core components of the dbt Semantic Layer — **semantic models and metrics** — and how they work together. +- 🛠️ Hands-on **experience building** semantic models and metrics in dbt Cloud. +- 🔁 Know how to **refactor** models into the Semantic Layer. +- 🏅 Aware of new **best practices** to take maximum advantage of the Semantic Layer. + +## Guide structure overview + +We'll work through our learning goals via an [example project](https://github.com/dbt-labs/jaffle-sl-template), we encourage you to follow along and try the code out for yourself if you'd like on the `start-here` branch, or you can just follow along with the completed state of the codebase on the `main` branch. + +1. Getting **setup** with MetricFlow in your dbt project. +2. Building your first **semantic model** and its fundamental parts: **entities, dimensions, and measures**. +3. Building your first **metric**. +4. **Refactoring** a mart into the Semantic Layer. +5. Defining **advanced metrics**: `ratio` and `derived` types. +6. Review **best practices**. + +If you're ready to ship your users more power with less code, let's dive in! diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md new file mode 100644 index 00000000000..ef67082e73f --- /dev/null +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md @@ -0,0 +1,44 @@ +--- +title: "Setup the Semantic Layer" +description: Getting started with the dbt Semantic Layer +displayText: "dbt Cloud Semantic Layer best practices" +hoverSnippet: Learn how to get started with the dbt Semantic Layer +--- + +## Getting started + +First, if you want to follow along, we'll need to clone the [example project](https://github.com/dbt-labs/jaffle-sl-template). You will need access to a Snowflake, BigQuery, Databricks, or Postgres warehouse for this, for the time being. The project is our classic Jaffle Shop, a simulated chain restaurant serving [jaffles](https://en.wikipedia.org/wiki/Pie_iron) and tasty beverages. + +```shell +git clone git@github.com:dbt-labs/jaffle-sl-template.git +cd path/to/project +``` + +Next before we start writing code, we'll need to install the MetricFlow CLI as an extension of a dbt adapter from PyPI. The MetricFlow CLI is compatible with Python versions 3.8 through 3.11. + +We'll use pip to install MetricFlow and our dbt adapter: + +```shell +# activate a virtual environment for your project, +# if you don't have a name you like to use we suggest .venv +python -m venv [virtual environment name] +source [virtual environment name]/bin/activate +# install dbt and MetricFlow +pip install dbt-metricflow[adapter name] +# e.g. dbt-metricflow[snowflake] +``` + +Lastly, to get to the pre-Semantic Layer starting state, checkout the `start-here` branch. + +```shell +git checkout start-here +``` + +For more information you can [look at the docs](/docs/build/metricflow-cli) or checkout a [Quickstart](https://docs.getdbt.com/quickstarts) to get more familiar with setting up a dbt project. + +## Basic commands + +- 💻 This package will install both `dbt` and `mf` as CLIs in our virtual environment. All the regular `dbt` commands like `run`, `build`, and `test` are available. +- 🔍 A less common one that will come in handy with the Semantic Layer is `dbt parse`. This will parse your project and generate a **semantic manifest**, a representation of meaningful connections described by your project. This file gives MetricFlow a **state of the world from which to generate queries**. +- 🧰 In addition to `dbt`, you'll have access to `mf` commands like `query` and `validate-configs`, which operate based on that semantic manifest. We'll dig more into all of these as we go along. +- 🛠️ Lets start off by running a `dbt build` to get the **starting state** of our project built. diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md new file mode 100644 index 00000000000..549dbccf8dd --- /dev/null +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md @@ -0,0 +1,291 @@ +--- +title: "Building semantic models" +description: Getting started with the dbt Semantic Layer +displayText: "dbt Cloud Semantic Layer best practices" +hoverSnippet: Learn how to get started with the dbt Semantic Layer +--- + +## How to build a semantic model + +A semantic model is the Semantic Layer equivalent to a logical layer model (what historically has just been called a 'model' in dbt land). Just as configurations for models are defined on the `models:` YAML key, configurations for semantic models are housed under `semantic models:`. A key difference is that while a logical model consists of configuration and SQL or Python code, a **semantic model is defined purely via YAML**. Rather than encoding a specific dataset, a **semantic model describes relationships** that let your end users select and refine their own datasets reliably. + +- ⚙️ Semantic models are **comprised of three components**: + - 🫂 **entities**: these describe the **relationships** between various semantic models (think ids) + - 🪣 **dimensions**: these are the columns you want to **slice, dice, group, and filter by** (think timestamps, categories, booleans). + - 📏 **measures**: these are the **quantitative values you want to aggregate** +- 📚 We define **columns as being an entity, dimension, or measure**. + +:::tip +**File per model**. Given the interdependence of logical and semantic models, and semantic models and metrics, we've updated our best practice recommendation to a one YAML file per model approach if you're using the Semantic Layer. This houses everything related to a model in one place and preserves unique file names for quickly getting to the code you want. +::: + +## Defining orders + +- 🥪 The semantic model we're going to define is _orders_. +- 📗 We define it as a **YAML dictionary in the semantic models list**. +- 📑 It will have a **name, entities list, dimensions list, and measures list**. +- ⏬ We recommend defining them **in this order consistently** as a style best practice. + +```YAML +semantic_models: + - name: orders + entities: + ... + dimensions: + ... + measures: + ... +``` + +- Next we'll point to the corresponding logical model by supplying a [`ref`](https://docs.getdbt.com/reference/dbt-jinja-functions/ref) in the `model:` property, and a `description` for documentation. + +```YAML +semantic_models: + - name: orders + description: | + Model containting order data. The grain of the table is the order id. + model: ref('stg_orders') + entities: + ... + dimensions: + ... + measures: + ... +``` + +## Establishing our entities + +- 🫂 Entities are the **objects and concepts** in our data that _have_ dimensions and measures. You can think of them as the **nouns** of our project, the **spines** of our queries that we may want to aggregate by, or simply the **join keys**. +- 🔀 Entities help MetricFlow understand **how various semantic models relate to one another**. +- ⛓️ Unlike many other semantic layers, in MetricFlow **we do not need to describe joins explicitly**, instead the **relationships are implicitly described by entities**. +- 1️⃣ Each semantic model should have **one primary entity** defined for itself, and **any number of foreign entities** for other semantic models it may join to. +- 🫂 Entities require a **name and type** + - 🔑 Types available are **primary**, **foreign**, **unique** or **natural** — we'll be focused on the first two for now, but you can [read more about unique and natural keys](https://docs.getdbt.com/docs/build/entities#entity-types). + +### Entities in action + +If we look at the staging model for orders, we see that it has 3 id columns, so we'll need three entities. + +```SQL +renamed as ( + + select + + ---------- ids + id as order_id, + store_id as location_id, + customer as customer_id, + + ---------- properties + (order_total / 100.0) as order_total, + (tax_paid / 100.0) as tax_paid, + + ---------- timestamps + ordered_at + + from source +``` + +- 👉 We add them with a **`name`, `type`, and optional `expr`** (expression). The expression can be any valid SQL expression on your platform. +- 📛 If you **don't add an expression**, MetricFlow will **assume the name is equal to the column name** in the underlying logical model. +- 👍 Our best practices pattern is to, whenever possible, provide a `name` that is the singular form of the subject or grain of the table, and use `expr` to specify the precise column name (with `_id` etc). This will let us write **more readable metrics** on top of these semantic models. + +```YAML +semantic_models: + - name: orders + ... + entities: + # we use the column for the name here because order is a reserved word in SQL + - name: order_id + type: primary + - name: location + type: foreign + expr: location_id + - name: customer + type: foreign + expr: customer_id + + dimensions: + ... + measures: + ... + +``` + +## Defining our dimensions + +- 🧮 Dimensions are the columns that we want to **filter and group by**, **the adjectives of our project**. They come in three types: + - **categorical** + - **time** + - slowly changing dimensions — [these are covered in the documentation](https://docs.getdbt.com/docs/build/dimensions#scd-type-ii), and a little more complex. To focus on building your mental models of MetricFlow's fundamentals, we won't be using SCDs this guide. +- ➕ We're **not limited to existing columns**, we can use the `expr` property to add simple computations in our dimensions. +- 📛 Categorical dimensions are the simplest, they simply require a `name` and `type` (type being categorical). **If the `name` property matches the name of the dimension column**, that's it, you're done. If you want or need to use a `name` other than the column name, or do some filtering or computation, **you can supply an optional `expr` property** to evaluate for the dimension. + +### Dimensions in action + +- 👀 Lets look at our staging model again and see what fields we have available. + +```SQL +select + + ---------- ids -> entities + id as order_id, + store_id as location_id, + customer as customer_id, + + ---------- numerics -> measures + (order_total / 100.0) as order_total, + (tax_paid / 100.0) as tax_paid, + + ---------- timestamps -> dimensions + ordered_at + +from source +``` + +- ⏰ For now the only dimension to add is a **time dimension**. +- 🕰️ At least one **primary time dimension** is **required** for any semantic models that **have measures**. +- 1️⃣ We denote this with the `is_primary` property, or if there is only one time dimension supplied it is primary by default. Below we only have `ordered_at` as a timestamp so we don't need to specify anything except the maximum granularity we're bucketing to (in this case, day). + +```YAML +dimensions: + - name: date_trunc('day', ordered_at) + type: time + type_params: + time_granularity: day +``` + +:::tip +**Dimensional models**. You may have some models that do not contain measures, just dimensional data that enriches other facts. That's totally fine, a semantic model does not require dimensions or measures, it just needs a primary entity, and if you do have measures, a primary time dimension. + +We'll discuss an alternate situation, dimensional tables that have static numeric values like supply costs or tax rates but no time dimensions, later in the Guide. +::: + +- 🔢 We can also **make a dimension out of numeric column** that would be typically be a measures. +- 🪣 Using `expr` we can **create buckets of values that we label** for our dimension. We'll add one of these in for labeling 'large orders' as any order totals over $50. + +```YAML +... +dimensions: + - name: date_trunc('day', ordered_at) + type: time + type_params: + time_granularity: day + - name: is_large_order + type: categorical + expr: case when order_total > 50 then true else false end +... +``` + +## Making our measures + +- 📏 Measures are the final component of a semantic model. They describe the **numeric values that we want to aggregate**. +- 🧱 Measures form **the building blocks of metrics**, with entities and dimensions helping us combine, group, and filter those metrics correctly. +- 🏃 You can think of them as something like the **verbs of a semantic model**. + +### Measures in action + +- 👀 Lets look at **our staging model** one last time and see what **fields we want to measure**. + +```SQL +select + + ---------- ids -> entities + id as order_id, + store_id as location_id, + customer as customer_id, + + ---------- numerics -> measures + (order_total / 100.0) as order_total, + (tax_paid / 100.0) as tax_paid, + + ---------- timestamps -> dimensions + ordered_at + +from source +``` + +- ➕ Here `order_total` and `tax paid` are the **columns we want as measures**. +- 📝 We can describe them via the code below, specifying a **name, description, aggregation, and expression**. +- 👍 As before MetricFlow we default to the **name being the name of a column when no expression is supplied**. +- 🧮 [Many different aggregations](https://docs.getdbt.com/docs/build/measures#aggregation) are available to us. Here we just want sums. + +```YAML +measures: + - name: order_total + description: The total amount for each order inlcuding taxes. + agg: sum + - name: tax_paid + description: The total tax paid on each order. + agg: sum +``` + +- 🆕 We can also **create new measures using expressions**, for instance adding a count of individual orders as below. + +```YAML + - name: order_count + description: The count of individual orders. + expr: 1 + agg: sum +``` + +## Validating configs + +Our completed code should look like this, our first semantic model! + +```orders +semantic_models: + - name: orders + defaults: + agg_time_dimension: ordered_at + description: | + Order fact table. This table is at the order grain with one row per order. + + model: ref('stg_orders') + + entities: + - name: order_id + type: primary + - name: location + type: foreign + expr: location_id + - name: customer + type: foreign + expr: customer_id + + dimensions: + - name: ordered_at + type: time + type_params: + time_granularity: day + - name: is_large_order + type: categorical + expr: case when order_total > 50 then true else false end + + measures: + - name: order_total + description: The total revenue for each order. + agg: sum + - name: order_count + description: The count of individual orders. + expr: 1 + agg: sum + - name: tax_paid + description: The total tax paid on each order. + agg: sum +``` + +- 🦺 We can check that it's valid configuration and works with the real data our dbt project is generating by using the `mf validate-configs` command. This will: + 1. **Parse the semantic manifest** our configuration describes out of the dbt project. + 2. Validate the **internal semantics** of the manifest as described by our code. + 3. Validate the **external semantics** of the manifest against your data warehouse (e.g. making sure that a column specified as a dimension exists on the proper table) + +## Review and next steps + +Let's review what the basics of semantic models, they: + +- 🧱 Consist off **entities, dimensions, and measures**. +- 🫂 Describe the **semantics and relationships of objects** in the warehouse. +- 1️⃣ Correspond to a **single logical model** in your dbt project. + +Next up, lets use our new semantic model to **build a metric**! diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md new file mode 100644 index 00000000000..1a572cc03e4 --- /dev/null +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md @@ -0,0 +1,42 @@ +--- +title: "Building metrics" +description: Getting started with the dbt Semantic Layer +displayText: "dbt Cloud Semantic Layer best practices" +hoverSnippet: Learn how to get started with the dbt Semantic Layer +--- + +## How to build metrics + +- 💹 We'll start with one of the most important metrics for any business: **revenue**. +- 📖 For now, our metric for revenue will be **defined as the sum of order totals excluding tax**. +- 🆕 Let's create a file called `metrics.yml` in our marts folder for now to write our first metric in. + +## Defining revenue + +- 🔢 Metrics have four basic properties: + - `name:` We'll use 'revenue' to reference this metric. + - `description:` For documentation. + - `label:` The display name for the metric in downstream tools. + - `type:` one of `simple`, `ratio`, or `derived`. +- 🎛️ Each type has different `type_params`. +- 🛠️ We'll build a **simple metric** first to get the hang of it, and move on to ratio and derived metrics later. +- 📏 Simple metrics are built on a **single measure defined as a type parameter**. +- 🔜 Defining **measures as their own distinct component** on semantic models is critical to allowing the **flexibility of more advanced metrics**, though simple metrics act mainly as **pass-through that provide filtering** and labeling options. A `create_metric` option for measures is coming in the next version of MetricFlow to **save you writing extra code** for simple metrics that make no changes to the underlying measure. + +```YAML +metrics: + - name: revenue + description: Sum of the order total. + label: Revenue + type: simple + type_params: + measure: order_total +``` + +## Query your metric + +- It's best practice any time we're updating our semantic layer code to run a `dbt parse && mf validate-configs`. +- If everything passes, we can start querying this metric with `mf query`! +- `mf query` is not how you would use the tool in production, that's handled by the dbt Semantic Layer's cloud features. It's available for testing results of various metric queries in development, exactly as we're using it now. +- Try `mf query --metrics revenue --group-by metric_time__day` and see a preview of the data come back. +- Note the structure of the above query. We select the metric(s) we want and the dimensions to group them by — we use dunders (double underscores e.g.`metric_time__[time bucket]`) to designate time dimensions or other non-unique dimensions that need a specified entity path to resolve (e.g. if you have a orders location dimension and a employee location dimension both named 'location' you would need dunders to specify `orders__location` or `employee__location`). diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md new file mode 100644 index 00000000000..cc519e1b718 --- /dev/null +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md @@ -0,0 +1,243 @@ +--- +title: "Refactor an existing mart" +description: Getting started with the dbt Semantic Layer +displayText: "dbt Cloud Semantic Layer best practices" +hoverSnippet: Learn how to get started with the dbt Semantic Layer +--- + +## A new approach + +We've covered the basics, now it's time to dig in to the fun and messy part: how do we refactor an existing mart in dbt into semantic models and metrics? + +Let's look at the differences we can observe in how we might approach this with MetricFlow supercharging dbt versus how we work without a Semantic Layer. These differences can then inform our structure. + +- 🍊 In dbt, we tend to create **highly denormalized datasets** that bring **everything you want around a certain entity or process into a single table**. +- 💜 The problem is, this **limits the dimensionality available to MetricFlow**. The more we pre-compute and 'freeze' into place, the less flexible our data is. +- 🚰 In MetricFlow, we ideally want **highly normalized**, star schema-like data that then allows MetricFlow to shine as a **denormalization engine**. +- ∞ Another way to think about this is that instead of moving down a list of requested priorities trying to pre-make as many combinations of our marts as possible — increasing lines of code and complexity — we can **let MetricFlow present every combination possible without specifically coding it**. +- 🏗️ To resolve these approaches optimally, we'll need to shift some **fundamental aspects of our modeling strategy**. + +## Refactor steps outlined + +We recommend an incremental implementation process that looks something like this: + +1. 👉 Identify **an important output** (a revenue chart on a dashboard for example, and the mart model(s) that supplies this output. +2. 🔍 Examine all the **entities that are components** of this mart (for instance, an orders mart may include customers, shipping, and product data). +3. 🛠️ **Build semantic models and metrics** for all the required components. +4. 👯 Create a **clone of the output** on top of the Semantic Layer. +5. 💻 Audit to **ensure you get accurate outputs**. +6. 💎 Use `mf list dimensions --metrics [metric_name]` to check that your refactoring is increasing dimensionality (flexibility). +7. 👉 Identify **any other outputs** that point to the mart and **move them to the Semantic Layer**. +8. ✌️ Put a **deprecation plan** in place for the mart. + +You would then **continue this process** on other outputs and marts moving down a list of **priorities**. Each model as you go along will be faster and easier as you'll **reuse many of the same components** that will already have been semantically modeled. + +## Let's make a `revenue` metric + +So far we've been working in new pointing at a staging model to simplify things as we build new mental models for MetricFlow. In reality, unless you're implementing MetricFlow in a green-field dbt project, you probably are going to have some refactoring to do. So let's get into that in detail. + +1. 📚 Per the above steps, we've identified our target, now we need to identify all the components we need, these will be all the 'import' CTEs at the top our mart. Let's look at `orders` and `order_items`, the likely models to generate revenue, we see we'll need: `orders`, `order_items`, `products`, `locations`, and `supplies`. +2. 🗺️ We'll next make semantic models for all of these. Let's walk through a straightforward conversion first with `locations`. +3. ⛓️ We'll want to first decide if we need to do any joining to get this into the shape we want for our semantic model. The biggest determinants of this are two factors: + - 📏 Does this semantic model **contain measures**? + - 🕥 Does this semantic model have a **primary timestamp**? + - 🫂 If a semantic model **has measures but no timestamp** (for example, supplies in the example project, which has static costs of supplies), you'll likely want to **sacrifice some normalization and join it on to another model** that has a primary timestamp to allow for metric aggregation. +4. 🔄 If we _don't_ need any joins, we'll just go straight to the staging model for our semantic model's `ref`. Locations does have a `tax_rate` measure, but it also has an `ordered_at` timestamp, so we can go **straight to the staging model** here. +5. 🥇 We specify our **primary entity** (based on `location_id`), dimensions (one categorical, `location_name`, and one **primary time dimension** `opened_at`), and lastly our measures, in this case just `average_tax_rate`. + + ```YAML + semantic_models: + - name: locations + description: | + Location dimension table. The grain of the table is one row per location. + model: ref('stg_locations') + entities: + - name: location + type: primary + expr: location_id + dimensions: + - name: location_name + type: categorical + - name: date_trunc('day', opened_at) + type: time + type_params: + time_granularity: day + measures: + - name: average_tax_rate + description: Average tax rate. + expr: tax_rate + agg: avg + ``` + +## Semantic and logical interaction + +Now, let's tackle a thornier situation. Products and supplies both have dimensions and measures but no time dimension. Products has a one-to-one relationship with `order_items`, enriching that table, which is itself just a mapping table of products to orders. Additionally, products have a one-to-many relationship with supplies. The high-level ERD looks like the diagram below. + + + +So to calculate, for instance, the cost of ingredients and supplies for a given order, we'll need to do some joining and aggregating, but again we **lack a time dimension for products and supplies**. This is the signal to us that we'll **need to build a logical mart** and point our semantic model at that. + +:::tip +**dbt 🧡 MetricFlow.** This is where integrating your semantic definitions into your dbt project really starts to pay dividends. The interaction between the logical and semantic layers is so dynamic, you either need to house them in one codebase or facilitate a lot of cross-project communication and dependency. +::: + +1. 🎯 Let's aim at, to start, building a table at the `order_items` grain. We can aggregate supply costs up, map over the fields we want from products, such as price, and bring the `ordered_at` timestamp we need over from the orders table. We'll write the following code in `models/marts/order_items.sql`. + + ```SQL + {{ + config( + materialized = 'table', + ) + }} + + with + + order_items as ( + + select * from {{ ref('stg_order_items') }} + + ), + + orders as ( + + select * from {{ ref('stg_orders')}} + + ), + + products as ( + + select * from {{ ref('stg_products') }} + + ), + + supplies as ( + + select * from {{ ref('stg_supplies') }} + + ), + + order_supplies_summary as ( + + select + product_id, + sum(supply_cost) as supply_cost + + from supplies + + group by 1 + ), + + joined as ( + + select + order_items.*, + products.product_price, + order_supplies_summary.supply_cost, + products.is_food_item, + products.is_drink_item, + orders.ordered_at + + from order_items + + left join orders on order_items.order_id = orders.order_id + + left join products on order_items.product_id = products.product_id + + left join order_supplies_summary on order_items.product_id = order_supplies_summary.product_id + + ) + + select * from joined + ``` + +2. 🏗️ Now we've got a table that looks more like what we want to feed into MetricFlow. Next, we'll **build a semantic model on top of this new mart** in `models/marts/order_items.yml`. Again, we'll identify our **entities, then dimensions, then measures**. + + ```YAML + semantic_models: + #The name of the semantic model. + - name: order_items + defaults: + agg_time_dimension: ordered_at + description: | + Items contatined in each order. The grain of the table is one row per order item. + model: ref('order_items') + entities: + - name: order_item + type: primary + expr: order_item_id + - name: order_id + type: foreign + expr: order_id + - name: product + type: foreign + expr: product_id + dimensions: + - name: ordered_at + expr: date_trunc('day', ordered_at) + type: time + type_params: + time_granularity: day + - name: is_food_item + type: categorical + - name: is_drink_item + type: categorical + measures: + - name: revenue + description: The revenue generated for each order item. Revenue is calculated as a sum of revenue associated with each product in an order. + agg: sum + expr: product_price + - name: food_revenue + description: The revenue generated for each order item. Revenue is calculated as a sum of revenue associated with each product in an order. + agg: sum + expr: case when is_food_item = 1 then product_price else 0 end + - name: drink_revenue + description: The revenue generated for each order item. Revenue is calculated as a sum of revenue associated with each product in an order. + agg: sum + expr: case when is_drink_item = 1 then product_price else 0 end + - name: median_revenue + description: The median revenue generated for each order item. + agg: median + expr: product_price + ``` + +3. 📏 Finally, Let's **build a simple revenue metric** on top of our semantic model now. + + ```YAML + metrics: + - name: revenue + description: Sum of the product revenue for each order item. Excludes tax. + type: simple + label: Revenue + type_params: + measure: revenue + ``` + +## Checking our work + +- 🔍 We always will start our **auditing** with a `dbt parse && mf validate-configs` to **ensure our code works** before we examine its output. +- 👯 If we're working there, we'll move to trying out an `mf query` that **replicates the logic of the output** we're trying to refactor. +- 💸 For our example we want to **audit monthly revenue**, to do that we'd run the query below. You can [read more about the MetricFlow CLI](https://docs.getdbt.com/docs/build/metricflow-cli). + +### Example query + +```shell +mf query --metrics revenue --group-by metric_time__month +``` + +### Example query results + +```shell +✔ Success 🦄 - query completed after 1.02 seconds +| METRIC_TIME__MONTH | REVENUE | +|:---------------------|----------:| +| 2016-09-01 00:00:00 | 17032.00 | +| 2016-10-01 00:00:00 | 20684.00 | +| 2016-11-01 00:00:00 | 26338.00 | +| 2016-12-01 00:00:00 | 10685.00 | +``` + +- Try introducing some other dimensions from the semantic models into the `group-by` arguments to get a feel for this command. + +## An alternate approach + +If you **don't have capacity to refactor** some of your marts, they can **still benefit from the Semantic Layer**. The above process is about **maximizing dimensionality** for the long term. In the short term, making your **marts as-is available to MetricFlow** unlocks greatly increased functionality. For an example of this quicker approach check out the `customers` SQL and YAML files on the `main` branch. This displays a **typical denormalized dbt mart** being hooked into MetricFlow. diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md new file mode 100644 index 00000000000..cfac469ed7c --- /dev/null +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md @@ -0,0 +1,80 @@ +--- +title: "More advanced metrics" +description: Getting started with the dbt Semantic Layer +displayText: "dbt Cloud Semantic Layer best practices" +hoverSnippet: Learn how to get started with the dbt Semantic Layer +--- + +## More advanced metric types + +We're not limited to just passing measures through to our metrics, we can also _combine_ measures to model more advanced metrics. + +- 🍊 **Ratio** metrics are, as the name implies, about **comparing two metrics as a numerator and a denominator** to form a new metric, for instance the percentage of order items that are food items instead of drinks. +- 🧱 **Derived** metrics are when we want to **write an expression** that calculates a metric **using multiple metrics**. A classic example here is our gross profit calculated by subtracting costs from revenue. +- ➕ **Cumulative** metrics calculate all of a **measure over a given window**, such as the past week, or if no window is supplied, the all-time total of that measure. + +## Ratio metrics + +- 🔢 We need to establish one measure that will be our **numerator**, and one that will be our **denominator**. +- 🥪 Let's calculate the **percentage** of our Jaffle Shop revenue that **comes from food items**. +- 💰 We already have our denominator, revenue, but we'll want to **make a new metric for our numerator** called `food_revenue`. + +```YAML + - name: food_revenue + description: The revenue from food in each order. + label: Food Revenue + type: simple + type_params: + measure: revenue + filter: | + {{ Dimension('order__is_food_order') }} = true +``` + +- 📝 Now we can set up our ratio metric. + +```YAML +- name: food_revenue_pct + description: The % of order revenue from food. + label: Food Revenue % + type: ratio + type_params: + numerator: food_revenue + denominator: revenue +``` + +## Derived metrics + +- 🆙 Now let's really have some fun. One of the most important metrics for any business is not just revenue, but _revenue growth_. Let's use a derived metric to build month-over-month revenue. +- ⚙️ A derived metric has a couple key components: + - 📚 A list of metrics to build on. These can be manipulated and filtered in various way, here we'll use the `offset_window` property to lag by a month. + - 🧮 An expression that performs a calculation with these metrics. +- With these parts we can assemble complex logic that would otherwise need to be 'frozen' in logical models. + +```YAML +- name: revenue_growth_mom + description: "Percentage growth of revenue compared to 1 month ago. Excluded tax" + type: derived + label: Revenue Growth % M/M + type_params: + expr: (current_revenue - revenue_prev_month) * 100 / revenue_prev_month + metrics: + - name: revenue + alias: current_revenue + - name: revenue + offset_window: 1 month + alias: revenue_prev_month +``` + +## Cumulative metrics + +- ➕ Lastly, lets build a **cumulative metric**. In keeping with our theme of business priorities, let's continue with revenue and build an **all-time revenue metric** for any given time window. +- 🪟 All we need to do is indicate the type is `cumulative` and not supply a `window` in the `type_params`, which indicates we want cumulative for the entire time period our end users select. + +```YAML +- name: cumulative_revenue + description: The cumulative revenue for all orders. + label: Cumulative Revenue (All Time) + type: cumulative + type_params: + measure: revenue +``` diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md new file mode 100644 index 00000000000..915ab2d9bfe --- /dev/null +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md @@ -0,0 +1,35 @@ +--- +title: "Best practices" +description: Getting started with the dbt Semantic Layer +displayText: "dbt Cloud Semantic Layer best practices" +hoverSnippet: Learn how to get started with the dbt Semantic Layer +--- + +## Putting it all together + +- 📊 We've **created semantic models and metrics** for basic coverage of a key business area. +- 🔁 In doing so we've **refactored a 'static' mart** into a dynamic, flexible new life in the Semantic Layer. +- 🗺️ We encourage you to **explore the `main` branch** of the [example project repo](https://github.com/dbt-labs/jaffle-sl-template) to see even more metrics and semantic models in action within a project fully ported to the Semantic Layer. + +## Best practices + +- ✅ **Prefer normalization** when possible to allow MetricFlow to denormalize dynamically for end users. +- ✅ Use **marts to denormalize** when needed, for instance grouping tables together into richer components, or getting measures on dimensional tables attached to a table with a time spine. +- ✅ When source data is **well normalized** you can **build semantic models on top of staging models**. +- ✅ **Prefer** computing values in **measures and metrics** when possible as opposed to in fixed marts. +- ❌ **Don't directly refactor the code you have in production**, build in parallel so you can audit the Semantic Layer output and deprecate old marts gracefully. + +## Key commands + +- 🔑 Use `dbt parse && mf validate-configs` to generate a semantic manifest and ensure it works with your data. +- 🔑 Use `mf list dimensions --metrics [metric name]` to check that you're increasing dimensionality as you progress. +- 🔑 Use `mf query [query options]` to preview the output from your metrics as you develop. + +## Next steps + +- 🗺️ Map out a clear plan for your dbt project to **incrementally adopt the Semantic Layer**. +- 🤗 Get involved in the community and ask questions, **help craft best practices**, and share your progress in building a dbt Semantic Layer. + +The dbt Semantic Layer is the biggest paradigm shift thus far in the young practice of analytics engineering. It's ready to provide value right away, but is most impactful if you move your project towards increasing normalization, and allow MetricFlow to do the denormalization for you with maximum dimensionality. + +We will be releasing more resources soon covering implementation of the Semantic Layer in dbt Cloud with various integrated BI tools. This is just the beginning, hopefully this guide has given you a path forward for building your data platform in this new era. diff --git a/website/sidebars.js b/website/sidebars.js index c09e7b784c4..f108e580695 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -869,6 +869,22 @@ const sidebarSettings = { "guides/best-practices/how-we-style/6-how-we-style-conclusion", ], }, + { + type: "category", + label: "How we build our metrics", + link: { + type: "doc", + id: "guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro", + }, + items: [ + "guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup", + "guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models", + "guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics", + "guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart", + "guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics", + "guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion", + ], + }, { type: "category", label: "Materializations best practices", @@ -884,7 +900,7 @@ const sidebarSettings = { "guides/best-practices/materializations/materializations-guide-6-examining-builds", "guides/best-practices/materializations/materializations-guide-7-conclusion", ], - }, + }, { type: "category", label: "dbt Cloud Environment best practices", diff --git a/website/static/img/guides/best-practices/semantic-layer/orders_erd.png b/website/static/img/guides/best-practices/semantic-layer/orders_erd.png new file mode 100644 index 0000000000000000000000000000000000000000..56e35256d83be35cc52b22b5700f07262716b4a3 GIT binary patch literal 1345248 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

?6;xIBA^}hthjOP|8U4`r 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⪼6RAdSgG>D>>~y_+##rtyr3yKh4c54{ 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

vvw)6)T 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

cUw7fuQa=0fD}ds~v8G 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

p;aU}#IzJO9 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

CVnW%85B;DA26+%oPPhZJic2he6%G-A5 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

F)Ckb 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

`M$ppEpZr9LZR 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%0AGct6& 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

    oYTA;NjriB2O%1qL1% z7vvRRD8KHCG5N8kW9s??m0oPA2(=$P>4Qt~O@!9E3ZNGS+ps*6Gd7P73KhnecxCc7 z%D^=##7Af$CZ5Ad@V#c4lAKu&luD z?39b(J@@OnX`GYEaYL>G`XOE^pM**c>>uko6WE3AKk5dzw#1e@^r^rkpZNJpt0Idn z*86L4D)(7=FXa7tiNZ`vKHvN+HY#)H*2<4u1v-IV7H&w zKEvJ7yz8YXEwpN2b>bU#1j~+pkCZ?_aT9q;okJ;kG-j{&!G!3yx|RboPMixOa!@x1 zIGMzuB8Yr{vK5FuDwQ8C=f{-NecaQ3pg$G39R8Sz%SOi;iFT$5ES^nTb}%Yh{s~pB zuHL8Cieyg4QQUgb#k`tT+)h1IyeQfZ{Vw?qYk~hb9B*`4 zzhPbTnNVH5D@^e0{g+H}?ibX4J2Us?zjx?&&g!rCm?JOaCStDp2^a;wzaJypRzpIq z>bAd0o-R5`gzt$KF4$@4mL=Q2#z%^e9aVa5fU$@<0(aJA8d!Q6l4R^zoAbt%UPi9^{52%_I)HgIhqF-jhRw?Su&HSA<$4U8md_qfoL87ZPp5sI{FWcrZQ ztnp0b>LM6Z!9H=voT%~GtKM{>uUD#>Vgjkv?%3BWNc#yX&>0~2C5y?Jtvd>s8vk@1 zyRs0XFg{7mRh6aSAvq5!6%y#go)StYd!wLI*7z^7Kpo0J5|@TKU0;tnXoiPb-wFxr z-=>^mA%fD;ZZ@yyj4nQbUc^6Ptj@E$G?Q@f@^&$-^L&9 ziJXvI?UMY~&OL>SR&@{Tkf4GL&TO&97R5c*U5YZb*z=l4C~#=s7!R(P_td69kTDX9biB)H5f<1 zD@9?$Fc)5RdBiGt$e5#Y+SWq>Mu7{mADLdBkn~j@bxxo9Ap5a4S!GFUDP`5Nwi$L@ zo)b`Ao=Q?aE<0}-`J^LdHT^NPTc6H=@;Y}~FIp4osh;V`KU8jE?8m_k%w))Bp+9-9 z&dKfxyuhL@mu5Ca+|8v~O z!~h{;T+9Xf=x?#_Zx?5UjmeT-8Fv92F)iVFQ-O8*4&U$yV8@X(5t2h>YS!@b<4mEI zk2K{0HtG}8SIF+kHrTTeWnX6kV&&u=lUdlH0^VdR-AS8e?deRU?gLXZ+)jA1@ulxi z>cE-hGeHW7C4i9*mxKnkdb;AMy<>UBku$o3LbyMmqjC#M>A|kCvopTkNTQ31Bl*~% zX{TUT7!^c7ST)}Ypsgp@ckVxRX)`sMjx;^m6Ca7nhsJ#Qe(3=(A>bG4UV!m@`VdT= z>uTgu__!$E=?lo|8)?Wf6An^}Y6p8l=~hcdzvZLLlCYUb{KvS52Hg%Y4l^>>3{QfS zn!mp=AuHBZl9w?`ZGS(&cYXbEKcIFz@K_Y|`<0i2zia+0=l`-VeQ)3A>@6Bg9C&`p zWX2x%7#HdWhk#0h9oS+_6ThbkYFi9Lx>Q2^SNu7qou@fN@7oDWYC6d$SmjM3X8Psv^qR6E9%J}^wDW9c? z@yz$6(dCEJR7YpX{>l9%!S#;SWJj4W-;y69-CbsMYNv}@8wGhvo{O94w^ZrxO6*q$ND_jF%=kiGg0x%)6;@+07}M&k z`wkna6vE1~u)MEd-Q2f{3oND-&8N6ksRM(gjL}w@(yAW6*BukaUqLQDdr;SaH`)x2nGKt^5eM>zb z+Lqz}FH~!CL*k2LQ5JCjv44Rj!>phAJ&iRHxSQu=#XxsEGYkF*xWL}#bN=pYyC(vY zh`>zo;&&PreAA(W;1!c&sB++9NZvDy9}_`9DfL;v(6sR*nUHt=z+%Csd5J;o zJ>^k^@s2~cmq!$dikw~$L>sSX&GJ;M1x>7S25ctD{Yt`OafSsTUrRZ?z=OWVzT0YV0S;s$>D8UL7*Kg_Qf($OiO|&L^Ew9qep)m7G zTT*repkEBa*zdbLwXLVFqRx86>Hw_mi3wDOFUj6T`y6T26S(1372u81f@;wbII>wh z3;tDpU>!LoeaWC(Wh2jg9b2Uj+zpUY#+u?s%$E*sp^7WtS>wLvGSqdaSkSxI1f#fp z5QZgU7jlzd&FCdy`=xbQ{_vnPbG)LZ$&U&_oLVjwcjOd;5=!9$5M!D$;jL82h=&X4 zVGo_JV!*p_)~9<8k~hG)5P&;h*>GcD81zGKIZ?+YxR!!K|s_$MtW+m|x4bo@Q zfYkc#tf^MccV=o~!+y*7f9G(M8-9_v)*oic|D#j<{;jeTgGD2PLkM!kr1drs!Qh3_ zEba_tHHo4I^DU3lDd9`k13&|Q7ew$X_8mjuk^wx7@d?&X^3l2LOD#Y79P*GgRXyOc zxAcn1GSg;}dnWR^O{yT474rV^DRg+UsdT`-xg4*8`a@#9 zL*vv?$NtCPezy%MP%*$0HnIGX3(q{u7Dt&T3&YDjt=Xrh@$4c{jw$6g6v=5}?o!cq zgCN}m3!&ztVw%P5aOwkm3t3DHu(Zf0}515I(R45r>EV-e3Qy|5URf7 zt|A90SG#RKp}__b0<>0Aa)L#I(m<_fE!Ao|a&fF^AeXE?VUdC~##{kuzRjqUxH2-;#$7{2?am8xldgBz-pFT@#4Xf1L8ueNL z1ljuynOZFIynka9e`gnuu)YVV+U(%H|G6N)f7^hLXt=lXnI%FbP&%BLt?`S($%Bmb zb?hfUmaON6O9WFKRd0Up+f7s|@q1~orvR=ihF&Y&Gy|d22AHfRXG6Rqk03>}?Xgr| zBig5xIgQu&x8e%<4DFs7;G68WT&7O}L-Q!LwzM4bwFMYFnG!24ld^q^Mfq9p1R6iwKW}`Jas<^isj7g1j~2cuKe=)jhwmr?=yrlI=vo zPkFF2RMNygiSWkMW*E@4>24Uk3+;N559)M>xbAAC>A_sQ?Z+;L^>Yn;j!}a1_Fl>% zX~WFy3h(61%K4bAtIx3z&K6gyZO8GBx70IkOtyxlettCueARew&KpY|{9Pha7Gn@= z6o@OINq3zVbDjD3B@SvNl^1Xx@oiU}FNGhsrHpt9dN!MdL|?T6EU z6xw_bo<)*DEXT1u1&XP~1m)a*bnITgyDnLir&TA!!9+kPCDjlLFnakYBOf6au1O|* zs;D{6uwf46?5dDxX4hA+qisE78Daj2!uH*u(4=KDUM@Kba9RnZGA8SiN@q%kwYn8R z-p%If_n*THH>S-OekciHe)+;DYXMuxreeZR^1gPAlGKBTopzQ4>lBKCic-AqvZL|$ zY>bM<%M?+(VhAfLUul)6dNeoiW)4(}F!hm!?4D7%$y`{K0nSdNew*&|aG42zbk{1s zJWppMi8f|J?(CJ`lo*~#9zhoZY``GG?=AD=;a&HPXep?};#QZ!=((zcqY69E$8*O| z#H)7DPGhA-{WCOEH!<0iGl#m<*445|kmC`IcV*@Y_&MA?%DXS3^mM;34 z{0rN3oBv^BR&V3KR8Cm}?@#i;IxPOMlfrp|!nQ&9tAaXw=+KO*VNq|=oo32vmwE^H zItG`2liUq(wc6Ncp{tddBEbyogei3*yYf|FU+3$xQw*}2eVhnUKtK>QAwZ?>PUHBK zU)4C0s1TYdkv7mA6cVi@%21m(DW5~*r++M;^*&pX029*M1E7=WOC!4%c+Nzf%@-l& z@|zVkZ^RE5&x&X|hmrxTf=$ESC10#BG%Dz*!bZHfMdt#cHEv||u)tFsDaS5f`OqaOXt))z=`s`9h>gpHeF-T^ zDrgaw#!R~@yungS7K50L;bVpOApC+L(x z@>OKsFgCL+bO(sq)pX?ZxGP@V`3}>VE=R_FH4K8`hUOb0(zh9<*!ib4gfnYtIBSu2 zpY!erxY%S@6YaVU>=Vn&Xv^JguA8KXDqqJajOJCz-0ey7;inxpl1Lvz>=d(L@c6Zz z&j}?W^!shf<2ew9p*dOutv(fVtV3|NQ=wu`Y4P;j&kLrICUcN$mx}XbCX=?(?Bb&G zCdTOO?Vq@IZaFvOI_h&38R{Wekd*y;$60?1wtTYJD|4(nUiCnNPVY_GN&~jcFKeWi zDiOETwBK*kzD-n`-5YA>ek;8iF|msFf407Jqps%gTs|P-rMsL5LYOkskuV-!#;g;P zf6og4bt=4!iUsflul-Q%lfQBD|NV(0tlOWNg#(ENj5mX&I;?^}C&z!%9!S;@K1GDA zwb1Bh@{+Ps8I9)M-6LxJ%Zgyv!7S`14p~dl%7kk1K;gp_D%+9# z%R-CS=GEuKNQ9&m5kDIRGExOf^~0oY{-LY{;Oz2r7k8uX{*mx~pq49lpaNRRr%1840Br zU6VaOS-gYNg{*PIq*64W>K1aWKjO1_^!D>Cz26%S?}ohZn=$C_57w)JG$mM~R@cD{ zDa29jBltHLUqz_7$#;w-M@t1roXV?uQ*<&4sSNsliIvShQHYs;pkr-Ado*|V_83*M z&^>?@1GqnyI=n1FsA5n>rlV)fiO|DGI#=6q_!GhLJ;_NZn9-fW9fsWHSLLR ze*VDyx@NpI^8a&(i;uII*5c?ur?7ZJsR+h?tugnl%cWUrzjdH_8gc@lu~S0M25(GzUU%YSJV zRtm1`$wrXe9fRcy*-;iN^6b^)KF$mrDyp)!QLg{UB8{s6Fu|V=pXdG;zrUUob6y?z?*Fls(kuxG5E4MA>cj%Ay@fRsko=4Y@2&3o*0$k)YE5ar(leF1uUzD zZ0^-fN0KmCU)XKN(8H{oezIMZ9=>dvD+zPdwD0n+6D>D(ESa@@L}CmpKU-y8k-%H> zd0O@Dp8j-X`#I2=d>QZ9oB`#~v7%{NR&?e^g!M)|WQ;BW*y@eK18@mXB1~or@>l4P zzBIa8dW7S$X2Isj{)sF1LB0KlQY6>iPP*&+h~r zIsJv8=jrb!S(g}t#dS`CTjp{|PmF=Ckl;5mx%_zX<0lnJg0zz{S~a*&_^F2M7?^gO z;B&7?uxe=xi*4FP3wHTq8Ial792FdwR(BkUe(T_#$B83+tZ!N=x_w6DCXDx-m#zFi zHFcSijmf&=W?ruJ%1Z$kur8A+gK27eJRxIyyQ!P)a94md~x)1Nd91RqG*+V89 zla3ve-lQbUS(E6T*OCzV;*-joL9{v+>fM9022MsDGF`ko%``WxOxjuwfEE78n8%FT zCiuS_jIJ+DuM3-z?Dqi)Mr%jDKMv?41+RM3)m7@(&=GSzCS>G{QaJxz*tKZR*?_-% zPt3z(VVpNy0H0s{{F*dqy@Q%syY~M_g5QGqlN^jCcf)GL#MWwe0QUXz0=nxR;APR&Ym5vkz5)Lg8klwyG=l6T( z^}I9Z`7bz(Gwkep@3q!-U7w|r&A8av$Rkh^b~_BKIP$<^HoO7S+gXDTo0;E>I)-5z z+$!AWGLk~fv=6>rth?_N)rE{3(2R;)Kk_%d_b-t8x#>-4I7=3Ec-_Fv26*ldwhDw?53(N>G4gs%ZG#KmQ#CG>wG@2r9~3e?8v+H9v2! zr%`rDoL}1xzA+Q)KYkHfe9Y7Cs6ZmT)LDse%B}Bka{qBIq9AYg;s?zBpj-ksDcX`bTBNd1QOyhq(EQ3Wt-VoPTI4dNQB(Ic7+XVSEy> z>MUUwLEr<2^p;s9KdSrqWsUaimY)&UqBECise)>Hu=k1GA)*`EVW(+}f|G_0AU8m5W zW?n{^-Ca7X@TZh`T3v>No-~TQXgK&b=DuCr;ko$PC%rgvAKf!k6(GM__%*d~8H6RU zEZfx2^WJ@Hh>=u?#`iH2YmH;i^B%t}9LlyjH4;8KxhOnXu<>L?U92#`c**Ae%WbsJ zOXCgrxgSuhFy=82mUa6frKPRg`$(saelJ}bvJTIIc{SN3JjQM=?mjnyZ!6vJKecdZ5|oDP?869EU263b-t z1?3EJPOz(%|LNhOjXaK=wJdrngZQuYe})`T9&kPZ^@{&m3rU7(U6y3vVFSQ5okS%y z%{DqUMuFC0JzwJ&cIhAUFlh*axyJ5YkkbsbFk|!l?re3Q&vUdzHX}XT$vd6Je^IH; zSkN*;`;lm~y{$&eoxqYoLt%lUCOhWhYr;i*gP@a|uEG2eBXS+7gVtAj*#d#BDScU-BfbqxGtyJ)5{^#oqZz}qt-kh(_e*14Iddt4NE zHaI|T7=hkJ`UlO8wIQ`r~ z`tS21)C*u~!rD7rdu}-pILL_Gu?{`&z-s$2BPgugQE;+NqLqiZ=K`0G|P6i z0zq;?{qg}XV}SPs!?xYH=X%Vs%IE0h^nP4#wH8f@+?GctTr@bUjq)knl;X@cI-xDu zl3=FlB}|xGJ@G9iUqnPrY$lig%iIQOL!Nt3U8z;F$&&ZnC{G6-r*nh>)$)iR!+da4qsKDp+2u`b-8!BeNjAGc)Q!?xG z?Gu()k1pB2S5VBDIwXsiuJUNyO51&4nzl%NzZ8wW7H4eWBua5Ysa}~~LvfJ<@=zru zhj|Nd>K6s8=^~qkk~S4$xf16G@I;*GMlD%qDVKr?YY{7x(2X+1TLzJ;BZ1U6l{+K6 z2Q`1h_CY@{2Qq>pDTr|~qyOK}#2-gzLL<3e`@futSAyV7+&*_*r`MKSPyJOT}vL^6o3DHoh!Jd=F%La=p1XyV%{DK`@{5H(yZ>o&?7 zJh@>rtDV zc=oF(8i`8M@0?@yMM$eyQ$JSBpA=D64g9qwS1)y`sX*@B;IYTgOplH!6rw)OfRNH#r41-)9CSXXd?&y6wl%A zAtkteJL_;exE5S@hksO}r1X!5D_g<)ytOkC;g64h(|k#P>rTL<1f2&=NRg>XvA=GF zn*y7-{yCxOMLJl)+ejTbHmNQ-7;TUBdADJFcPj`bwhN+CmajKLP8hcuCZhyU#&nwK z<#Y}_)${Y~aJS^U1lK2s)Qco6U11u{y!7t0`A`%|KeL(Ze*b5k|AYoG*c9-8iSUH2 z7ilvRmU+1;AI|w^_s|=pTn7F1(pm2%m;|OD(w{wasub7XwE(T0j&@uwL&a ze&c283B6zad++z=KN9oLdtpxxC6%k`ZXXXGq}9Mp)-dHy}}#UrRSSF zDC&0!)An=B$;mhSGKVI5%J5WaXpqVr#mlHLy~2EAum za;5w+5mLrAc092W=o62^~q)6l;?z zLk$c&B_r&46;nut;_MxKbE&3(iwt2Exq(h59HOhv%viGGl6u5=aQEK9|bs!VYH(fBg5=IjPevW`aQ3xvMuz$}E*X%d#g~t{@E6~x5*oI}w z406it(;~*0)c7A8W!J_FxQyA=W9ZE0Ix2DHJOiz!OjGU}!N8_L;j&9?wbzq-85C47 zR~&W5HIgKA?p#58D%l=CG>cB4&#;1&x@YVyQ`Imt|9= z0*<%SLTx-Y^}g=;9w+BtmxUzYf8@<`i_cp0Dv$&2+B>;%TZsFhs7npn4Qo%J1sR7C z-J5}(+;|l<(A0h@C$WrQe6idA#K5R+oGQA>Gbk{is1clO=1!GL9C8lm*H$Jq&XVi0 z_)+%zxf_o^0L5Vyg3v1wf?K^Zh-t(=#uk~}&;axhRuXcMf z6^sf0y>AHM0*b@ljj2V8)ZbNxe|{D`z6=CvI;V&-$)wM84`m-lREuXL%*|d@>PhEd zz-*O7r-=wN8S>Pol?*ePd**3vNd$saSK9ssR4kDXn&(=U?h+ommro zS9TMgRCvlxGH*R?GmeNp1A?sKdg^an3;lgW2OK=}p{fVqP$HbI*^Jt_ggs|`g4=_C zb@bJo0QWzeqm!k)&jmbeH+3e{l+v>qp102t%xqeK>d%PsA9*Yn=KoMQs^K z&ATL#3r9Bxg79sp4>K!f^8{gb{ zt9;UYRM4bL>8`r1Ui)*}Wd}n+)lIAFM!##Ys0N(9k@>Goa0VuXbfWkjJ3w?SMcY21 z#=3WM@AHs=hoBr^T*zY>Q`FzSaM|UL`Iuy^x^|+5DZ*TjMfLgppbw{3<@8dO|9~sf zA4QSQ1=<5LX(*s|Qoy6UeNBoSQ)89BBZyHNTyvia_KRH)0eu(b(~qSw{KU}sD;U&P z(R2izJApSl{NBEDm(&^P)z_C&FSWTF-ldZ{8lLGzA|)WmCGs8IhQhQce(HBDv?vI+ zc@_)z{D7+LKwiVi5QH_#-Yh>{SeESrp`u79X}r!TLP6>ln?LWa zNk-u=G@Pr@%?J!z6>|eo3-*--^lElvkSwJR>6D`N_aulKwAgOod;oTwic1@-~zQ7(|;sz(iYc; z-bqGkwS?<<+eKSUl#MBmKa(RMR!yRVlayfPMo~mt%=E!Ka!f>kH;cq+9$xCX<@n!U z02w?XUEptrF@JwSC#`-KEuCcXy*k27*gWh4O40)aK4szG|IRva#%u9mL7=mlb;ALO*ae zn=Bd9HeomV$#g8&Zn?E0v$__xEKs=)8@lJ8j>U&Fe(i&;`8ahLbIzwkO1*CA4{-4R zlxpWjHec6U*!jcutjz@Io~uQq^45_Bt&gG+>ID&MrJxCjHBlee`&Bu&omRtl;IJw! z)ZgQYm`TO2={d0BN>}T9Qr?dk4D}hvCi*+P!EK|~#n;8p5O{rj26yZlPC<|I*9lIcZV*Sw`OY0VN1g2ASx;&6IfC2f7FHe#DE|t{jRWL><(TZ2n>=mVT*b(;H z6F%$An>#!a{yBsIHoRHqaZHqSaBe5R>xohAAFCChA}lIg(`(Roh@IfD(>PalZ*E6D z>Z^`{k~#lI9MQ(8C;F-QvhciFJn`Kub}((axJ`wUu@gx3VmyR27y^8T7m&45v{_t} zXJR6Xd*4@=1-5_TNO8Ue{4iQpyOuFpP@oQr9w* zVfke&GNO51uJsmMP>Z7cZl{;p>pz$#Or-JBiiwP&PZ1ybiv`;9KB>qqyBv_~yJ+8a z*KEg%#|W5V?|{q7iUaL+{mi~ZF8EosPPTYhxosXuAYNNtz#8={8di>f;GI~IOn71m;owF5++WvX|spj zPxWNoRy_oTrPDaFOs-39KTu)k>oHRKJQc(7sF%n4@CH8fyyQ=K&kONEsSN&-PIUf+ zQ#s?ZATez)EZL3vrv;Qy!N1Ao^F}ef(!v0abWy5;D17!ab5p9ZOLWcHXmfF>z2nGq zX+dd`YUWSba8uMt^?C$@zNfG&q59YLH&aSBye!K7H5y{EPzSH>v!8re?< zBee52wAV|rPMKAq?=APO2PKovll^&mcLl!wTg^!P9QTYOCL#U7t3D#dt_Qz_ox-P#3AutcpE=x z^lpFreJBd)bEg!d0DFSZREgoo{0?jQsGukvI*KJ&Ri~nW&Va31Br`uo3A34x%;h=> zc8*ns{t~k^KVwEl>h%*_%oWxUFtk2~k#RR;CN|m1p<^a#+)r{t=Vo}|Nzn^9NK7Fu zKRuLuR~biCcgMN>$2EF(J_xqE*z$ZFEO4UK!#A>Zf5`c(5}@If%N}-8J^Qc8AM;gl z*;RO2zom~xOI5t<;KBFsvuhJ_1mdtTAs+%6+sJc=xqID@-~5>}r~F-a7g=f@7MfE@>z3G&I>_J{)drvZM{JgEZ-nZHYPV#I@lyMCUxgx$py^40qQuUxiwfb)g zQ`$H5`uso-m`YDuJb{+~HcWcTP_K2|wRu`FpkrY|`vhA@9~J4xcpTpL%6Zjov5mCmdINd((;hl?yG}d31b7PH=>*3^&se1=(>8Gx^~2w zv$S*ZdctRxR-cC#g2C5O)FBZyuFCSuy$y$a%tETCK<;9z-CN|_zk=~`8%G2k?SS{f zzR_JyBP_=F!{E3eq$^OwC7SF^CS^E5&#w`2dSwXLWx*Jw^=EzemffA-xsy_|@+@K@^uk1jRuRMl!g`#Qv+KD4)xupv>idWv%$p)D_zfGM;CU)Z_}0qn6P+VZ zK$*0iwj7=3*(N#Z4rDcGc?KueGvh~;Z(+#ZDtp=u2>QXUCH>X4*?G&0_5~4k?R`RNsk^^NXFin+@5mUsNdmcchXkoEyd8w z;yP$zEV%`1m;gU;I53k9HU2cULlxfw)Zql(1PeGElPnJn?EW$8_`MP`2nE7|fgq#h z%YS^$zgzQ?Kkf>YF)2$kahnu(uCNkpc|fxdGJrpafS@pDU`RF7h>*224u=Q8qD_P3 zvJDV#5o9FGZuEOb&nT#Vc|K-rO>oS1m3Zl}?}jfmVl2M+81qM8s^HVb!HXoB=BtI# z94LXTF4y8B*lv+j8eREO5Y>Ger<%2>llYN*!1SqBXToG5mO*e5KStO%C1n4-liO~& zNKTr!&9Sd*LW6o^K#Pjwdy3e=(?6_IsO)jqcmUo|cIk#5rnZrdQsL*GI}5Wr)F_Nc z#Q|V3Xtc`vhl7=6I`9KqGlA}4c>ktnO;0+!TG}})L2Em}T5JJIJ%2Dml&49||8QuY z-mL?A+iwH65aJPLsQ}50c**+xx$pDv+z3{RhXht(g}YUs;@ zx^>-!D%DL$uRo|~$Jr5@)9=K~L1rIXx(2BrIiXV^Fke@yA8Sli-0n`P<{$cUKjlkR z-Ovne1QnIa+b(L7=F-%mzzkJa`0T}vbMf#JZ@Xl?z3MooKUSFiL~$+UuZ9fVtBJj& zA2d8}d~E+K4koh;W${g*TRF5?yuf})_*hq`bf|R#XFpSa^|!C{pT*KJQ`rwsVwb^x zftLlGq|XDCq2qZGA#$Ledv#jMSXgAM1}^|VM*K~x!4_@I%=I%6gQ9}rEL9$1G|zG<69T*P(WXbTN1V_C^p zGw`-ZH0b>b56;7dJS^Rqec+|5GMy3@&g}ooNCV6xu9j)R%CJV{khC>HqI<%gz5=p# z<7!|!16OHxq+)n-`BCLG6-!X7FT~1v2I+4`aS`)_jSp&Yk_^TCNeJqd8eG9Fyw_1Xk%Ydytk2%MT z1w*>&_$gHWd!W8lyDiHHmB$WIFj~63W4e9$^jiw|;74_+w`EcmdU?F!eu$A{XQ){i zBFtHlU{4GbK(&n8amlGnmjSZCPT0g+2mS#iH_W5p?Y!Wu8r9$#*P@OEV0(5i7#&gh zhMde|jr>IBA2F8=>_y55&%~s+%)Ou0L2dxyu5XW^T6w6PG{!`8aH1P5Xh+GH=SP3k z<3=$Hx2b@6!*oT#<*0QX4Qh1_=M&ldjblEr8D$6bvp`X&PQk^l%BEr_4c$TD)tJiF zK4yLh--S`K`qM}I*wA*3lep?9+p>WYcZY_?m2$c6`q{lP5POrj(=knvQJoDoO%oeJ zHX*16Xl@Yese~miGny_h!&MPORX?*g()?z(DUsU;_on@8dGlvY4@#uQw?9ao^zfmG zqK58e>Gp<~f02JioZN2inQhuyrGR1SCcko%-j5n)>rCR-WYWI$KX2{dXQaN3N7#Ty z!dmC=y6HdqiH~&R%y;QxfrOBckh+_sd}PRG)5!2mxZHLl-C8mTv`l#M~rvJ3ZP-J$ChOoD$OGf{uoz!GVjUo=Wm*8fy0${!!?`z$+e*Pu+2Bg?rTPyesPS5rHN}W-^-|?XPGe`QMbO);3I2y`cpBN~BtH>*hv{GiL zSu@xB#)Qi*Y!y7#X0o*jB%Bkn>PA0vV)L}nj(JVH_zFgC4<#sA7Tjc#QV7R=l$|&P zcDT%Hc!QqwC-(^flk{Q9*cX*$2lZ_32OZ(aFH zO;+mtynMVk%6KMK_Mm`EJW`;JYXM2~F!y18whWYW>bcO8)VgB!S#&a@mB@!Svd)6xabMG}(pJ==E+TXIFOAi$z zI@w_h?L@Pa2+NOLf;EHh?%e2=b_nu31jcuETh+BO`hbJ&S$PSo#`WRdrDK60TNwlVu@oM~la4RNfCi zs>CX1!F%(tcwb>wy^5r0(u*F9arnj7XcGmjC@Z0T#jNtmH++ z8(&O-puxfKE>DNMmHSfCBzghsf}?QSiFVSS58*f%z5qkkC?2rBite_rkf2wiHuYbq zv0zKPiY`y&2x$iSgDaTxd^fr>v!ks=Hkz|vriT__h6n1~r!zt&OkEkIoK`!PgNjO7 z;s(t!<>pfhwLt)Z<9>XR&DjVLDlHI7VWOxoAf;80l;ldHlnR>n$MtnAWH%yE=9nXW zIBdb!w8l<&Y@PxHu&^Ew8TLzeAvsh6_9nmH`q=HLsclSHQb$l-g-&8=n^U3}t5+B^ zUVdLf1;1iSEUx(yu8j9Ocw+FM6GA6UW_-slxt2Wf9tv-)RW=Qcnh)w98~wGnG^QJq zXH*`e54D4#6ohu|P#xmzO3h0fmai8utr_cAH&llEz3u?}h!c#Wy52Ds%cfJA+O>Z0 zHlTDNJJb|;ZSw52Q<4|jy>p~s%o|CZ^R_$JH(?SUj5AOLZ}T zHhom-Js~vT?P=?jchnz4*EQu-Hza1(NC$JOHR$a%QxC`TEtvDoAW98m*X#!mw4BXMc13w-1lVRM^v`TW#Q zH)B|VdVY+&&Pv&%#mLsn8Ozy^@vk#{$(};tulajB*9z52YR?O88c(;hg;)9@yS4(8 zbQSywW#Llju2O+qH}H-_)kHF$(#;b-J*2gHuq(@ZxlU0-yJ7#lw7E!;}c zVPy*uvc1Gy-RJ8f0ne^V>;ZmiOVp=EtSUH6a*kBJm|ZidOBy_)p99;!Mu%*j8*AV< zH%`$pu!*EJp4aej8mBL9^)lMT~LS(N_VE}o%rO`OPT_?h%RY*^o z9h-c{x!|h~&l?SM@ROIMl#X&Ac^~*C=G^mojq~~2a;r)TiGQ|R_DBHII#5rmL{QU4QrbKuURZy9_I@M30C)#->u zzp=4##2yyOwQl(DvB8V|D!+6Hc&VLdNGYV+b# zR@AAtt@pi^hu7W)BZK5w6NUV5pK2vEy7AgrWWCzmM2%4VM;niHF7ajmdjc%S25S%i zf*7d^e2497A6edj)PY9Wc!2B&bbt^;k!#0v1()$3&kLf&ODnr_SQct~`)YZ?|2y3x z_;`C{Yg_PxGTF7AMOcInBWwGh9cdnY6guXgZMBqp)_N}(5rIMgFm2hez~r+UW>lq? zyO)cA_*u&v{=y-bGYn^9Ol>(Al99UruqY)w)5uhsZvyB*qy81fQpouyu^lLG1l4z* zcl=^@C-*?(`D0h_F8~O^8%`h%FCX+Y1@|fOZbdBo{QWTK{b*p}_#^gcz&I{4^-2^p zzw|j_PmbyzR+jyi3dCwls2)0io~CFX&hOZ4=DTqaNee!>_Y&m?h%m+W;*@r&vtPSQ zgB3|uo0HH|U7?B_5lfte0%1l;xdV`Pe{5K*1r}O#srR%{-sUH8|gWpci zL;!yv-}*L#1v4f^!uh*SNX$D;1tX}*UQffz6a71KXFYPFY06#r=+|zdLSyYeR~21i zylZ@GJw#C7{50Rn>p>ejIkQSU-*BI2hbkY~Z`OyCgSRvwu?8Qgosrtkf_Hv0QZ`=4K->`_(3@L#JU0JrdD z{_3DzVD?x*`I(z&%S~_{BCF+?Tg(o1v~#qt%G)+{>&AO}+bRhy!|fPdLw-oB!xmpu zws;}lRwgRFyb;B)P{yOtegx4Ks(toAOfbcwyEef7nU3}c){c8gcgy!~j$J&2WG&dg zkkuT&XYfo<))9Wqqou%Gm9T;7eWX0yk zpR4=GL@vTws&w}KM17ThugtNxkj(|ZZ9%!kd1q!$fhysA+J>^>>YRlwr)%`koN`L& z(}I99B|KyBh5KYN!|BpadA!%!`!`$r`N939JapzNXmE8U@)xi!*H7~V&n_RZ%O5Vr z9@@SREw2M6l;8WQ5WKoItMW_V(C`JGJ3m#S?xfF1&3NPa-rR&c*Q$U~Bm$=<38!SasQgEuo=V<3jTb z9mwl~VV$G426&YuV7^YTjqQ{===JLtlrIc4oO_2p8!uq73|-oOKZu13Gmz&bO#ndz zt$`g`|Eegz^JwqD*h_b8t@=KiBhp{x&1)#%8&*$VLlb-bRr>(dm5M z3)#^Y`rgmlddA;Io>db4uqm^+Ys{V|!mV~a;+*b^ht%EU{izef@+!!o-!=>@^k$>>bPu-o2o@@OvY*hZzCmE#lr60 z%spx}O$JkHd#&bA19Z-WcmFcuqSCnq_DUSUz{0R{Abl`$fFhDmBm=H@fv8;Qv{08BT&d$5lRf2t8Xne)(3;@@t5UQTc}R6m6I zH~rghfPa@4ZnkR=x$L26W7PT#fU6hj?jbG%;o$b4Y^9jL&P}(-2sc}0q%rJD%WGT* z2Y}e)C#-|uc4Af#c}75yTc%1WbDCie6lFTcf1fMA(5Nz{u3Wz*mUUB|Th%%U}JlV}7A(Qv_9{S6*GhvI6utxD_^8 znt@kEX~1gYyWED93X6Z6Is2Nyam^z592qSUQN~1g+V9J(l^G;-%(aA&k1yj=NZ*f$ zGKp7u6#6bD_?NQDP~V>HEaTzaSgdkJc3;Z&6H?x+#iB-We5x=e%&ZvGeoS_9*h^Lu zUt9Q$*tAs<>{(=J)%TC*%#Ru-@OtQUyc}n{S}k@K8)|hwJ`B=$H}paQmw=be!Z@PZsK5%YrEKV-b|g7s>P zx9n!s@he5ZBX(=GTbS z44Je$@^tlQTqH?-wM>#8>#_VJ_O1> z>m$GE%ne^M*j%7`ZP&Fu`SWVc%X+OzoAr@&3?|e#zb}BIr_hubH;9c!uO7(BmV?<) zEr-l3&;=l0p*r3J%bD9n;SZ>d?Dj9`tMPk9HT8+E1#2F?JFAPNppA-(A5xS~a4uaUuOXYb69IUzDt3wa99 z4lr}o#)5%-@@xz)<@&iZY$n1Y)=|wf_ED};o`575Zjx~bd?lywimDi;@=YdzE3s1} zVm*q{7OnU6Bs&B{YA#eMxG_jPNR@TLoJ@h4UBSua#g(xv>ARIlqN8 z7bEY_w1F~({@xHOBYMSA6~b{nvnL$cOxE_aB#W#f`om1NOPNBjiukmG#a08==fQd}>olBGSk%9FTG z@x=+MpdYo96%`WrZ?)_she?#)iPstkygGGYdPBOb>@{f^|#ZJX~R|lPP85#C1ST5E?#^Zw6Q4fT3mb9hHT5@%TomT?Kpr1`9R7k6^ z=0JG^S6v(OrxuXj%F;BoUlOUG>gUUC{k{DkZ zBJF@@y~@e+r{jYw)S_T-f-w>n4X5y`9!lqGHD~Q`;|8LEoz&^(+re9w$i3ySV0)E3 z4gcRDtGpRUu}qaeEkpiw%9Q-kU+A&MN?zxRttcNdf*r#M^2Skb9E|nCa&+IYjuY1#cWvVQ>L0}x>)hRXywA&zeU_WG$!^S20%$1MKsdA3Kc>&LZ#mR9qs-j+n( zM$`zf=sCjN4$Op;i6lMA0$r#VmpQ5hpK2!-wt7dIWgB3jFLc$)Yka(fBLEH<7ZB+GS4jlqiX#q~HsyE}B+r_;`dm5x zNY@&XBpe>kPi%L!p2C2BR673!P?6RjWha{Jvg3Nn^Fgzq609MV;FZf#nv|+Y6^| z^rN)oT3eLqP+Dzmn!4${N^QNmo%QCWp{|@0qbiu(Fi1Z0SRlY?ncg~40TDkB9zjusr#>aqRVmetj7Za# zC;r|=g3Ksa9-)6;` zPsMI7QCq#EbmB^|-@T)2G#mH*l2nJb%7MB1d-xp{SF_2_6`j?(!C)2UY~mhq+%3W6 zQSZ*@3aw@VmNn_Yph>z6KA;feY`)an|BD<3a%D$%zD0Y3&A3OS_1M4&>00`xGX@W9Qo|hMF7n>zjKDRtlFqm=zywu|oLPOo20S{}Yg&YCm`-~i) zc%&45ztF!FPZ#-JlS;2CMHIZBHWMSu4gwuv0d@%=SvY^K=I0`pm*}Rp#30+HnZ_^(hXPxOVec+SRj1+nRz%t91^aK+V&o40R7Lniu!Es$RXmH- zImFBC_IMX}sbf(_-#O>bb9!Jl^`hWj(X@_+kdDX?P)I4cC7>_Og*TQ%@|~!P%)sSU z(|A|PSlg&U1G0})kqmUMun(}c^0l{xq`#Q{Qj!uc-0w;8kAP>`RU8JuM2e=O)Nq=5 z$fBn0DT*r8mWi1;!gsmWLNlI;qTK#-T2;1+z`xK7V-D-7|uoM_4QaabG?#fvj%f6mu<^ zpX7y2^pvlBJw#xVZkx^J2_xiU!Eh9nG)O}nb7@$B`5XFMES+BrdS8!R*?M#WCnVr_s2H$Gemve{?AEhblo0~wN{9c#svj|o$^QPFnj`K6xdkU?2y}^sQ@^m9tfO1WWIPu9b$hlHy z`{R?pYLtT(>)NhXv~x|(Lh?sCPlK6DYqf}U4kRxk6@-TYjXoQ*nGF{8&;}Zt+qy_6 z3&Hk^LuH-?LtSXa#K5{|5#Nm`<@t|D@UzbjH-p+YgF6Qxc7NQ_&K(}9i070h{77<6 zS`bONePOd(TcOMAd@QJb&%3cX+xNVH&7gsF%*32IYeOA9td$)MDj4J*M7SoeAM;jq zdF0;vdI=aPdi);se)TIUzlT_c7ah9q#2|%>H*fvQ&d1B3v;2B-^F>MvRZg%WF9U_Q z+VlhdUQ2em9z~ncTS_i93qVDFJQUjhq~ax9qJ7ths)#-tdks~z*&jV7HOUQjXYrSj zW_!!Lro>s>$L0RS) zPyYt&)XN+pe-prt(2+E!&DG$r6{QQ0J^n4Y3HWVbygCxvd0O`OX~{o7`(8cH*=#4w zx-dwHr@s}-HhpwDEQLrB1lC(AMMFz*Hui-b>ER)@InfO!y^lDjYu&_wRMS#w!ITM3N0SrQ{?G}*m@N(o+7n6!E7tf++nklM4LtB>l#Wn0pV>GAAR$5 zH%yHMp&1&ezgpcXlg*ocL^q1`OgZDMyN9XQwIFJiBu(RT9tj^~pZc5~PeVVpUNyL| zmWrZn_U%QOm6x057$}tR^))M+i5YMK&x4n{NM=R*f^WJDWN7VgnoD;e^NibS#(H|{ zvhceHJ?Ay(OxA$11su*^$6OuHDB29ZAKX*!ipEyeI6avqeZUpkO8;7$8>_25uTj)K zHIZJ^Sg zSmaFv$cupcL_6``zvAxCQ046@(Np8$mNC88%J(Y>%`$2n>x;u*kt#Kh^ddlg!Eozbew|RCoFw z$%CA2z-usP-Mjjks{e0pA!VDR4JJQ-_&Wdoz5buiv9~WDMiQ&4s)#zQ7cB$K;tg#Q z#J-P$`h@YcYcv{m^cHyn3L!7GF}aTT0y;gm>x72q?!qsW{$T&6eMJ7M23rKNU`Amx#rjHn#}2&^SG}B!5`T zQwC0Xf71G=soZkX`bAv$zWy^347l+5SpFh=!peIdu!D^OZe4o<@`X=U`@L9e1Z-7x z{;&&}x&Q0MoH@BZe*vM6`hMgoQZRj-qz}cCF-Xb)c$TV=CqKxoUg{qPt&qv*^~I>B ziVC6Cz*;BkZqeiY(La*XH#^hwHgZAu878J|h!g=cUbEdSl~`NimT3Rc~(1dxXABo_;qI z54XsA$=7GcEHV=h$&Z-zIs~hSkayXPr7rSeo|08^f2Ctzox<%YV=M+}$$#m`pCCxp zs;G3x*Fg=`)Q%wAYWUIloo(a$V77p#<*vP@Ug?s0|2F-9yZ|LI=|1t3i7NRSU^oGt zsm2_Ij^Sg3Qs3Z+{BNjQSxw&FPhSFp3Tn>Sa1O%=4&Um#L)OCrR9Y^U8?{|J=78tw@^sQmRGJgf>>CCfR@Zzw>-?JRW?`0n9}W$eheeTE{VTs@ z!fW9lG zqJ$e*+Yo8z78rC>B^>Rm@dvywtG_YYX^_$7l#g0EAe;~@y*Tmyw~p`kl-WlXL9hy! zM1#fqi;%W!qgPQ}9aq8po>P3x}LIU*Q~zQ2Mz zw0&R~;#O48&_1DNj39@Y(-D#X*>(J+*jDBMRcLG8Z&;MJ4ycf?Re0(=9xo$JO95OGT3)ycf1@7 zk6`YAZOTLUp#bdh9JZ}5W)ub8kTBx%=TKDzC!uXUOIP9GqUlgZO(qXXksl_~Z!V4> zK5qeW%!=1T&W8x?>z=6~a&tEQue?(+ zjMg)|mZnZCIhyjoNfueMU$_)ZAy1bnMH^f+e7)&T?+0psAYG)`Zs&R@T{0Y6IIFfa zZ79H9SgRR8HGa-n<5+wGh>tis=8B#gcIc&=lq*3gUvq;YMn(0g92_~oFf>{hH;=St z-W<5Mte)|`LI`&VKjYGXT}9p#u&o1*I)V-K{C3C2^Hki9ErrF?>C+F;%1`ZCd%s;- zp3jhK-zRhtqK)Nnd{P%MmW9xC5GxP&LdmC0Wi0EuNOT1532v!Ji=d-+?6(Q%k_{{H zGz?9toXjj4-e0BXNBjlwIy$q&w0yk zh?y#(olHyT&88S#CRO;9M&DCG`!wN0gdgUQR@qWiqNfY|71Y~nk(rVbrCOBt!F{chr4C{Ef zK5|2zBKRJ8xwScF*nw}s&j6qDE&Gf`%lAvu>t~$2 zKZbrvt1J-nnzY%~nk*i>=4)T2)ATzKY6Z)1w8v1AmC=~?g5Re5E*p)G@`~f?fl7Fn zt)9kRrfJCwpQ8!=; z)$x(uHP;!cUz?Q&fJI-%^WkL2A?)Sv+cSMbHBj=M3#QTvUt8W`lwPXO3tstDTY8Fh zdJUgy_y;0F3@Px{hQG01T!SYOM^Z&eO>SI`Vz*15dJkSD8F;9HZ1vB{^>Ojd(z0h} zsQEtKSjX90(bqs>w+*pOU)4|$AUKlE5ppJWU)Dn))^KrK-7~ga8Zq+4G>{D*STkrK zy89hCQuCO6V*YpBo$@tOFAI_|;b%Gev z%xlqD5tMzxH)@?`i_&EDJdh$t)t@tQWxIfxT^3Z(?@UGY?R{5Xn(`}%rz&YK4J6|R zD1r_u(cxyWSy$j^wMZdbTu3e?54CH-d7v*dxuk4CwnWsb429#A-moUqRmzKVY zy&P{m%3dyE#BiW`amTFJ zW0|=i4l%bopMG^y$S3$jWVj*4J3-<8idn@(@bBvJmN?T}U?IOz884~!vXV((il&kD zQ{VP&^jrSpJu`vn)#56sggcZO8#hD>0}Fm2^u>?!(%togU>+)C%r)PXuc#iaHkS(kl-wj~sax<1@2{@QcOcdt6mW&>6uDStSx#*Vrx?Z%StlRB z0jnjm8+l78-ZoIU^v+NCrqp_UiIzUeZV}uFIK407|BtWl4rhDs|32-}Q=BfVw3Hg9 z)G=$sY}F_=Y6MZEgyt?v1&x@c1F>pTByEj|Jxax<_R6WPW)W&MDN4kAKJMpve!up< zu5Y87gb`ku=WJyHkAsT8*q+cugO(%h|6?NXmizOq%p0SpzsRglJ$)ZGR7ycsH{M&0T{{zdy; z%k}k0u-}LfgBcm!g$jFweKKv2oRB$Ey+r2tar?B5>P1_}mW0qi0}{N><3Vf0rt0eH zUF!15hK~?Maso1Fh0^C5D7T2Dpr)l)CJw*YP4BHD)N9am#Nl$U@_7|Q-5Hwx%%kJ{ zzL7!LkvdSuNqs^1?;C-$w~pFDzI-+Q#~(x^1C}Kih$Oo%aa`bd1+a{YWc+SxRbI#K z*p!=Al`Kt!-D$mJP=0%<#*3A4t=q0iX3#0qGxz(r;H<;^TSq&xh{Kn$0z9T5N{;0* zJgxzZ^OldY?&l54s^i<q5Ry=zt0gI%4$z`EG*kvPHafO z!E6D4LcGdfG|e#D?3ihkSU@T7L+&OATO*NI7U3T)RSKQ&Q{2d-KnZ+TNZ7IGA#y1LcZStYvTznnFj$GCa7_2ZS7gn#U0{n+8ydBX4W9^F+gtW_ zRo0CWt4YhcX|sIocu`d2)%KFI)vYR!>HZMbHPG9;MOtQ_Ygg27c|CWIWFh?tB++FW z`L8cQERd(45&`NH3gz!-k~V5tO~{m)RD!91iT8Hm?zGdFL zJY`Bfx0&vUGoAN2_vp*sMEYM93Mh0@I)`|&OHm2eO&L)=q8qzMhLs>_RBG2=O4V=X zt_Ax6ax~ZvpkYSE0q@39-)LQv&nGMLrQDU2YxdM85oSwbZDz{?({+}Gixp31H^376 z-|GRqvQE+BcIpse{gOZs$j60|5QrstBQrzLPD`V>Hw5-Bfu^u+Lwff20z@y!J2D*VLeB*7-s|*V-H>5q)p0Q2ZS$Enk(TcfvOa0ft zoSz@-%z!H8&y+H{kn5d$O7b)B!dCu1bZ!W5aNi9$U)=_g(dCAnTB)z>Z%j!ePs4%V42UG| zb{d!5P-~eMfqfU^gzokySg?!_?B$7b5amFq*y2&)=bv2j-fwITiM@S1{%Tmbcj1D+ znhriaA1E?K?cmQs<(-jaC;|?(40?j09G-s4Ji+(%12EJdVtpJ_Vpr)$2H;C zEmANL{gSkN5Tcvpx8OtQ&)7aS_uIo!-RDob*tE*bcUy$CKZk{;^t{w<6ze8X2W#(} zV5?)e(!$YYC69g8V)lDE>qa-g#HX<5DSi;NHMKaj;oVLB9I!c~Dl6%M6d8VWO6cl4 z9&VGUzrW0?-`8#*JuS?-doePn^6yWCa*ATE@?Czz$oWtL?2luJts7Dz{kEF#99gq? zCgyJZt7Bf^NOWVjYBEwqp|7HP`&fQ~r$T@QH zPv}!C(ks!NF7VYWO~xpoyf*hVDE2|ilQ+<3a9T!?MCya(3xw4_A)K|A-^je3YH3+} zyURhl3&Met$3XxCzB@AL!SQq;OiGW%{cO|u<#q7x5yn#cv1j{VmT@AwZ`f2`{y4c_ z@X!=i+1lcbam{C*XGim~Wwh>agu{|dT2nCWcM=7m#_t43jmId|f z3ec}TmFlt1m?6=Hv$421(mjxO`thM%h2#RlGtdZY zwnAf-%dFMcVrT}lhQs(}80TCmmeViFLj*<;tJe%@3re+?lfC<*KrbU#KyULP#9NGZ zK3lz2whE;dbg;M3uwQrR<~W^^c!2$dr||D!hz@DT?X{&j;e;NKCJ2OuA)rmHZP08p z4A;K|bHnJV?9hhuvlF%e#Ae z?!{B!;1Q*lvRvg~OnoY`I4Q(icp4#C+(U0)#xaEq`V4OZ6)5KWzXY{fCiwA7no4LR zeSy~D%EFpG6<@LVoBS`ui&G~ehbT+0o_$Bm!ZuuwMBcV+`F}w>k|8Z41yr%cDGrER zPp{*h3Zu~LPkadox_M7d^t}}(qNg2E(D$=Yua>)(1U4&p@?w66n7S-^eF>pwXUq_h zr|4D9?S<%k;8vlXQY${K;A!`OrkQwbB`9TaL$Yd{XYEhJ0&NA=jLoZ?>FPscOGPmU z2`jHQS+kAA>ZBL>@*_;6du*u5G95l=D*WS=WgbrEB&}B`_^Hju$AO1&p+t1HZ;SxbWG({)> z67KNJuLwkFGctOG=s4ZuhMa4;Ax+UO%VFGFt_GWjb$#qTj{ghH;4yhscUeN59>i}i zm4c*;n%6B4p_=Us$zqw}l;@*m-R{DzNxs75p12Og$;ri^lzu z{o*Iqt}9HHk9`nuG;K|?F$#{93^aF2v2clQU49F?5|tE(UWs*e`^$%D)lw7KAZlOH z`sc&D|cH#VK|_fR8l}uuA08mu=}CC zCK$=L`O6_B{GFdgk(t-soi3vg!mP#o{6gyclO$1OdtoF-cg2AMI*kqU*>5FzvKkN^ z&KKAVvIhHPVy=FOBc`NvzRKx==$Z|ByUvY~`*j;RR-$pzW2d`o0PEOuX;-aM? zu^tX-&7T(TU1B*K;N6?JtD7=hs8G*YCMxV@@sSKNq$+=hCUz; zj3LER2q4>g_rCT)TY0{LFzUG?hTK+3HFPMJI8$mU?5}aAW!Fe9%C_10uMvcQ??Mp} z@QukM&bGLAT^#hN2@Fng^x*RSy&Pw6a_a0IRLh2gXY6 z+LNTx3Ui`Ut@>gk@TiTp1SwB>8{IoP9K=)77#_R|G3c*+E$e;ylHlM{4T#7899E34 zTeO__ht!Fz<2v;`DJMC%{4F-{)E5)quiFNa%x*b@gF$KY6~WMjVjWA*Q}w-Ou2oc` zG}(2j$*!{jfWtPGO;fUUL8(KCMfQ;fc)`kPkva%k%kE~fiBu?rh_t;HY9by~s_p9$(^33>tjIBx>baV;i-Dd)ss`0C252Luq z!c$Vijq?F1w3z*^4_cuZe}_2qBS+zTYky=#XVjMHEri@mtQp$tl@Zbs4xu%;0H4_? zST+gHmQNhsb=f3JNQXoFK28MXq(e_YVOaxF7FU!8 z()FgnL^2U3$$#1ropHh!@B08g$lK&QC@PY`yB2}-2sW`Lncd6d`fG6?l*P}wnk=+g z<+m(*oi!${e*?EU=&V~P2(QRPoz13txjc8hK5espQRDy=u9b)AZaDYJc8(s+4vt`{Kv2Rz2A+0!)0NmWmE5wEo3d+TU%phIcTuSv_4 zNF03=o%q>;dZEHLKcNUjf>{;UR?qs+_;6E~vI zP{AV2KlG^3)@N;Y!JOW1(=+^!H@*H$TZoRxf79fN=*(bdSl(reQS!c88lEc9*j&#wVu^2NTDy;y!1Gd$Hh zwQ?|6?iwEyrZtEY;Dio8MF_)kkrLRxuiFPg%}!+#29M_Da?z~|7Jb#}X=`#TSMs)5 z7a4a7`bpn;=R*bLu*ipk@66Uu7mQ}S8CH%LokLG3?{nIy5o36!O8yu2__H1b9&w0v zPM(~@9h#(cJdax2)247~gx8$CqptEN6G!arXqk8#l<>E<+8W4E*5VCSl@1;-m*Jdq z0}NERP_fBKun+b*7Lt_lTV9dG zZ&iItN~^AZSQU$GYt@?4P&zBkSN?7=C!~5d^6Ij-!gVQ%n{B=$cYV|nCQ7GR60N%t^(J>V zquYFymerYP|xv$P4O$04zO1jx#A0RsX0d`9Sl}@=TE-&5SJ3Nm_ zJP4~%W7wZm7kIkwzx7c8*UKeIF5j(GnCmgyVVJdBuR3ZYRCt1_8-OhS`{xh=#sWje ze}w#1>R|k)lKvL_d6V=XuT`W$zuKI62`6hd$kzlY2pBw)O;Xrp zqU+Mw#7s=>gX6No1}p0YY_Z-X1N!?(8VAvKUWx7Iuy2O%kTxb~D_5MD?yGaY*ZW;x zk8FJ)*c>?YF+@NP-|0Ll`;dN3-#Iie0u76q3WIt|B222U(K#zfeM~=)!heD?G3Kb1 zO-)r1xTFYi-ZWlWo453!1Q-^;Zh}$SuNqOaa;5JCxyN2rJ%&VK(5u4@@208KKe!#t z@a;e226@S&C;yQA`RKeMaMYm|5|)A%tm`0Mn~eZuvthr|t5Zvi3>Psy$EomHJ?O-H z`>uISs0{wLSJ^27n|+3iTO9SMU2V8YQzCCqvi)&a4T>N2JVhsV-L*v$j4v(xch=b< zCPn+Xh4GH3J?=7K)(XV-joVCx!YujXXQb^d3g7PS3F#K{-1?&h+dhg5@<{sqQ7bHR z5r~;xAob=uX5VTiQ_DE)--XJ4iSN%GL;p>_@#CI6s;^1ce`1I={#f2F3EeS#4}KTa zf*ln!FGjIGvyuc=^c}B<8NUn*Cs)5Vb3PTIRmWHA^A0bH=z8F$b)$!&1X7e3g*-H) znuckK=&WdF;yqDtcTfHLMaF=gq9mNn6wA7t8eom##bM<=i(E{iOlm5H*MG|g$ z0yKWL1pT+zifsvSvuAMpa(e%y+5_+7c!Hy5Jg)Jdy7{**Gsm0q62sUL0_!!XRW|11 zEB57s{O{3B7XZX@YK!w`RUd*Jey24&eBqiR%V4+m`gs($;XR_@aJQpt>C4gX1XSW& z_~DZ%?oZ|g$Ix%XHWGF^K;OCS{Cc>lf*q|6^m49+t1wg6b`E0dQTk*Rk$gdbxNSuu z{G0N--76^YQx!Vi5LDMkU5V7`XX#2qU$rSoE*Iz(BR((xzZRg=A(1vc^zgir7(Ei9 zk+cm8N1#bco4AQg;M0t=xG$x9c?d8_#p&@}e#>lKwks2mN>kfXHR#5BwhJSOcWOBs zXS}aRy^sbjm}jsKE7+wHp0RYu_zoh{vJPc%$z}V`hTSw&NV`R`EnTv*BqBY??WZ05 z_j$$wz{QTU`j-E+qAVg;5YYJ>~JlXnA`XWwRki^<{ejB=iK^UeB(pV zofcWyT&Qacy%H~yN|MLwQ!KNk^e?ur!>`@dNH2Sgh|`%2c(cEgo+d|?Ct?s#Y0lwK z(%l<*{n>jwNdGwYw|~rzsc(%3H1w`z>_E@cTSg{*&Wd(T3{T1%L1B4TqyiLlhZ_r- z#`Ajc5mrU<3L0u9CJYf6%g5b6FzivA<^D-BM{PK19!9FNecnH6zQM|gf>#6ZEA|z* zLBuH90-pIpcT*yJVHnVNFg3z@8Be!AZ^o*T2a*Eg{)Yq00?`&k@n}F;?(TBnX zRx*V8nnjcGHEzkj>$&&9#k@VbVwX%Uc~M{^Ezzt=OtZ?PZESA}l>kbf?%Cw!-i7X3 zDBP>|Th@O1nslz`G{g;siYiTIC~Z?~nHeB{h(&1!=+nAuAEW4WSj)xq!#R1CUK+<)^}BMazM zb<zP6!=}U6Olm=q)T<|2Jaclof6gu5=e3hXXEeWG2xT4E z1^pg$#ooF}g;8*jhAqs(va#n*&d={AC@-XU5M_b<&QBo8RMJ!nU6G`~Izce>EV>#X z9&rMudaF4%%*0qEcPKP20$_PD1gwDmBi&bG*fy;8wPuw*4`C}?>4O->5vfZq_$W(U z)LFfC(HB$K{KuR|2v@_)_a4>mVhE!T3t^`1EVE9-)C50cUfkxmf3$2WGMa6fGEFx+ zST)#l;sg|%>l*3jYlRgHPMnEl68P;V2P+7}yRF5MV9nvsYQ+wEb9_HC1g>wehoS{37*y2v86@2joB@6cKE-z1Me%na=yteJhmHb3#EsC`O967ckZ*zSqPQm>T>)rU)>U5`G(5~(mfM+_; z8}ZjVfc$D;(1bPS*p>`>n#9g!45z@8ozUXRV3>nRERO16Whj6OUFSuF3&=xBU-OSk z->y&Ca1|5-PI7p~s!}1c=vOG961^$fUs+^PcZVq0_jqgU?OZIi z4a~YL>NEAR?(kl`pT;-xs#}i#@aI9BNl?4%h+>;p8jtwA^0+;$?i#T=RyjmuB@+_8 zJo($=wpWs9^WU|6!)!wvf$@UlHH32`RK|Y`i0bN~MghRQFZ}&ChQOTx+*GYUz3kEw zePa?u7Zv}(q1 zZ(PpJ(F?7L~C5n39NHr7WM&FxyJkK#| zfYiA{Gw#+a^rHLk*sgxNu0HhRgNx_h21+vI2$8%U#<) z8DPz!Q?@u5AiC&4e$%BULi}pZ6(%=NGpLI>Vtr!qA`jZ0`S|yUyW$K~OCDzEt=D%=CYI|c`XkL}K^1hG zoRdCr>pRXzhG1WCP1fv1Dv&6&9EdEL7Timu%v)-_hrURtP;hm==-oc`kpUyOnDRz1 zQMt_)mLbJ76#(LLB*P*b8-|@Z&Ks7M)+WW@aK9$da*^d(5$y?Gap>}FKwL@24#&M+ z?dRd82?rlrLR@XU)zNNR33)$cd*135$nWZ$k@C2JUCHu<&C}WEqn#zZ7enICTC{}6 zD_-xu#37n?B%x>Yk!AwBHVA37YBTaHQhXYhpax=O^Vv_+UKPcZ)|ybWFmK-1aEl@O z76O@<^84GX4<0XXuJ%1v64{un$~Q=Ip&zgVDjQS6NrlVY-2`ckFYlu=mMGIh>{W>9 zRh4L*5eO>@L7PeYa83^d7^-q6?iyO~t;#-J@a-a8!?ibVT@L~~1*LC}J@^^|mjwu~ zI5AI6Ypf9gk<~Q_%7tIPrl05=EHA)4INP3Dhku*{q=Nm9;<_+1Vo7g7Zw&;h|FTdN z0H2=c#9I=rLfX;|V*gfG5XDTcmpGI)sVoZhb%*?=^%#%r(zxSf_v*WJQ@U8ABeJ_a zNm;;10C)if=ZcvDomm(Wx>IL8k`X3NO=GgzNMDniV~4c1Bvlv)(2U-x%Hb4Lms@gI ze%F7K?1EYr6knKJD`gR1*l!=HFjO$9Q8KSZ#Z~07wiGEC?q@C7)dsPCck5$6Z;_rE zyRr7V?<(1PbzKdK4X5XneyA{}Uqh00B?wq=2rfj>7H^qHOSWqNs;@>EuZj^*gQ?faLlX6VMTR8();%nWnkaI$5I6o4kl+Fa!+$gNtip zj309L^H)a0GC^LuvW9uwV$@>lbxCY+%2y$dNyY?Zx)epXDsJOhcop&+$WHlDuM$`r z6vswZTAF`E1#3DN)o@FN<9{)xhZrl^CXuBb+ z%oiCH$j63%;9=1_ZhAI`dd(px#V_ux-I&h*W&3fOcj!G(p~&$KvqU%)ZFL~Geqfe7 z@YkI>zd@d_&ZYO@z0*7-0>w}rPJcrQos?UqpWBbl5T*CMWqdVsv1tO&i}k#&o;fU* z&oO)`6(f+SwU=N$IiU*d0Uca!Ktw}QB|k-?NOPstisX(#?#I*5K;dstMvO-nq6mz= z)^OH-Yno|BE{@-fu)MUFkN7NXw2m%Vby8BV;pxa$DFwY%hgOLgZx==B)O9BH@l|DjeA;ViqlZGXw=$%pXI`qVi%oshOwYKx`J*o0r)-Ne z`(?sJk4T>|9v^7o`Jzy6L; zf6he=02F0dXYBOMU#Hj@X{GAd=&VFrALAj-^?6iF=OJ=^-8=W)lp36i3spNp+EJ)> zn*Ptj5f$5L6tpvtc24<-P&1@#UjoI+FYP<^i=ZEJ!pvq>^JdQVs|eG>r9okmc2_*D zO|b;GSUOnujLq>DKOezCxT9QS0nEU8QZc%3*QpTYLb?o+AD|$8llSyb8}Ov2h_-alvyLeESe>{oBbKdEG{vhI#Xk zQFic^{LOZx6R5O61s5F{s=igud}p|x;hg3|FFNt|&F6tcUcyvw83Xb)Zqgf+-QkSo zk?QjSk#gbO3b;`DiowmcP>}jb%Xp2_|C&n5*5&dgZ=}R|0!?@q;Q~&AQ z0EidF05kH=ojqF*sBkbw-rUI4U2i(hUu#3!Bqj33LW*NiK9&;zLxeiz?5elk_`mOd#0Wei$!8L zAMBe!*lJ!I`(?i_AAp6@V~xaiSfKYXM=3Y|;!j3{4g4^jtu24rj1PD?1i-KB_4 z8?wIxWQzP-yaSn5QZ)zD+Il}3q}I)0PUk^`*a@*aMQiEXD0Mh%O|Oj}VWc;;EaM)> z8;#Wt3d_GqA+C~Lee5Eq`ifQsF&eoqicsqd6}147sno2=$t$9cqQ zUq)q`8G3QSdO`~7fTfvjly~!K&D2Av#=rZJ*h$usk^A6;#I-l<>;@e!bWb0oxuYI6 z!D;rSY1v?!4j6@L?NhS9d`~}l3;a`#I&P%qW}*M3I95df{0QKfkz%`s45ofTtuySb z%{~SijpFhqEw}Sp^jI|PDd#*4SZgCw!&7F*00I(AFImvtGs}J)-=WKba5BVv&o6V_ zH6cgOkTer86Ec5Zh6i?pgRHh@pCBnpz#}hjh%X={g{cuV3wxe;3#T({n-4F|v^WYIfmL%>)VWIralAl` zzV?mbuJ>u~hrH{uLNaU1Edd!f!o%~CQ$|2~%~4Zpo^2$jZX{5va#B&FFOe)s)c`5$ zF@xJ;bE2%8Qp~W2wT7UozQ$Qa;dpizZgWX|9l~_u!>oAQh7clcnE9A%iLo;?D67xT zk0ty8{bG7PC8N!hR9zj@3zH8wTB+)SRL05@3Y;ap1cpZ2h2Ev@*zM_ui!#6_RR%8d zi?jxE5SDc*9qU$gcLZcN;EYS;Xj#C>zJD&Lg*OkERX^yS4<{PU9Kfjk zT@d{IW7RpRy=`HG=t*8vO4Sles!IWbx;=hX(|2c=9znfQb z#`Bs<&d#a$IzpVJoDO@_Fvl@6sPxi1!;#Zu$B`n96`|knS=;9epgwx-O)5>-Idk%w zFscXLgj5GfuS!t{^Zwy>sN<~$0eStk(VtpaUGnR|E+v-fgy-2Y#`Cd3B3qCoJ+(!j zGTy?D{pEUgg4pmL7t%Q0G(O=hDSZ~_>EoMIW98b{Y1;Qjp8f3u)wH8LbViAxsj!Wb z_;cpb=tDijMczvuh`P8<-g*4zJ0AjKnFPmn(gLaCb&%yH99KienfqqeQ z%;@{J^%j25>EY{HlBRCb==;f@@jrAfNOoUJ)nu+v>AWQUvKc@8a8>e8IZyYm^REXs zxOO)r`!;JiSloOT0`%poVqG5anm)2&vDcokJT&gZ|26Op)+S_eKdS?aR2AJNA>MZ} z*MU*Q5I`Q{Rq2kE^qpvdw()tBPTO))7 z#mX|&SEP@c<_xV%6NNMoYPyP*%fHv1lLP+AF4e@kK~E-^l&r+OT2D_2w^VJlM}4j7 zI62`o<$7OOJ zGH1=I!hASbyT!>h;0Z0Ax++S_Z($^r1lZSk^Vvvf{1^`3`Cco~n(yM^(u3yQaGb(> zi-pKaIfc~hSwChzqd$tCMaO}F-U%HFqc9s@rQS-X6kphKs=tNy7ix95SLo?XGsE+| z?e{ARv3Na0Bk$MnPG?cvSyR^%b1jMm4PY6;MVRWN5pGg>)$E1HfIPA|J9I}-Q6+1_ z7{Xayi=i5XShOTE>2feV>@yhVYkb*T1JS7|KPg@Bj(fnfK`dD4;5#?~f@0E6xrq)@ zZFXg#>eXb6Y|s*EpPUwSIK3BR^~DW^-T9>^T=+XXBhQJL!_Vr6+9uL<>>ih<&eDI6 zKc6=%3>6BY^H+q~q1NlS1J9>OHQilkcC=kxM2ic@+%uRlkyFPYlj^6wo!cIMTKCp|!o$>nn6 zbjt|;=8`R>zQCMcUp4CF0cJ3vGsPJzg*M~3TB_3P=X4awqEIKg?KJjDH(|ULZna|W zkTpD9sm)G&i&P^ZY$kQ~tT+TqRS2aHGK~gD3Q$wh-olE)KI3r}r|C@zmIf?^4ITI+ zQOO7;KfL!XEAL1Iac!~KH`!!`L$#1ieI&3t<6dI2mg~8>0UMJqK~|F87lseb2(Cql zN}T`8ww;`Me8;6B<%g;W_Aedlp;qU)C zN_4#bo_F*YUgLkyg_++)z$kE%_p;=#%*X%!1vpM-zA!m9&HX=?M8e=5<9YbyuuhFP za=KWM!&Um)(FFL+SsS@5VoeDlO=1$`x0h1R-Hm<6e?#9VaYU|gEl=^0gVl>9S35Dk zdG-i`0J*waTT46HlW)yL$V%KOzj0OQlf%0PL&a(qh@pd2#%2MPW_g35n12yf;Z@_-f_-JE7zp>lb#-{wU z5wEF4UPp+u`U*l^r#gi|O%+Pe&#cQm7nELH0z5srM&$E zZ`-+k-80=6zUMmLK3eCbob&k(5dX|aH*Dbc+fg3>!7Hns2l{Kl-Fj4vdmK1s-V$h%7}4ROT_&vMi8khOCK4x}*$8 z#T11*F|&S9--^TqC;JOX=g)KI`q!CC8yQO-1>{#b>7Da0^(gS-$Xn#Tg`$eXbH}w- z`Ao!wA&wf_!pFMNjSSkDl9dDteOq?wI5?)m|2EeQlWPewDkHoWl(WUxZ_qj2x9~qa zd-zDWzVI&RezUHD_=^?Z$mT1;ucBh3oBEQg{#cxqjxJd1KY7%NA(Kdk3aDch~%JuwB&k>-Y?T(yLSz|hL-uG)+=I5;WAEH#0P|@@`yhm(jE<-Fp2jvF5diz5~?d^462Mlf&uo z5HVqu&$qqUlhW$kHm*morQZJm?2q}+BZmT24nZcSZdet>h`sbpKliJRuCc)k7CoF} z8Q$&mSqP;a_Kfg+mP}Iz%zY?>7T;<1i$a}ZGKo_1WV~7P?NGJEqNWs zudi*H?Sr=_pfGOJK&}Z_oMck!bWW$Qwo>q2lXXbd&f#K}Wc6DuRcl=VL1`{koVS`4 zq*VhXd>BEu!NzKlCx-fP&j6ddm{Og5@s98x(;dnRE~8St8Z87Yd+F+eEwj1n0jRNh zv-dl5$F$-{UKoXId^>t(O{8J%+rmA|D$U7{^i_g*Ap|*0c}I}>+Bv@Ni2q-y;Hs52Q=1Lu0j*c^m{kS%f(2ec`hQ4>UY79hp?=9hDJxHBlorD9}E>_I4W!KOp zm!28+eUJz%R^D6(ezb+VJKG6&(3ixEzS4}_*IsA62)j0Jq@eD1w)?`BXtu-cF`-JQ zfIO`CfKP`(!J?P&qB4WB3se{Rpaf0wqL6D5JPL^0eX3eYJ$;`ixCeJery%O-<7E~O zzg&rn!4)&cEF)wBlqFq^`*WD%x|NYksu(%d@jlQMR<#6T+q>3zgvS6CBc5O~IcY2lRtzbk2MKBxA5+9 zBk5BZkG<~4BUN7IXDC8BGFyGp4n8sZurQcX^}Zv%(SzXw;{g%XxUNif@d6mNy?Mu12?R`b(x2K=5N zOR;H8N9hDJt@4zBdf-|)6?^3#5&q*}PU=Kz85X;N+3bDAh0~1PtXrKJyS&kxs&=^U390xP!0Hc#-kCk|`SiQI`M*>KxP~ zjX-RG`(+t2!qg4v>Ge(B8GGa>(t%33b;ci*j3w9C68BMuRa?Zb3DXB4;jht85G=3! zZc)SkiG=*mJN}pN_Ww<3M|XM06R?5EWh^z59sr|M?EUrkJ~_ag{U(B`Kp4$gb|d!k zFyht}N3l{+QnS-1c(RB7cj$EHP;s-h!ilzq-2=nC^Nm26>eEdE4~YwvHvnRq9SBqWMe|+(Mrxr(2&$-&0uSubFmbGU zmR=}@9Ju4K8uZ1E{%PE)?nw6va_kdKj;`%bXPSyGsNREz3Cw2SE~pG)7CyXt!W6}a z4LZ=C;w&Dhg1Y5mwo+XGCD=59(Y*ZiYnCkRb<4a-s&R{qrUrLx??Zp+xpx@*yHHGr zQ%%skPUK`K3?#|eUtDntsQ}uJ*ZHOe$OF*|C6C+*1-VO}q3Hxak-tsmPSre)$=yGxKQ?)3uGHHNmrn`;TqS&*e6eQHA?lT%7|#1|zm$I& z0mjl=!8_UI6$nzDYNK4FpGuu=AlN-_$%x#n-`OB6mX8ivW9)Dge>%*`dfvX4D&#sj zv8J%$PLBS%*;S{y^=>dw&GSsa!M*?0@1&I;snqu&RQDv1XL7B>G&CGkYsjq@sPdW+za2Ri{10b~RR0Pu;z6&2nKMH=Kqu zZh6gZ|CK{JS>U%9_a(LzTN40xy)ML8uuHzoHx>0D8)2U8BoTW{wZg9W=HT9 zx!y6gn1E6%W4a7z<>=nF3Wwag7ky$~Hym1+e{mpPJ&l)Tu4JO2KU4TELhTN)A*;`lG{=&MEfnYr-&F!3}0Mx+~@Zl9AuN(-L_I) zX)+5S4dOjd4OvH{MLv1;iY6JQO@+O-n6DWfZ`fHp*dAxc?B*QycM{(11^h%H1mpGY zU-6l^T_7*Osm1!1Ip-WB<9lKHb1`yf6V&kvzxJ4(WXg?j-DBlnHJyT>RdTu(%Ss_O z9S+MY^&#ceFAEzPBZa|A?9KCiQ8cqhw7|=74`mjDz())XghmJj5o0D;RxKqS#C{SQ zFm{2m@CF}Fx-$m^Jjm)uSwBe06<_G?=Mk1PaUu{GPXJ$A8gKNb26A|4T{p|;^SE{q zdijFLmkTYrR1m}4>VbK682V<*ELWO*DM_a(kD+>@80o`X|+|&RM4pHvMYqPT@D0RVR@6WTHL@s*$ih| zG+$R&FAy?CE1$s7rz01FF4@#wz;SUlCO|?sJ9|?Nyhxfglp(^%nHmE1yhGJSa%2TyILB z7RM>XNoqBx?tbJT3Pz*~L=>uGnAmIT{~mf8NAj^Nu#X!Sg%8z#U`cB8!v}s~=~^g# zr#%Z@kuBy}j1nMr!>@UtB*F&?{q1mn;Y>4!V1z@hD6Z^H!Z-X@=k{j6JjU6s2%Qa% z4uTa5SSH;aRXOEI^X22|+7xK%n&=;q)XL;Co+5hFx^CT~{q$F3=YYN9L)xML#^S+1 z(C(uh%kQJMANCD?zTrg-!Nb8#$Q<)^l@fBWp}?Bv6>#}qs@xFJu>Wn_mJ)t)K&`dq2YhnpbE z#zj`ccVx;R&juPZ@xIt!=kEN&l;RaAhRfX)waL?^>RpY`MKK7E zi5ZbhU9PfB3ax+y4zhBoeRm6<**nB6Vwx2F78i5oXxuDeS*J4SA_{RbX=u# z4L3~Ks{RZrEUl$O*?U3EC^@#6a(AnR1({-@Caysrj1z8%p%>LW5?Zz52u z00`yVjAhrfs@PctwJ@j=udj8gA{;6>zC4;mXX`v#mgtL{ zDQLOAQ)_h?wz9X+Q0`^SxfpMrRS+XaIN zzB?4gBR+qe`54P>;cNElB&N5_3A3uN+`ZNt#Rg5U`2U;KQGm-{xH7EDgqJbhnh0P( z#QPhwIDAPRH5EavYC7phv%*CM-UC<^74`%4&~UZn>ot{q*NPQv<-)Wu6SFW)W^1ox zrf!u@ta8wURZP~su1$oOf~ZZa6(Cwh<^^rqEtZV`Hy{?Bu>{xlcA~3s5cVtf`POvOG^=^O<4i8FRbhc@?G9zB?j_*x< zHw78wG4|E${lvprVGbj836vWOr0g1^h98l#C~DWq7=hDJY8K3)qmL}EZiY0i!vU{u zOzSX&-0_2dS%|W_04JW`c=}ho*NB`btI5B$Yj+)EFV#@6R_eD(b|u=v*6^RrXeQKX zMcI_9bLzPDJ2oG4lD|YY9T-7gQ%^Q*!w%8E!yh^Bq6;HGfdRo88l{?&i|Fg^jXDuy zTE0QjpPA!-6UIA7^8YXXTs|2v{i@G@^?CHmdgj;PL5#*5W*`ss@$mHX+kH|L_4TUe zoi&I4x8l3Ynx-k~OtIgs!(wMS=E{h3#9r)We~0y)-l{e6_{$6TWj%!3m@kY8Ntm|4 z(6(CJW<;;qMwJ|~Ee63WIsCzqRq8J%Sm-Jo)9^5&S#WAIoB!o2s;w0ZLfvTSjZ_yw z$LDE0_UrO3S}bz}?-<*V`ggZC)@9kIMR83phSqZA#rU9>imkjnEZt$Bgi?Y3C3CUO zFXffQB8T63=`j%Pw1WuHgJdS~PLk6RB^YS;`yunl^feal zMCbyyoe{OWB60CgQKvfhd5`LHqr|)?rN({Co6&EEulcHN!LHQF;Swe+NMHRWSFm&iLDrK^0LjLN(*{~UylDjA~SnSf%YjB)VpaCQWFKv zInu&+h)>D2Vi76*ol%7vz9B0=zz6yA^?G26MN-#A)m`*0-E&Fs zLXfIeBe8Q@`D0NauZ8m=Zm%v4akw7z{mF+-lAkx%o+?o8;0>OJ^G=?`KJl;f{poD} zDg1VOlnLPcQk~IV*`MD1g{}hz^)pAyTfLyl*~W8y(qBx@tBSIAjHZBSEb?twe@?9q z`j77%9u9#|SP|eEBYxIYkx)unzgj6NOzi3;-0q%5_wd=>YJAfd_uN&V;=|hb zh~c>yh>b?EHIy#|6V>uxujNM5?$X<$&$TIdN>zoiZLv~J5cCuwREf_O)QjM)> z48}4i%UH67nK=w2#AN@yo$vSeJe}wJJkNFY$EWF&%Qf?!`*Yu~`?dHyBO|`G1D59Q z_C^m_QH09==$CZ?IME;A11aQOG2YjnK7A=QUCfW>FqzJlJFA-50O-p4iZ&cuK`NFp zNfKAs*Zo*uXpG!k8K^~@rN0mR&cHj5Hx5Dy=D>ao$xGIuq>-Y9HbHSA)^n%3?O}jjdAx^R6&>%SX8Qx!ML2yHk`i8 z#GI_H9rj!6oX;P3SlKd}?mdpFCo&5(%WWXlxB$g9#VDEhG6s`4IdRhhkEzcLj&2zV z*=!tI1N4f?vMY=33$=e>cRhP%z^^$NqO6{&@^ZAt!6`9pB3G2x7-92^#^&CmT)|{e zmV{4%6|QzgV6e(R3)DX<6}b3{-DfPA$G&F$x17mmm$x6jf6AO4VhmL-&3cOb>atQH zcfxJDEbFI37=vSloG&a|c-Mz~Y-{LMF3vsQH)Ofr2e*T>~nLvKi_d0Z4 zk)x(BAidcUCB5mFDT&dr+Kdxza8X4sK>@tkXazafjxtP)N-&AN>;4gN4@|0e+h>!< zH;NVzVr{N{x7PAXyOGTgnouZO9uwnGA=R|(C!eJyR=ug3k6qpgO`fC)_9`Y+hD&_d zG7fu5xw9RdYJ~$oUX5g9wiOXZ)+3dN5=r(0YgqiIHS+p{h=uv9i^)pb3~Rd)t%lQX zdM*BOEwqYCq87agIgzndxTpONYp{us_`1wfvR4%_aesSn1z0z$EIaMHB>ww9Q&+)Y zI}?5KaAnJXxMP1go6r3_Fetd-1blTsi=Q?tD}SLN{#4p>o1)Rh$M<10sK+R0%LQ$o zP>}RB|899quecDnk0ALHveG%nGWf9yjr+P4Gb6p2VcEWmRS7%o1;#J&i-OAWWltw+bduNw*FGTnU@2R6c*aEUa-Z*GlSg-72gBh@;M;K@?nee zylbJg>?Mw|k?#t7vX(ctH0`BZbBc`RHhi|XAs1^8M;d0B(wc56m2<{Gto)bew@E0O z_B?Z&(U{?a^S{n#ljkqdC1`3K{(#7P*LX+}%RNqVo{rzn>aDWvTG%z)8iq=buM_Wv zO@&7)!Lz@|pORkRH}Pl2mbi?8y_B)qtC;c?#|mZyw=p)=KwK-R9PXkJ>%e=*G2wX2D6~AD{*>XV zr3kU5wYy!u{q%7Z?wIU~FE_jM!pTiS?U`s&wn5E>`T_fmPKWE9gGBsA9B=FKLZ-W?yE2^nuzzCZj;7zB&W zCdHVSU4b~>lrur_q}^=WI`;xjd0xh6bGvV(l={du~1hU7HAQO0U^Cm*ArxHft13Detci`0}B>sk4Y_wl}` zaf0$tsSf8iTOeo@pW1Cbt&XT z<1VGd?hXu>9%_&ws=*>}8#<$bvkKuIByTV;XP%?xg2XFV4HIO0ePvR7s!0bzVsU@7 zJGpEo?t$YyPt0S>i|JI}yFimZ8~0A$?G4O$;E&f!c_@;ji-{4p9qNAE&Kr3g^6J3# z1rt6YoS9CUz?KHb!MA1U8m8nDp;rdPOxL1rG|O)u5tsFr)=|uoM&Jb_%HWWB9Kx~p zj)W&$^k#t!th=#zhhFSG^)uOwJtc zVbu?8_WbSr`g)cl0T>rK7~PA4Wj%M<5-PBogxN@0wbHatJfK=57E4tz=plyV5sttYs);B8Eq>Uk}!KtnWE|PXcnt6wOsQmh) zC0S%)pi{5*vv?z7%o^@5=wDz4?N-OxRi1tw@<;wk0ky7={6@6(I5|%pQ`dYHn2uhv z*h&ViDMOULVwq5=&p%juk@A8myw*){53E=>+7=8FCf_C81+<*nJOmysT~`87S!DZp zvQ55EZPe=_Ku?$q>;33Z=>ZfD(-VH{MqJff8sd~J z71Vs|Js@#b<&?9kIw9fE6A)OmJ`(O(Jhef7AJ{)+%;J0Ig^$+NNONQQjfZT7t>e!P z&CQ)~B8L&-8M+VRqX*O@l5QaFOy@yNnyWdeSmbqZW|Ds-h z$hxx6W4khr`Y#ZFW5A*BKfPa${yxpM`FIM}T;PavlOf*LQR}XSDBg{_jqC7~4Ruk_ zShxW>MnTLB<%dcq^Em-jN|i_oU)f%s2qZ&O&0H%v7gn| z8tI|EhguCLp1D7ioBW{v#XP8ha_e!0oE~oMwn*<-!_whuqNsHM~aUvrx>gs0=X?8ljY0b3nx0zSw$VWOv-+(z=m>tlWFr5n}Oi zLk73g1=>(H=lw}sUvICxB%w9Y`=&jXTgXIrf`p?(s17gO{f=RB%rftYm8NWcbA95Y z(FkjFOx>64(KHkKVn(euE|GK{as?PVY`M-DYw~Evhk3gcybQeG_W!v6^yErOB1xbm zW?9*Ph^kszow#6_QH|rSyj>Dg`Kb$JAdA1rNR)BWUBIX>3=FB5johuk1tgD28Y6Uj zF%^|G6i3|$eh=Ehu{mZ81}qd@&zdZz)#+ifUTI%5aYkMzV%OCq40{-6x)CK!(I-WH zmV(zNPA!plEP7^wCoXV^_X<)&$7bh2waC~KTdyPvh2Q|z&&B*sqQl&G7agn?rAc%K zNjkiTc`{nCXHVN+|MRr4Z9_xA-6ig_%#yT z30efqq!aw3vgW?ki-M^DXV?W0VN9M&w`}}Vz9(!KCfcF4o=GK#6pNU+*UQkXvPpzj z8~M@om{kdw_1Soi^Kb#jq(?H3%@04YTH#XtgTokQoR4JNkyvk=MdAi7uo{O$%2L{7 zCKTJkWm~)CM#ca!?Omz=sa3@{xs8@9*Lo1**FBd^fmKhQ@uAYOsB=c{O(t{Z9St4k zdFm&7Xm#FE^|?VQr^=T6S?t8*@)?{|W}AMKS5<+%*9jdb%Nq$dfEmok_gl$DyM*<{ zf03$0>rL&a1;|U)5E>@Ezl(hmOl0fmG(G>)qL$0YleI?NX^AnibX1vnEML@Z_(Xs8Z6O7OZW1p_ zDpjdWe5fB@6t7?693f=yZt49u^pK zGhe?wzNaztdVL@N$JV^CZl4?ZwSQ~98H=f&c*OFdJlFcXW~7g+$g5L2g5jT4Z-us$ zdo2Wy7BlM=jqzJ0^k#)$HhE{`jM(b4?K&lk=(NTzo%2+q5zh0j6~>!~ZCth!@|6Ph zQlhasYDL$jBQ?dNy(YVBsB_(O!CSy?Oh)y-+9|-4a3VhFl4d>qa}6N=3#+j!cqru{ z2b70UI+H&QI5D{zok;SX{9N+Y+y>XhMDvLfui;b%5P5uuj(>m!jbc_ zYYA{_lInWgYjaK16V0&eU%yXoXE=b>^Uc3#5NZ41ej3*cl^-YHAFhSZ>?5D`PlK=i z?V0|=9pH7&gWC_CfLu!x2vvM0afVUTJ@d6jF;S20`673Kaxszr4YwkklP?YIbx-2+ zqoVj_0rT(%fc6OvX=ByQ$BQ=-HHq$hRT|onBL+XO)(UZyzoLQO=GY&Ha}=1sK`WW`b*D73YJi62NT{}>4V_u>QJp$&QAcH#N>z5h>qQUCb(Lwsk$^i7<890#`Q z_wtiQ8DhYRQDKCaQpTRSQd{kz%e>SBV)GQh2MBgqO6#yUGQg7M85qe5>^cz%XBPN6 z^HRlBSu>2ZKTW=14NrSD+T`1(gg&;A2V5EBRvVO7czFjuitAF_?;I4*tDk933y8QQ zr@6LWca|4kFD*JE%e1yySS1>FYxAS3EwB%_`%Z zLW*y|liJ4Ckl~H)-~g4k!Rs<%o;(p5nBeGlsr_|&kxSBuk=;+P9<@M!>rJrkp*qHC z1=s(CLxlB;>sG|>URcX}XHImI`^c!=V@@`2ETeaZD($Uy&i)NO{yxRA@6mJn!h;hV z(J~6oWMJVNI*sdiTy6!~7MVWXDdKioWUeGqP}dt?Ym|{>w3HjJO#R?78H3n9B}y<@ z085OT4|C8heDd(u7g4gRCRKX|v*|XEr{Xy1S=-{MW>JJrnCy!1W1EDJZnsOwSq(gi z(%b}F^fIIW>`L(P=$n`28fSss#g0*;bA=aslyMCf)OaY*=vOl1c9=iUk-9ypFqf{2 zH$Dy2Cd6h(rpY*$(O=2j_HdCHP}`iFGa5DQw}`b*`UveX+pM<@aA3*?2tVtp+pE%W z4r?qG`^BVA?_|L2)N4x8aYi<7Ds_zyE|a^e4^i_CR%4jrZu^S4d@ieOAm>Bhc{;ds z-$c8qrVOd(hnzO%N7W-t&;!HtLu;r`nj&OH7jmU$pSUouS_}kPPjtCrL$;xvZSOX= z)y5MC&!&#l?q+Q{Njaw&8rV>m@#rvJ)^%`+`ClYv-{ z70l?`zH^M0AxOXoPj_A`{tqCJ0R(`Y29LYq|9kM=_pWv_TKoORn$zCeK11jYh&(|) zR=Oz))u`oDY}?}f0!gC`Zio~fl^!;zIkjZko`@*D=Nrez^XhKlz0>=ZKH<(pyePYC zDy-^O+ub<+(l|BO6Y%qw+Jvf)iC8seUGhy6!+l7ARZdr=bsY8j7(QYP;FsGx_pgJU ze|9~~wse_M8d+!i2zRk^MZ4`0bye?j2XTIrgCVw|DYriC+F_C%qcEhOpuUz?Zk+-Q zB*VR<{L*fz)S9iZDYdV^pCem8Qi#y#DsT-e?2=xHUu%{{Y(QBA+gHg(nkw|P)PO(_ zly*yqM7a0f6n}_w6Qs!^1x*``_b+h#Q*xoKOEp@Zt3gc%1l0n=Jn>qW;O^)WEh4n2<=h*Vo`fbefx2keWQ>kb4 zDH5GfHl?)ZQbYFo5z~i1ArcRsmR~Y}xa&3DlzVG-wp+keA&4JDzK(V#tW0EtzkzsD zcN6UAJm;YS8X#Y+^@UFa#vZ5BEPY*h=Lo$QD&Z0|u=vy3ld}W)O3O`2OLI1B31bVw zI~I_b!QH3$DF$;}ZBdf`Tr|3M+kDa#YKa@GZlFsA2!l0OLIw)Dsmb#Y7jS}lqG&xv zXp*GOdUu}7!g3=aM%A-&G_PUdnChB?#4`^~L%xN(WUB2cqhE5C&HxP>^Qe(%{%X{? z!G($y`!g!x`Ky5A9ORP#;?@T2-O)#p`FeSh9-s59$f<%ujX$q3lVE?r{(@Zwf5dO; zm#_Bk_|-nSxhM;(R0^xl^j=EA?;1yXP^x29Ggz zkqpsti~Yfu7iI|_5D$N$C1t^aGGs2rR}YL`WzJ~!3-Xh5GBFyOn(a`pWv$0Nvxwz| zt1D!C%-Jeu;hB;R)-7av7SEyXlbtes_2wp*)_^ruV{|ns#PV8TZty7ki4ir$BV}nE z2Uqd0s$BXAc{dgkT$-BWOJ%;eGsf}^*1D6O6syaDz1Vaz%7f?xw?lx)#n}2fAL==rU!lYzG!Lh(Za^ORew%4PV^}SNf5(E&nY90u}+h>&&scHGR9|LiuRipS>cV171VSit?})ZCfvE* zF|j0pcWKK!6nv&hn>ys9}VD}1*t7o@^G{%l{~I$`kU$yh1EtNAT)REM{d4gb_E zz?GWi+nZ-z;TK{S?CKERCz*kI{n;s0o^Ey~`aX${0+M+Db^L(i4IW`+?f z&1W3bY*sX8bV!igeggtGM$XFON7p8RU|;ll`l@k?I&lISacQl7QB#55FKt{V2^?t%Ev&j@Z?StU>4NUpd4A$_=f;C*ILFyZBOO!5yO*^h0`hpRl`pudO>*7)0V z{BLXChmuzh?BPPTy_nxKbC!>+oy&F+B@WB+^c`g9F&m`w;>BoIv-(d}9?#wYn^dn` zkFQr-N^FzNv?LyzKlX=J${2r+MeDBvIW|PxTH@JhEv3H^Y+aMRVbS4d^0Ah zZAgO*^#}efP(;a0*3}G*blq!+2hBdQGCM(`U=E5^;{Uwe#XWqUD}DKcT?Pdk(isMA zwhZ|ujYjoW3t>^RK`#xZ-XaVZt~+;uj9Nb3iW1tYhhy25&QhUAJbOJGiTF=;*5h|) z2-B4-gvPRH$^-_moVlW+G0j@z?khH3*Ah-Y0|#Tztu7mNeqPFPq1${_hM9K%JwcY4 zB@*=Q?-pNLmLLHyg(K;}Z(<4@FwV4X!aH23XxASSEw@fc*vZo@f&cPD?pcFzTNRzA zZgx=-|2?Bi8IP09Pe{4&->VcoCGo%%nQU-)NlZD9Z~?USa36kqW6?gj6S-_Ux7F{L z{~L8#=NoUv`=y`TV<*k0aX7&sXU=!%O>DAn9ZM- z%y(bj+iU^1V09DTk^X0Mt{{eP#NyugHz)rlb8;h+LQy}YZjOq`x#pC1;5=`u0=R+~%VP-bytWj>WV7BQgr8e=C9Yj{ zxE)qT9}KbDuIK5%ruNylFNBt@VM3p_?gD`xq0F8iqY*$bw_(sw37hz+Fyf!nuZR~X zcf7R6$3D9VQSFDnsU^hbxQ1CQisvd-Z5j7o2W*lN%(o}DM?p5vSY5rXYNvZf$bBkr zT_LApTm47$S{!yexm-H2j|{4h#eT?_X5phnq=Khkg~$T*-s4XSq5K z5h-!_>Lo0bj{{L20?&#ab>&up%QVbM*Jb8IeGRo{nqb;IPjSZpWDkT^VH zf{bum3ev}m9DYPJ;F! z$KuM9eUOqMX2U7QDb6IA7%5;$&43>%HxQ#~scM(;h@dEW@ErdYA-?yPEMc;7t2F%N zE5Z>55R2FTp$7?}s@?8;WBlOd1$PiD0f;(#G={3BoQbFW<;MCv=4_H-fj81LW6tf$ z38;gJBu?I4L-!5OjEtPhbSJ-Jt+Qs$3W6-VWfo%2BtupM^RFQsv@ezWi^(h^>lk5E zoC1)vvu&%Mdo9*ktaOyQ@dH&-?^D~YxW@Rkg2og6d)dF*eH>6+t_343S-b5y#Zrr_ zzBzfdmZ$llYsacu&>gBZWBOu1qV#93m2{4u!Q^P8F$frIK8upsdlu@aVRp=jwX%wY zzX0amP~8se)zx$>lJz)Hz*XNR=jDA~2+s)-yOuVonG&&)Z*R4rN-Z!&&9BNg|2kAw z*W;;Li*vonNJLXX7vBJvF34G(4;&wD2>CrYpgr(Ut~5WZ@f$Cl9t;6GzdL-v8x$ks*=Zq?gLN;RLt9sT#-~=~j8TeK9+2UNHNj zTmhG|$Z*_pcDiw5Q#}QwOq8EW;5Eg_xc*c+9MPD*ZSL;Z@rhpr>LGH5;mBzMA1#UF ztUlqNSVyzY_ugp#{uFa_16MUl(k5iZ&eKatEp%fq|?nc#nPu67~ zX7%hGpq~lhvWpIW;)~QOfX|SEkx5&wU)!5^3FzIyx8@u2>D9Tf|L!^qI|=gdBrY9d z(~aXM`-qFgW&Ig<&(KDm_RC?u0FY2$)VTM(p5#~2afNqIKeH^&Pke6yY8MO3_&$qg zz2D{u`YSNjlt(fE4?{4x{%~cC z&PChkcKRw?kmlfygvncE`xx1{MqW2`xJ|)@r_%Vuz}inm*T;5fG|7YjZQ zI0TThS9rG`3B`{?ECd*!_@kV{d{8ud2=lIhUzm9Nw^Q1=Ko7QV!=7O9IlM)eaK<81$!}L1w zn9%U9fVVQal>yyTAA=o+KAHra(8!H&B%^(f8|mQ2gkcrH%X@nvdh%H^NGKdT_OJno zzD2WIs&}|Md)9pQx3qxM#h%HRe;pqi3*A`SNzAPTvK61lyL&U%uU7WEdj5xhN-ify zzN#Fc{~GMZwgbKs|CY7(Fcx4vyY@1V;~ zBf@|trX$(dvl~`|dE=eeL_w|^c4*+6P3O;3>n#UzD2`wAz`1q73rUg1|v1OcqT~D{| zG7qgLnkUVUvg?^o_|8i$Nj7_keh8!i(+j-b@L1fKJnNuRF^J9L{4FEck}M^zt+K}U z^FE(}Bw!U%RU%o5$~SNG*ZDNf z{`{WhCaj5cP$p|ldzZD>-{bUsd@@uWJ|+$*t;+_JwM{`kyipI6(I2D&E!eI<)Xz`` zsAhwxM7=1|lv2%S0ZiqFPeHHeONqzdv{(ll{^AwrnfWNk{O`JaA7=wST1KD&7VF6f zmu=&`_4Bhy!*-J0>M%4LESt|Wp2MF%y4waYmK!}!3~Zv=9>kr)B%ONCM4IqTROS5S z8>5mjJfM~cEBeJ6$b{QW4W%U!8T^6vE@|5N82dgRDp> zv#_lEieGa5y*Dd27X}n-V+u zlQGjC3{c2-X=W%MF3ZYFT;t35&d&TFQJ+UfoW;i=-)tl6BpSe(A z%1{iRoNHS*pUgy)r+d??eCGS>Ot6}o6kgT=NX|jF90?L&1 zMLvQ-iEN(>pF#uwD0@)=;){ESr~QY<{(uNjsF)Lec*Oq;=VvNS;wv@NX=0~k68LS8 z@2KqR(gK^pcQ!k8Gfv}No|nJA#kWAE^Dbwo`TWiibdJZN4MmzbmytlvewV;OL;i90 zDzk(L7U&glh%0qiY5{&nfD&sh4b=F|uKQdz&W$c(Oc3K26hxvXmQ+=w#I}H4y3m#Z zB`fH1$9g*0P&_l5C?+(~jz$$3PC7Tq9d)-Mj}Xk~0vyI{#vLGsh#CnQf=BAmQ>x1H z{3RE!`5^+E-U(!+%#Cv+`A-%jP)|x#qphXsmr7ZJ z0UCR^wo%7)nBR}={VCj-kF38D-k0g?JMqK2GWALn`0dCE8#25gSe!?eK@DlIx@y>DDS)m#a$J z6T7sIp{C!f6eeRXVKh|R6o!eVoNxsMy#95kF1)z56E2})2924DLb&Ej#@_7Zk=Poc z-2vO)eYieRLy})=d2aI{12WYB*@3~R5+^+OOg9Pe;+EfIQ|>*h4!3k|>oxNSPU2n> ze{NpRi_OiVZ_Ie73%x zvkv3ZP1Ox3X_gCnTK3ehtmuwpxqt-p-AmQg#t90t-@f(NlEMx#3YbD0;oSI&0`avl zeDOfT)&ph_BCluXH{e4Q5G^GCO@Sf|kyN6!1mpS>p+XFI9n-PNnII}NYt`AdG^f2T z`9g7SgGH?LZl0CV#`eZ)gZ2_NbN_H_@B+@Ja9m+K?B7=OgFNi}QWUNq`~QEr*17}0 zdyz@t*{=b5nxyO72dBP2`mk1)!XxeSlHZB%AhFhn5Vhv>*zfd}KE1-j(w_~K9|v8n zYQN?MP|PTcxLFz6aS@vY?buG`>d9_lSiDjm^pVxIe34=E*+^?d*%jwDLRg13JdcRP zrYRGJCigzEn$2^A*d(AzJGE(GcFF7SRX>hcD;-IHCqteE$va~2q&Biy zYm&R)Dx34qGt=cA8?($lYyXYj{V+N5K)A0`xUkah%Bo%UAvPUv!2TICP3a{#W&x49 z;s|^CxzFqd*MB(^=^LYUZVgOH_rrUR{eLci0C!r_z<1dF(*(n`V<)$gsz=mjveoF& z2OQw55d4n2)y!Wrt+gJ0CwCbYkM8+Y2x=SNqP^nC+E3EMY{)d@NqlS@+8c z*oXGhn`++;4J$k}^T2+aY@9F{i?$_>_|5->8Pgc&`3v1gXovPosy7=tSry^N1yu4w zhF=9=zg6UB<6ZJCy+rJpWUipI=1W?M45SNB@;rRZI82u>zb)@+v2yYK zupL|#84~7cP*!pQR7VoN|Cxi)8VB{yIK2-KGk=`S zXRP1N8+3}t%y}%4mjQ%C6QI+KiB`HGV(alCDs*imYmXos|03(sElBrWRxO_-4hA2> z#Z*_ss6BFTyV`v)mZu`4kv?kX3>2mD@@?s zqTg^A)ZusdW3nlk1L<*jKIUK1o5R3J=T*%{dB?Ssk8VLz&_8dt5`1=yrfX8dU_r(O!ZnHC z9VG`kkSBCoGpT26MB81I+ivg?N?iEMisJOtmf6>}W1ChcP6GBTj%3VR4AUZNQpfe) z^(~@f^Q;Tpel|klGxVLktH4q_2kxc@59V9Vo0T_$z9KzvIq}%tgW&RLJ7yEU@|yBn zOdjvZC%{Tr<*#FcY31Aly%g~ zRD-9!nGLDO@>J&4`8yfum*gFc`&v%xGl+THvol7PG?gxJRdpgq|0!!Uftg5rqZBFV z&P_BHRbE5EyPs_Zcbg79Y<_j2RZsSnu1NxTM%=Up^Z$@+j7CDQw@qDc41pQFByy%nf6zz+U(Co6b@z48%>p>nVU_;_(_)kFj zM|ARcjJ(KhH2^AR8$j@Ki>xibWSWtJh4qjh^DaRpA5Gm8n@`}saR1D@Fd0`ijOy4K zHc8MfcTQD$u%@hujwqh3l?mwDiVcp_*l9`DR$p)Id51Tt3dH)qU(_t2Vx6Qn5}Ka_ zIKgM2fM;xPE@Is(Nhy+^o!~3$*Q3-5G9-ab9TuiLX_|GH^1OpF5ZVmB7VCswv!V&F z7Ti`G3mfL-{2mAj!vZwTn$WZKVSvT^_I^Enqb~Wb>wDEzi(UBd0?797@n@EUw@!6x z#o5)UIR9;uSA5t7mUK@c=B26VKubOz2Z(X?nuqh*v@k4#uzS@WL?H!O%w7T@{1ae> z{3M0}P3_vUEW8Mx?JEblST22UN?oo>=ybJK7*I0tzHE_kPfxnm)>$wO9ovRan;uU) zLJPKJv$Y8vh;>^jkl=7x6vJqgAJUVs`aFB*Y(tvB;HU+`VyY*Yhv@OLwtULxqxMpA zEOVb=>_Cxxy0kob++5;2PKi{gZ`}@f7nYs&Lr1FQ;W^Lt&E{Me%qw#!F?Dz6D{`aP z3?zCOo2!KQwdLSv1pK2=%~(wpr5aU~8h}U?ZN>xq`_}x+mRIE`W{DOipF^CP4QVm( zIaAWc0g0y>gAJrP`&&`14i!d+7Oan!c7;BZ3QJu?sIh=cV@K~wQiiBn0!x})-LSlV zwrA6@xl)$!F=U$+iULNs=JG8^euZ+7eUI~O^Q3!i2HQQQXvwP(KCy#K>6 z^Ta=MPLR7nbGs}7iU#VE>!;V zJoSc+1m|wPJ#78Zm694t;@EMwfE!OB~A9O)-`i~WMbqIC9N`e(Q!Mae9I?~oD2 zcR&pnb`2cUVPCIs9`eoPRy9n0`)=)6%HV6ktvmqAa#ni~)}d?g)l2lGoFgRE$*F?i zn>`~p?FUEAr{8B=CAyc-49lj;1Ahuh4m#}^SyhDt$=J}KHUe&`3k|gl_+ZvED`a~f}Hg5p)lPP5SF;@_H^ktiiyBN*3Gfz9@`-#>b z7b~Ju)hwbCI$URW?@aFFk{W{p>psJ4ofWJXlU4O)2#&O=n!GImTvm0 z-;)QL)^km`1XBT7%JZav`r3hacbRwJCFe11l%kbYBex)oFr3tbeqWWk%5@3d-Fp1{ z+29W4;9Y3~UZxBiP2u#dgU)+^aS*ZQ`?X=h@9oN8VKuj}oMSy_-u*@M z{OwKCe}9U()AmqqJvV1^AV!o`+LTvK(o|_K0J(7MhD)ZK*|w6O`Kfir zYn3#`_@EwLf2ZYUe)R%`j*j?lu9_*i8a!DMZ0k|>q(kEs9@Ts1c^|ZB@YS?7A;vAH z_~&6)?J_;(Fq}f`8HM#_F#6=4)c6-+GMaPWSc=cBgnaNdAd`s#j7c`@v{|qLU}f4 zi0-+Ll|mvC> zBAkV0Vd5@`gpfqF#Z^r3B?N%VXRv$d;b{#8mJFZi$sSZrLjeL)D~Y=0US=((Zmz6z zN$EP$+eXuBB4*J-y;?>0M09f>tOMq5M!j1hI)UE#nt0JRh4%=CIig0v(vZf+qHh+n z(@@E=mj~<1c4F5$OA!Nfr_fw1(zi_WNOh%aH7a#HepS<_K6ikgb%{#}H*ka@J3rn; zOzUad&`96nOw%l4IwZ{= zM!(R7@K1yx00W@{vK3fOuewg%xXHveA-W!Lk5O}6MK%1xl#Waf#qlP!g`2N-;H?$o z>6Z6mvSj)`{CRWPj2h&rS-abaO}jZ6+f=fmA?}p*yh>d*qrQvbhL7GMgcN7tkXP1x zo-!^qd(ipUqv+O7h$aL8X<%f8!2GV?s&$DSRJ>f1T!6#1rfvDR|G# zB}-^aPH>KJ{$xE2Z<){uJr67m>uo6EkdTj~*An72(M4{OorR+2>T3<(!zJe$lgCU!@)|ik0`CZU zi`|o6Tn8~Vpyvqvjj8}%rp&FFup${yV>d!Fx!xR;Bm~B(9HHEXzX)fiD zy=WE>{HEQkoL{h;4JZX-JTa4}!$3gIxVFqh(=^L)KL`cEepdCw*&kuGAHYT}H-OKC zcYInN{oCXFhdaRQ6Vea&3w{r4x-Gsz+ukZd^H+&kQzQ0YmZBG8J6{3!N|)B)nv*y9 z4k_HXPAF&JsQNi3PvR5*I?s~xs_!LiD<+Z6JSD*y9DUdxG@uN5<(cH^pkdm`UFP9< z={>#zrODzPl9{&d`kRzb&J!nJVuNr4;T3yxK@!$oVftTey#yGSsLxW#aV5MA3o2$K z=$Q$A$tbenX3r}+a3-M%IMoXF%+w%i-IAz|&tNir`tDAi`6Xn3!~iSeThojwZnkzb zcLh2h44NEjL6!=o)uk}c^|XPPl~}?V9tB!(-15@tEW(8gM^evdqg;x%`+)la)6@mvkFn8hTe@41}K1iMyrg;sto1 zX(|+R=u^Op&E8DQqrRXfecqAf&dkd+y7-fE+`YpfDHAt#{)TPVwi_u;&_n`1reApB zji^m&aYxB&DOvsw2TYdW{wIi@ z8M(N5(6p?+sfU3p$3Md81ccV29#WDvQ}Z=i$myd{BW)P*$iJ3&^f| z3p7oNOIpbG{tdh)$`d$GU~Mx$?-tHp8!~ycCm;R*rD*UW`?!@IapkOsxBJ6xsa|h--NK+GVIRCVFv%ivnRtk0cQ?Z=Q8i* zlKD>;ljsi!+FI!9u?GAGMSEC%_bN|W^Z#s-0?z@if!0ZVuKz$L5Ej|5=&jF#Z~Wgv z{*PCN*r%L=qNiYcrAuI=s&xVvlRe#o)8HfbOg#2Zg+nReHJR+ zTA4V^y$aypw1JCD@RV*?i>*6m{p^A)MbHU7T|@{6o2wx!Ml3b0Pb}p$%(CoiPl$Md zp`6!Z^#)2;+chkdxoBt=L51_&YeLDNR;*@$-5sTVRk+$KU|}?~4YcVosMgW;rr~SjISK z0x#?nU-gR|;TC!5HQbnw*tA6Pf7=^L7#Rm#b(ZH1zV}j*LJRR6=@%#fTZ9me zxzEhrNeBx*PnRftb+^D0Ka(yWci9ATh`N1ix}W3EtlTt}C(`)`Hr{V+(j+#GCC`{|*2};b zgJ1SZetN}!tufTLnN?_O1sQT0~3&ePGx=kQjE0mG_U+`nQX(&ifRxk4ec^ zApP+Fpostb3dpM6$JTv_GC_n&1~Tg+2U#)5>}-IT)%M59J(>go4$?kS^oX{+B2F3@ zeZ2B?&2dTi_tz=6aSAoV4Qkp*=maWN-Gdfq|20lSj&}P{DdNI%)%vzvX)uRnJl-<9PvBtWiJ3;OK^69i@kQJV$i z=HvI*NWQ^oW?l1&{wALJKF}VA2tq!L76Evq<4)&Re>~G*Zd5vy3bNbT;reY*?SnQM zLEhqgaesP>l?=0|XYv0WiDpR$bf-Rz`Djp(*>>4eqxQGLwD!B}mHG@`4r{AFMDAo0 zF4*X_v8nM#$U=`g#F!SY-OOVVYeQlb}D%88Z$#cgnHiLh8WBjrY z7;LYFucU+EaK2~#YsZ{5QC(BeMfa8Vn`Fj{;`$l0PuT0VXW`Tbao5z*(wH2Q%MEa# zmp)-8FouSxN%P*b&v-DX7wgZ;*%Vn%@1o7zP+$=4*;v%9U*8joUu?RWZ@1{bp~cS< zTUYfEiyJSy!Z%0>nVYjGj@^GiLltR}gRiP+H3WDwZR_Ms=o5S7iO&Sv<|3Aj`WdHB zr#R9r5l_2*|D3|lufU;V94hzmIpP@qWeL6;SK=gp<>w!|a_DD)Ysa46lA~HYg%I>b zemZLLlb}aucj}qGp<+BT>cd%U1tkLkj)ClqTWx2)6|97;QtG|RCzp1HCRm}Gb~W>% zWlg(Ynv5Omt@=&uSahz~{E491@cCK0Sk~u=GM4Yo=Ay|-jf%(&^wk500t^m(nsMl( zkDUDd0Nc3(2iY$lIP{Opsc^{UuYvD-9}WKa>JK-7|8F$4E`MlpY^*}mO>^TEb7f0r z={_53SxejmXUEhpGmCjVwp`kZa~tJrlJ2zbWyDFXZY($FpOm9IB#l+~V%dDpK-?tP z?LXzFiTNAxX(kmtuaFNv)%{?rGGvbupgn5&%>F9-r3|*g@eoN%H6>9NlNOf1WkWU2 zniGTYQ_)-e=5cowgrT*ywQ~NvQ$M~@1)>L~1IG-YGF3^>KV}3J-4csZN%E7Ryei~2)KUK2 zZ!Gj|Ce1ulo2SR0dhV6J6wN=%PJKB+Hs*fYg_#NS1Dh|9?ZHX1>khD66?HtqkO0Fc ze5;f?spXWoG{Fc%q)pq!PH%D5vejZKJ&xc!R18e1!g9J5W;v~?_~tszmO2)wtR7^N z$aUTEVy|YJK;rQ>$e+?8e|Yz5{M4q1yrWUMZPRPVf_U9$RNzYUh2{o?#gF#zCuwIq z4=jW9PB?tZ?9U}Cb|@tyF2+BEYYkRsK2@(*dP$MAV)8F#b9kwn4KD8(7u2(O_*Uy^ z)H8aWTlOvXlGjtMRP<_yZRpa5=#Zt-AnyB@D7cC-n5W-$M;d#GSA_LioQ#Wo=b3hX z^Ds%e-{$=u1Ruuut`Osqx#VEDWte<;bK39fXeFWDnN`K4!LSP2M8$do%n3CxCte$z z5=5UEZ(mJd<-5v{Z<$_a{z>^1OhN-2 zOEPr+9=h%1IE}Bk+{4$Tifp%cB|H&C;~}le z;sFcy<~z=)uTs=rKv6ym{+=dOe5tIl#*lTA(n3^NZ)n|{cgws>_o0QE&x&xh-A(?U zK?|~Y;&y4KY(;6^k`PFa8*3m3%#65akJ;aG$Iw;7Fy^Rnjr;$Pu5XV^`flIfnzd}L z(sG%KuE?2EnwnF@Lp2LC!#tuU+9aj4X@ZDntF=;7%mb+fy7EAtFf&uYLkGn(EEUuO zEDw;NkecGz-^cCQv+eua^WW#?A1b`>&wXFlbzk@Wo~dIwQaucmFCzDY_StcRgAL^} zBf|plY%_pKzpmV%xe7;1p0&yM{*?i=Vb?0&y;h+q{Yw0`z(E@EvVvB)kN03S&iK0< zPQ=GkiAVKC`O0&a*y;|``TDq(#$A}*cN{Ld=FQ|fk%?lB&!4tC|_qN zVJXH>Fcp^p%R6VE!>oXs?cABlCwV@3(yi_;Kb6~wC^p@K9fmq=`UahqayDsSFv#oF zAykyplT%?N@S9TX8Mp?r#SLIBd`}ji9C{c!~ z@;L{`T9oNl$2eiWc7I;dER|HBove}Ic%GUbidwID8qZ6vE3ryz1G!!;E941Q-|;pp zbOH`6d>Tf^k8~!~Wv}^B7>}l7HXnUwv*YNeNFBsAvwus_*O+^+zMBfEn{oR`R{vZ6 zewVj1a&BT!e-$eLwkbRH_xDp5SB#dIar!x(llbPJXw3${I8ANUMTg(GNay94`--z* ztk|lXl#eAHBM~M~$Pf$tl7N(k8%ot+vcsOYh|T@!Uy1VkzhNlCJ9Sb3e6J^Y;bxEx$iR<+v?7L(in+hB_H87NVqm2*ii>2z^3*4$PaiM;n{ ze<6sD*30)n2pB^uDvaX{?dm*E@vsq@ujeM##H~Px7p* zrK|iBl0y%_T`$|YTcsvJ5sO8bI|<&@Yi1K(M$Q2%&}0j#cgK#ce+kywZY6(u0sd3` z-aS!zcD?o79u7vn--MYBp1iGK`adLw@9Q5+r1@OC$7D08=fktHt;C5SyrU_AZU?xz??Th$y%ZnG;!TR#CmpO~P|!E`4;8$+sX?i!biG+Ig!PL5MW=WyJW zBhu>~oxs?oO|X^zB_E1;6LGM6k_^gS5*ZYe-yCL@F$jv)w1?2kj)(t!ADwTp(?o}8Ec`sXY=QICNcK@53pO1VC z1bG-4%={Ms^GB$&9e-U-%XFQdAE)LEZN`SyfK@nen;gZ7cm3-#zG3AM&l@#+O}StT zflRG}9rGqVtpXe3bP*uBe}@6uDLE6;eY@e-d3O41=<#}k0_<=hWIOJ}osbFo@DX#_ zG`&iJnxH>Xs)mz;335cJ5*Tp;4Xe5!>r{K>zFJj@T87b)CrW}S>{z;vd7gwW zo5SjRmB!qiC6m41l%&fBTQ$hh9)o3(5i^%kTy>A(c~Ph61+ZGk7vVwisR8aY!P=0| zLjrXC;At-VE&zohu@E+uTjMs__R(s*KKVzO~zDuhAI4MAM~7>9y(9AjC7#riQ7IJIc68PnNxP8 znD(G!CSpUSLEB(bxz@D|7_tHkyXMXok2(hw3_pdadO*WR}aV8i&i` zrm7LdKAd|`-RTYxO8*|jEF#FMRvsQSTQo*2^R_O7IXIFw)V-<1<{8T)mN8~w-;2v{ zm9AVM)BNLkI;6wgk~D$(IKLne*xs>>lgCAgOgGIsqWOk$ilyb;z3ltw8JV{e5T22(o2O*fSypz(HdU^LewETAD;OaL1Wd$-!2e5?Kq>1{l*rE#q$_ zE-bv5)HSPZWta$OBNWfx?Cz_E<=g)9DxJl(?A|pHUl;)er!?chvo`!QoR*0&;d+c3Z*Us_uW|`ZFcA z-DfXGa*vvP{l75D$N9~DO^yl)x6F0Lcjbg7+?Uks^V$vGp@zGaa<-l6PhMKqD!UNr zo>G`sx!={S)Q1k}DsHqZ9cr~>@xwkOi%RfslFftsYQmUT2*2p6>4^)FJw7((^A`I$ z*ut{9v+W-&XCgNGO9o%`k?u!~5e??}p0t`{Em%=_b3#3NrL4L#))ITdJ>Nf$qJiI^ z-=|?om(Kx91O;I=*(Iy*Sk;i^ZVVwPtFxUH!%%HQG~qYaRma?rtOTvO-_@9rU*H)Q zu;btrp%HJxr~6XV1$FoD-+#+IUw`})h;YpJzf1)9#v&z3HufJsIK*#w0-pKcVBqfy z|COuqh>mTIj7a`5(1b+eAKZfnlyD-6%pzrlk80s7_9~N4xigjsg?RU^eJYwXyQJJ@ z_mJJT=aRMuS6%rfQjmjC8FbhZv5h{0_%KZVLC*sOb&@U2*;+OTZ~HtEHP=Jlr-0?{ z)#YIts(W-5<;$d;P8C;tkZbv%N^Lh5UF%_fw>6O7c??eeUgTQenhrae(i{w6K0wO( zT(?C-`b+6fL}&-p$T;G==I%w0J^Hyr6M)1y_2yK*mhr&l)M|})B7uYKLmvrsrbJvQ zDxGz12T28ONpajxmPR_}DdR&RzsRRoMMhWHaFK-RR)!F4eS~unsUU0MmFXjq=2*Fw zfk#lKyUDYh&I%~Pv2W(hYy(lrwEsh*W$S!I%vA_Fg-PwzVJJSlarN)cy@i*D-DSu1 z$32_zx*TB}y%e2btJz<7TT>w%;S*RfH)3wRZEtGT!bcbG#K}-)y{(LfdRHd_4vRM8 z1Z6n6z9@JV&V4%%1>*7=Y~R%nQ^e;pp8p0hKANc>{Wx#-Qsn&igZz7*e*Ox4Cm~%X zkw`uPQe3amN=;MP;#kv+d8oPSP%Ebu2}gu0@AWK)E5F8e3uh` zAI6fSog`MUeZXG-$r95_$PQ_9ydJ`J;;y(+wHnId;F84<1*e+gD1!m@n(gxt=!xm#@@ z_pd#~Z@Tr6^%Jbb&Wj#SeS@&7rk$6NbhJ=eM_6%JZ9NnG`E|ToRyz5jU=beH==0*h zrZ5;!^UHHD(abq8r|vO0gWNXSEWULZ#ob&h^*(ns*Xti z#{vyxmwS`u(sl4jToGGF(F3|VKk9A3%dIHtgGp43@jbKtaecb4!lqi14j&~Jd=|>( zR2%C5DEBO2X}d>Fh&0e$BnN{Zg>_9RG9xM%7a_@%6qMy?HK-u_Rq z#&AN`R8gDbXqAHvZE zpe9;Ut@UI|}Msyxh{_+e-x=W@PhSkS3S{g6}%ITNf1*S%9?TWXVG ztaJPv^<=-bz6vcfM*nh`%`+z1B89cYh6ba%t<_=>DH9T3HQu*`ETqS#zY!BF;|;fz z()8oc_S`-{?yxWGaG2F@_@nnW%xboJ*$oX4-OC0x76f|Gg76>d@G2$0vgR0Ezh6098Uq%it9I;QnCa#1fztQULX5X_l`c}ds5?0RwSBp8r&*uf7jdBUj!)>oDC&V4hm(F2p zf0sq(45+~Vy1R|jYs{t4wT9kHv$Mus=r(SO-t(Q>-|oh64*cy`K> zKmj2@dyz;-wGD?_+T$7_&8MS~A6+=M`?lYXA{~B;o0H{Q?rU81f!p0RZpc*Q`Cwb_ zqUZ&tp{Z-QEnP0Y>NuG%ZEJ7$812T{c5YByay5YkGsf$T5-HIlkt@q}xr8kQe(z5c ziMqk7P>f_fKYw67?JT+9Y3w^Gh>KvwcJ0>6+WN%Rm0}h?-9DKbl42p%4E{A{E@Yx| zx_Whc^YQ7GG1Ub{U+(Dn5_j~f94N(ANP*SxgKjcgUae}Q+ewFKnN}`Oi}n}dWhkNh-Ku;_ zc&iusP^?4O3?3MoMpc*{o2=sXP*Myzki3T5PVfmc6MPI2C!1X+NVS&Gv6XW}C0x?d zfidZp2iOYQc~cgZAFS7g9U~5E3gUP3TNkr!HH}ndE6oivqZ$RY15x=g;tzQ-GL-V^ zR(?3ny}K;>!maeus97u2UbK)t%-M0DHaFRp&{}tPE0a)Ag(#0M%&;Yf$$6)0^23B( zOI32Hf+g@0d8Kmh$Jz3jf}DAQVIFh#Shu(@U)FF)S`qz>ne9`cSq8902COT(x>pky z%G9c-yGhwuH{*;LlSM!rqkE{e?|MV4VZPhxOGSFhQBKBKVvykLn$Jo_0H;Y zZi0+j_|(WAuM|UjzOLI|jB=sbb&?E=)K9g4 znsIhS3AqyU{*$G)AscK=W~J!70l5_0r~&&d%j%gTK}czE`SG zS%H~V*w~JpslJEe;M|)6&ALf#Q2)mUpQBp(4vfB0-U(O9&ZMGVJWS3+I62RTO?*Ao zkgP{wrxY2?yX-SXZbQ!O7isnL(_z}A?3UGtD&TLI^22o3@UkC9D2Eye(d-FYt)x3d ztAFv%)YGL8#>}BfR^^Qx6vE7g>qV4?NuJ)<3+d{AQyz3fQUsSpBT%wfR>`ud2Vn_& zqKabH$MFggyiLW)ZvkM%z{xT{DG(p&en0q7s;O%OpPn5Nd}C+Ktabyi1mkh#X6?0B zzae+6_%8v>@a~xE(NFW=rlp?vJN)}I2(MM{IQr54?BB}f|9QN)1GvntWn3f@&4G;k z8tYdqSC6CWSJ??uL-~zMI9mt?ryEMkIiNkDf~Iq9Yme&l#vRCfjF@aJOrN5YiB<`E zAuwRtnYz``OaHYeD-+xwZWlXCcaV9~VHwr5%|`zFefK(@Yp^t_-v%+CgDu2{(9u*; z_#6Nin%yXzBr!Pb$?fzMQ0?6ax@Cs7d4BMubI;N2-t-lSSJ}DyGlQV^^9r(?V6p=w zxVKZh6IUkguXfTNT4tLU>vp#{5D(V85~RK+yS89Lej9X6!J`vM`C(1BVSe>A8ZAT~ zTmLs243Lb<_3$NaK0qY|XglOsz#eBg#4g21N5VG-f!aOP#@(PUw1;5x+lsoL^ssCP ze^<^$y?qmHP_0u=gf)k!IJ=0Q<-791SSCA$2rT#h)pX|>?SS7@xEHjPV7krqB(28y z-RZz9IuT&*#|lWS3#1xK4(e@vb6-_(IPbB;2NCj7>cM>do3p^p!YK5Kc1^AviRYAnDH>tEwkeP1m!v`__$yB+sN3AR(A2f z>lwg7Zr^)WHx1a+WxKM{r1-gadxF9|l$s*1tgOuLC7f`jJw1FOa%fQo$DWhTpsu+f zeZKk1ZTKlb^78X%il2vWdP%YeMK!8oi*}Ub@`Bg{Xyg%5+ef}B-Y&N4B=WdAI^k1r zXy{lV0G)1SzG?!~aRC@m6h)IdJLr%nZc{f(KOI&aa;O9i@(Lmc=;cu?lIC&#`*D>s zu^3;)#LNQ1I@Ov|Z4>wt-rr!xZ>;*<>FGgAj)dmgl5~HjX09YJJI+h_3S=pNqvIa9YgCqbN&70`zj>f+5$ zwLZT<w!l_8~lT<<3A7o9Iu+b=mzm5{*MueW{1YY7Url zyj21gwa@C)&zs0MPn9~hs<{TlcJDU>CH1KzRT3lz`=Fy_VBNNybQA(;XJp^@UjxVV z^E4|_he~EjtN^r+$$;wq(vjnB?6LqexzhX-$oMSpx2$ETvE}WuFbb%>xU>i#qGywK zSkP`Fok7u2^{pk==%KL1Jed4I|2-}djD;ijA&WfA7}e)S%7uaTG$ml=M|Nox=zZ?J z;PSLmYPkQ<lrOQZ)pMa{o7a`M7i<#v?=D2L5r2cF?*Z|ebL+$ad6*WhS z7iwe&F8PbCm{3)%>tl#r_vw|x^e4%cq^q^n9!Pb`mh&)I1N=kVZs8wG$ug<$th>PxQEk5ZUfXC{TNBl}q=$TDC0T~ZFf&R+wH zL^f{Q$SUEwI{eqZbXZ`#B^IuiX8DrB2t{T^?Z&nOOsy~+w2H3qX$h}g#kb%W_=!JH zjg7{}ae%%b%8vBNf=~sma2fR z$nhxvq#zAGEKL(E2{B>CR}3NitapEr?Oc0{ah#P~P5|oUO;f#T?OzLj5#)`qF6j|r zc)LlAM*_Gw@VFyBbfT-KtU==IBd;=!K%Rz8_lFpjNY!I5DQIGww<{@`#u>B6xUZ`s zCW4Zda=YlZM1rdBQ@jmkZ1Ffk-q-B;bEaNM_qo}sK@=0*0h;k`2dztNl~|Ke;)_*} zkMj+F4b}llY0QVMav*iK+W)#r;SR1oG-M6o6K$h@?_m9Z0GDt5xl$S-VN?143ep{s zzbZwnnM}`TCo&(F>`0j`{OMXbgb;q?0?-k-Al>}lr#*XVf}xoAR(@)!s*jORIU+xe z5v5&Ttp+OoL_E6@jF1AI$-A|;#a(Hhm8#453*qqnzZ&-5`M$J@GC-K216W-Qp`TBD zJ6tr^+g{X#LEih&>;{(&cm<2ej2eE4Gu+>sQUb0kt8t^mJsX#;y2nMZt@8yX&H{XC z-rJ~W_dDsVM^RHQ*E=nJx#4=nu!StNJDat|dV z6rP81a0_(Fr187c>%s%fs}L=EoaN57qf_2rsY_Qw*S_cyS>yeRyGA4QA^M)yuMB=2 zbiZZ1DMH#^Wjut)a7DvLuk3x1+d#&3V^}j;m%nTAhdl^3k#vBD8slq!rtqs-?+_-) z;8UAl`A;}%iJLKFl0qnK> zp<5ZTK+Dlxp4$$>7>|ii@ML$+^M?F7f;Mv4U4D{S-kYRHJvl0buhM=!D6GT+OAftI z_&xYJQ(lq5MuC9h(eP5unD+-&^CGkTi+~fC7QW$>-vz1|8Z7hsBK(L-kyUH{3oVY|%*+TX;u^qj0Uhbc0`hL|v!=V=0-zv4JBjz$6G zrd|_5sgw7W*xpmjB+So!nh>uo9=Zg?@XJ49*zstRHgfIg0y^-e@E;KGKk4Rq+|J2cn&6 zsj7$k*1g3sXpJIfnphz}ansK;aH2g>>EGNLX2r zsM}&Dj)!wu!YYO0ZAhn~9?BNgcj+9b)hRLJN`E?DJ87qy!VE#K%6^n?=!#SyeD9{H z+@BC)#jGiuYt1=lJv5eOOrbwzMv|ATU=MlTo#3^;xR-+oKqBty?_Oe~sICQq0Ug~t z?lSc?@Z&o$R{lTX?&oLDLn0^a{d`W{fShYDf@SQ$IAR*L%6JlcJBf8SZ~_B-NIpA75N3Wq*ZzHVb#)KgpfbLQfeLGy;qO1gf z$ZZ{y)-{Ck;XYtj9y(!SjCTHY#R%>3_q+;r_0IL2%gf}a;i#_Gg}htK(L8WLDR72%f@<269~ozX$p38Pp`X9WeNDwI6e{DSC`#g&6;?p;U(Y-;LYu`qV3 zF)K6$)S{2JiB8dg%^icceGnx<5+)O+tobBMA2c(jA17nfBv^=LypK7Aa*+5AEN}uk zYurkcoj{|KJ$+l;ng#kl{pkfj#jwjHh!os~BIdoi(oWMxG^)+FV1Ev~A-sO1#4}7b zHX@uRPaDESp@JFsTF>~*+Kf|P9^es!ZFw=W^&8utKU2!va!p{1$lJQZ+Ja%uZx!@u&@UsZQqD}HxOWnkqOdj4X2zRgPO+F-)|fMc}tM$el);ZGy< zja}PHvUacmsUhA{s@3AiJUVWF_=kIs0N2LT*P!g+G(4~8Kaz?XKA{N3& zC)9eQ5kZ&r5d2u##JCGa(uWfBrGxa9DzFE>=%uV0)&LD|+(`xPDcq?CAZxumex$4! zMLj97G9W6mqxy$**fWu=7yi>IzRcTFa0rrAHs z>e`nNI-XCu@(5f}HuH;JA^6GQsmnfqq~$mc1f5*7aWP9Mn}d*5w#mIL98RV(OV0XG##`4O z3%s*~aR50rGl+UP z13fL!LB{!W?+5GfTWXl{Ded?C`{*u2p*5O*`08)Nc(gdQ zZ-RMZf&Vjdg{qsKf9vk<4v(AKeftOPT?s@Z zct@6e{fJ+amX?VV?I`Nf!~l>KBiqH0uyX{8!wvNqc^k+mYHpnXzFn5Ky~@Z`#d52W z6J=XJl2v=QC791){fPXYF^L1uXODMz6?jD2w;3a3NAWD2!z9>JI@MoppPHbNMq1Yu&)I zy1d~v34kXW8oa9y|Mlsv#URe>M{adKS$|SlP^W`D;1U3FaM;DUBEoM}Gaga__Ctq0 z;~A(pzbs^A-|4FJ8Hod|kgaUq8xqa}+e$lvIOW5_SUTc3u&Ut$?{On+K-FXbEH$+$ zrR?5mRFYfj_^ucF*Zdv6C-mqc@3@YYHb$K4w8XZi zG-Tbc;7RQt8GH#3|6as$xQ848+rfg?n4Ufq61WWTbeQE6rlM|?WajVTI1FST%<}xc z6~Bm}dZZ0EGh`_-$jxRnvqmJgIOSDWMeflGTA1!*$*ADK1h)Ai+uFapNF|{RskU3T z-?zqwCQ~t$mBR7S?6%WM%Ra9u{=bo6#XHWl_*5|4L-4lv#T>A|7TQrTG_BByo0hE> zvrQEbhM$57j)*-3=|!0Uj?M%0;AdSHlR=kiv-_o5!2hzar zNXtLE96(?G3Rf*4CV0`nR>@UUiy}f})y6?U^5@8tY5v#5s@W|*gq7titbY4Bpu#^% zTWPH)wDhG?i7Ayp3l5u%C%fM4e=m0sV%a!gYXDnk<;~k_S;H$KsfruhSQd-5Xt7M2 zIMw0{WKA*iI&<5SY!!gf!Kc2rFkkgSP*w=hL@=a+!}iuTVROrPuDX-q3Y{<=Beeoq zEPakWScXArQ=-&*2Y&CKUmKX3@_RM7_iy5FzatR4;k@@-PFN0?M$#ZH*Z@CS?9^r5 znKV12ylHz$Jo+>Jh^`RGZ6cDdaWiYQv zyW>PV_?R5H8N;_cPXIVK*-rrBHykicuvQFCN^tI!M>PvRJx>>7;Tm^G+$W(=5~#&o zF($9PIY?jU%tBc&N8tPZQ=Wz%L}lba)Z4Ley*XTERI$VN#s2YDPVk&knF`#$nPQ4A z;kn?EVJ8Ts@KRrM5jkU#Xtr-|S0$>vZ{S>#&_`tiQD`Z0ql&wNI0guTg^Wi9TL-a# z9$WcT2^-7uY)=NzJ$4K4yTCq%CwkeJ41wGXbGb?eF{I^ zOi|d|lmMQ+8P$cpiZNQENpLgJuzvmQYsSmwoI+f2$OO|kdcOkp#LeBwuu6e2?2j&% z6f$|l*a5XI%!N@})uu{K2qK}LPKT~vPtm}yYizW!PFP)TL}_|$|ND2Kt#$3y^;X(0 z{Wc4KL!{gAW`pS?$8U(O{FDzddX6A1O-`m}q`L35cUTQH*$&^D$%)u+Em(mhb*c=W zDMwBv8Mo_h)Q1h8N|8@YCi27d5=zA54j8_AVncvdbN|q)u>K@o(Ub`jnYxKOv3UrH&9u3TgX(`jm;X?=?TJ8aei`n0Q0;%kW@MdG)(7K=Z=O83W5f2PSwVzS zhjgF!E=1RilE?_SHV-96Sr3uAK<^9pqq74gRzuc$NbS31|4;{(n00Y%RHmO_S(*&7 zl#V`vJ$u!GqJn=o{he$OBM8d@>}ZsF0$Ui6kmMa*5*xvJn(0JYVLA%J;L`x5V=T%0 zut4pnlP5;35z8>uv$bhl48-eVUhi9-70+a>V6m^lx>Wvcgd2$XyCv_>*X!LY;6A`s z;0_7HwIxxE)7zwt(&xne`-I{)Js)5Z-fq=xx_fZVhpWUndZU33CfS^AgFJYC{o8Es zAL`+g-K6R|{~Rlb?)Z43qr_%d%54nZs-Nya>m5YO##FJb2HV~yeFf>Ck5>CRdFfya zEaO*$?fjN}$l37G0GW@OEx}(MZjeo8gn6USa*x0t7EBX>3>W@=XDVgBSaYpf<1nq4 zbYN`BrL;`R8vs)63k)GU5*dOFzW2s8H5gOQ6l#1~koAODH1B=tSzvt@xuoNf2R$RE zU0gYQB<9i+Z!YkTVk%O_r7L~f6-v)T5Ku+py--+*)U$UuM$HLq#6=3`36dc4rNc-? zg@&AMZJ_u#g;|QpaxDmol}X}K@w!*>16_-Ck|K$s+V|mTftf9N=_0S8{&cF?edb)4 zWwhS!24SFqCbq1((A95@WD=}vjYcsC#a05&_F2AbaYLD|tU<4JqZ2+Mf?dMm)3W<& z%I;aj^RCE%+nHDsxn=lpJGy}_QqfKMR?v{0MkZ^itXaRaela4CT?1C5h30WR;@5@B zcglbZeqL!??xBCtX0L<-U5WZy_^X%yCOE8TR6tsL*XEZawXgEodmq9`Hr*VR1l+s+q2vIkCn{*4m9|O0bUvDyR zTD#?9=(PZO?WG`V?e)GzItS+CB;+`~d_k1_v<;p;&aV>l?9Jya7e@13sVC{i8n_6a zg#9+RH(+Qo%D8c-9%2X|9j}+qk7V=>5+v=VdB5}-%ezZ&17qdg z+9Ks?*lcOfGt!+>2r~%-eR&_SYp;moJ&vavINz>H{)whrc-nNE`#x?ud;c0`v~s$m z=H}IaIczQz@YKMY83*} zU$L_+S{UGsa~l(TE=5oV0835$@0OY{v;08+nn%XOcNMZ;=+9FNWen3TLXQ!C{kcBYUSmIQivTs1y?W6t1hH=;H$oDNMfYnj|m zx}Wh414pd+qb1g0r+kzfA2@T8&l$Z3Le$(m;4Driy}5tiRevAe-$+sdrfDt>c_JAE zYsEHsvKrc&Vq?Q20#G$NanVu4*MSpDMFE0A!FJdZTMUbGk$W@q!Y|R$bIYC_*;c-1 zyA^g=*kIeoWCscrN@;6L2}QQ(N!jIf3U&4Q&b=Rj4FRsplw>Ys^~Y&}?b%hk!&PVg zq7{Gf;42;grQ#%Kw*Rjn{e1JhlFQLgKkF>NgY0{lqr2L}H(Dn7Sv4#)#m6qnI4cts z7s3?SjS0qZdri=5x3+@g+lrJ3ps2f$(PX^u@uy=pP1SnYuD9aE3$i>*M*-CJ$yi65 zPrH|5f+F@i?#oNB$LHl6tEu*&WK3KHFsU*Kx5Be5O&DD&Vk_9fC{`kCS9|9>yg)I< z&*%r=07u}_L!jN9MmGVBz>!|*@QH{Hsm)_qMm!t_{B*B`*1ZTm0b9ue+XD+#2{GvX|0pYGm7i`*qwRPEZcg3^HDR&Ilq!dduSv!D!tf|{ zhYKDXA@1Lp-mHe)Y*%pU9xj>eRZ!AtWW>&3_gH^NxM9wceBzMqueABmIoqsy8%kit zJ%hNxcAR8^C{G%yu){#VubXVPm#qqL-77c4MQ?}B?S9K>BxM!L%r_R4t*|mnZ-lpg zCq0vQTQz_;a8CIXQ1_2$d3`vjLkPB3T{8>ycv+?acKG&#!!vT^;*Memp&9GB%=@=- z-E8%;<|N_){4-l5+ieCQNVMoI2!Y(P>X>CF>!iaijBV#ym*bHM`~i7$BIACF;#PUl zA7btAq1tN3z_wP&EaNWgM&nMTn6b!-z*`9e(xgO|qJbs~-Y7MS@+NoX zkbJ&O!&2(ST$tG=ZM#8wU6v148o zDCz|Y?!X<}b(t_-KHtD(Ye~DJ`eU$A{OFI_cV4eId%p{`X#ntRz4a2s$C={VJ(e(C zpfl9r{e#Ij)Aa&K9thW3{lk{pXgW@0VdiJwgI%L-J;XK>xo>zg;Iy27&%Bj_WAgz| zSl-ZJ6O(!xz#EGZyuraW$wYz(6EEt#gGV13+EJxbiQ>1)F*Ce8PaKPME@CMY{9>Z7 z0r1LHybeilsVSch2M`BT5aZa__sF$sO=ndWDqJ0!?|}6Hvr}(pFQ3a<_?zbjs4Rzd ze^a%xyj~QU3|VPY8=I%>f0;g+G6Q|7se87=I$?Pbrd$MmvKb0baUHJnseE%Ef*Idz zK263}_)+=J*0>Zmc%Zd5jU7s21F9By%9h1FI0sA`Jv_og=?-E?dP!kp zGo~lq<1LpWf^h+X4k;l+!$i=?`CWPpY=irm)O=W+ISZKU3%Q%CMH77}wSfY+)dL3J zk%h8GIo~`e#qMk5$_r~Jf{&G-;0#NB67V~3FM&2l)1jQwer}yK(H^jhVUtbYa1T&z z52QYE05+DheIe(vGElG@T+5w>Xeg;`lVVCyO692$XIZa~zU_uJInF5%bW62fK*g*6dz zKk`~56e|d$%9-Y+2y0F%NsB5|s5boFT3XAfJojZXfn2M4UQ z!%F)BE9QTPwolIUp|u!Wixt+;%9qrk)t`qLaTysltAn<)yAeYx^!yd9JM6VP+yO|! zQ_pwULvak3M>#VY4-XNXssL^HK?H*{6W>MX^wh203R;#&Y=+ZP?G7oTDOiMgE263pYEI~tbE!^A8DO|e&5?YsrB{gWi?Q*S zuhHs*%X^s~Z^i>;tHDHrq<+urR`s@-q{xVtpC}sdc@!Goc}y^{9sYnn(Zz3+3(-DF z$c9&sW+s~L)wYzy((1{~9=dwCIzIZM;OFF@;GaZ^>Hsr~4Iwu%Y`cQiprb@D9kQ@j z1tMDv&33KLPAl&d^2u1VO)iV!F67p*MU}QVc{D-?hm9S5r1Yr9s4uQ^xVTr7vV;Kc zotIr<*0G16itO0Nj!f?v;1x7WsBkup&^-+jJI}sOC8cn?YO~TRWpGKgFtRmV6t|Ry z$X|u5O{}dg0z*84$&{hr#i-{uuP%PsK2kBY{jzAN^Rw^%aaw;4=mPP3{eQ*pAGl)P zdvjN_y}m{1OK?q&0oCEXtJ*QPFu&)yfjU|FiFa9NgS%MB{p9|T%Uj5d>4V5k zIU_qh?-=p_Lu#=4e8caC2IlG7G*%>cW^LJN^^@C0E1_->XYIXwwfGE7W~$$mvbOhg zqkq7fce2gvrU7D4dVKR;lzt{;N%A{u_rK?SQ*FsLgQ#9GCvtG`d4JNXH~mw%(p7p| z4ndcW&4Zr)LbrarZ6j`#EyR|CmrJI0b2NTQfUBp3)$E)H%ui6KkEr(IAflysQFOcE zA{*t`_Vv$#xBZQer$#u!u^vQ++lerMl^KKl3n}ZOlX@@lLpit(rusW|s-6xjgsV91 znSnv?fMc*X;_(e338hoZlk)LmY2Hs%d7swV;DMx_Wfwap&1U%{Qk1Y&?rNgpS6O(@ z{joW();rYoX3=y=N)4A>J%d~d6P2dyBf1NaibNlbH9?n%6PKGA$TdP}mceZdbJ$We z0e9o_o*#&beIyFhtV8WdD*ah!347(iPAaYZu(->+RFc?1_e%4gZJ6jz*9;O)$sP_D zp6dl`-7kh_^IrqB2@fB$#|UjTmc}t_3)y-}@0|Ud_k0e7$Wg${^=R`H zFh=}WQ|iyhD=9#9q4|;jK6CjyYr3s+#V&E`iLXBCn>c$!}2&&K&oRtSb1? zf3u^qTe`&JUC)yqL3(rb$XN1Qj}e!`Z*c1~z@fpM)`Z2h&Wn*VO9_!n6KRb#yPrph zQ@#XLcw@hEF2yvz38o;M&e7(-PpUyo+uB^6{a&oBu-FpIw8)-}O4# zu3()22c=bmB5IJduVw4rgrscMsAhE}V>sE)GUJf$&4sh{0`R!~CT10lJjTbi%2wB{ zDig)5Hiwg36sBu1{b^z3*xV0mdNDszfsHWng}Yiv?7|C^1x`<&|CTPs=ag6_S>ppt z_1Dg|CzbL~k2%Aix+^GB50f_a+RP8(&DYI_2t9Sq-cQS#DAnbt)9ak+?hL*ekBHU& zQN!hct|nG;DqytjS&(&7CFzLK2;$Ti!M?xz8nmkf|I69xIDKEU?Z}=A2F=|uHKTTy zH9N$aGQd%k2~AlgZwR%v7XG~eLp7_FSvSf$Kx#kV``PqT$RvJhR@T@*{=iIDJx5!- z0glE2X|~XkRRR-F#Hm0a&QCO3p+Hk4>qeN5n6?&SfoEe|9A+_k3O;8Kg|i>uP`!}G zCkXJYxGQQulzDzllr%zD`IP$1Wolxhr#%-D(b5OCOZA)EWOS0p`&MS6lehZ<`S6V-A z`?m=FcwsZ(HZ*~E|Es+J2d_W*t=*lybZ=$4OC;%GS;Bn6T4n9#(yiDF)A;rerH2js ze@n;EhwE~d66?;iB*VlZP6b*t$bQ`ZU{w2CUD4LN>xJCi-pO{crnYwYS!g`Q=!=xP z?H+3{n^t$akawHZMYaqGAQnXy?5KDE+nDC<#%*#n!-y9IP!Qt9Czlv(-rCu@z9j4H zOX3Lu6gW%PkZo3gZp29@eeF=t$L^D7VWaWeY(fXsLYqSkxj7BEyuNfEL@6(TRH2RSNURq zT@ESP89lnTx+bU7;mIo=(_bUEnvU3H62ptah|NV?oU$$kj#g(9>##4#)z!7coS|5h%vWEmvAz;Z1Q$nLC(KQQiW zzKT1e|22hz)PpmI83Xq-&e4F4)s48qIg0Dcfx(3Gp-E?0n16+tvDo3N`N-Jld7A0s zAWa6~X{bDT&C!k;eInq2#e{$S#P;-jgKd-;JGOL74h%=E_t;Q1D2%{+Cw2A7gZV(^ zuIG>_sXf09Qcj;TkXnO>Dla5b-dJF-j1s4`#Wd-hHo+&gmunqS-!x%YQFF7oKWHL_ z)XN!(V_U#|`p0z*sOw~Z&3a;eL;v&w zc(a3^mxuBqh00Ac3nP>;cO+lKjAn{;i(>=$hZ3I|^OjpRWku?WD~GKu=fk*b-&}ha zrk1j-wXOh!0Ykp(2~_ZEI$}0$MBDFk`Hepc>z{e{k7}OwGmvdt!-y0Ab132J^Ng#I zpX!6#?`61*ZE}4wS0Rtz@3f){=u^dv80;u2dms}+ly-bL-W-V(1G4G$wt(m)DAN(N zN2n_T){5AFVMKD;Mm;?_t{T>pews1Ghw2fW1W?!$9`PWzqzKRi!g{Q!Ip^B_VUB`W zNmrCIf+D6Sx`buy-thM!F5o}k4So#VLSk%BYa_)s&(ru*F2`x4Pel%*EIaUA<_JhR zzq4%1u?Wl^{ttx@l#sv}Zlw1qxFz;9eAuKTM5~zivACK&nwMduducq`$))&7MnCAs z-_rdp#b-ITQRQ}i#5%)Y{Ef3MUEv3_r{pu{eec%iG}N3)@y0W!%p z9TBSWK}l;>n*jR<=>RttFhL&eOyU^!vgg^J)Va}BRG421K@7kK;?*lw=W3A_Q5MN? zq; z%r^j0!Gru7jN)x}&OjTUvB!Do#&9n67HSAkKfHG*M97*$Qp0CP?Yjvo6WZB)?R~^rhad%b($!md1tSjY?-Bwj<@TTl7YLEhF2*gSk}vc6VUh_;q+VH9FUq zjzLMt8yNmNXv>#f%w5ZLN7z1=y5^er3YMdvn|JP};w-zp!kL1@inq?mpm<<4;4)5} zsmaOaXWr*zC$48dvZbR@6_rV}&ercg@{fG}?#CTDTeMO78IS|YyWAJ6cd9b>rRP+e zdbHoQ>;X&;%Y!O|k7hlft*8zVNvkEj&W)Y|0fjYN5pRS#S|fXU)Lh-)a~%`i6_X}c z(7&=0Vkhl`fa`oN3vg#n6({e6Zx-2)Nun4J*^y50tZ{O~&U}2uHcoEJ>9NMn-{(&Z zQp4G1ytr&E9RBSQ)^nOJAv#y0I}4T7yPq|?ZK{_YxYQXnLICa)XlyNk0gNcIB_gap zbtO9OteFwVrgf4noZJq@=*_tk`xw4v&B>5OnIzyj?WX%o=uVS5o{aQzcJK{?4GRu=zVu0XGq(bFJj za6Iz&1S(Po6mR>Nn7)(dQQ1DTDel3qBZE2rO=wrK+wdCV0D)->z zN!$EkCidnYz--L~-}$?SuU?GEGF}31($6=O^8xxhV;XSsA7}9g5X{>Im`I&Q$bTOp z`afyw+M#QA4nc?Owy}12wwzA-7WLY#3z$YPgs`P;O#cdC%FdegOMR!x1YR_87~dbI zyf?eEaVH_$U&8XmRAisO7loC@Mg-fL&#_TpKBHGHE!lo$tR~Jk3?t{oLE{{@uUZgSMo?y_u&;`v3$yBhT1NMW;_S z{0xzBGJ*IWQzu?*F-3jyyOEoxI-;Ld9(Su7+*CmmJFEZ@l&Oar@9wpShAbXIH4T0; z5UrEM1DE5<tO#_CGa2J_H&+$!!yi=FUf z5Gk+K)C|#T-~d|Fx_scE^+~5*W9D?ys*?Z9<11Q6ut5NLLrl3r=No*DtpN+Q)8y41 zx2c^3gAM|(eN4^oMont7hW|L;CE=4Jv0Cq%w5Z4&sWm#+6uTC-LKvhyt@0{1!h+z# zhENZDTPq#iIN}&y=z&-RlpK&Vkz<_UY9{HzpoDgj+aYv;{UM~hQ(zH44|5WOmCvD= zJ@y{Hug46Vab*yPYLwQhap+KhQZIdt1F_(Az18MDRM~^!SG&A<5($YYR56tAt-4r_ zGs(!+9&r)yv+Z4=$B``d)Z8qDi(xg_`nOLFw3qnJX$X*K2Em-^ofTS4Imdk%!OhT> zd9tp+j4yK|Vp~|q$9p~upk*+I8^dSn0bKLW9|}{C&b@2Ae~=7lJxt<&jUV{7@X-G% z@G>3!F6r36V8_3FJ9IVA2PgU zHQAg$Rg3=R_@BSPK=W4NJ6q$&Dw{EMd0;jSM-ZjiPG$KTOc^zO-Mvt=AN_97^71tE z3;o@J6xLa1)Jke-44sOn#3k{;i?jAGKg7L}S4Ys)vb9sx9XT!5Ee_^KCIV_{A^9-B z)WhbxQo%YW8$sy~<~Qon(ZzwC64w)sduJ1>sBa$zqvWK4ScGA%uE8|GZ>cTp|3%Y(pg9wx>WF?ntbX)Z!|3v?s~2;YN=1rz*$LXw7r}^esYx zL1Q)S*9^n_K1N^~vFO9~A1eoyG@xp~Qm=JyUYd1eK#~tNRhSrRKUvY`*{WlUmu-6T zN~e6NyB;Hv--o_nD2A#E9cD2&%l0|#z4#&Q;s$ny!*T{7Un%#A!59g7!Eo(#`AxG3 zgF{RI#P`yO;tqKxXGmfg5tkYRDmz8oqKim5YuhF}+pQjGi z$_JgkiPLOxh{rUZB5^g3xIkSG`p;U#&b%t9rK6st78vX}1U2d+9Mu5$1*Mm=BWkb! zQju-nHVt!KSPQL-yH3&{(cN8wKXvn)9KCPHd8Ckh^b076T|&;t%Ur^Olh`D?O@9_d_&aKPqY361WCrW;(0bgJk=o_oJ=Xb%NHY-hXAxW zyb-nhlg6rpzf5DS-a&cWnb{rhrXF3y0xPA=OiA5#VC&0(S~}bOG_~!;pi+@cYf>3z zOr7&23_dy8tS}5oE203SS|S>KT9}vj3;uMsJ94ss?*r7%6nlz6d%10(8_ts1e7tuN zsllDW0TnbNg{c>>XSTeM1We2>Vu#b&BRuBSNeG8P6Yq)$1}HJLRtCv$wE5Vwv!9hi zz=1Op;n-1Nq-VFX5ivKcVSahm38SVKGcOPQfyaUBJ0)L@M^rQc^D+}TPeBz&vF-yF zm^VamMT%ti^Ap(5=DQj56Sb*)*WW~ikhpD|H`*iF|DDah{%rFl70x6KF=PlCI}Uw& z;5Poj`I@yet?Kx=Yu(%1qM)a+*tlf07#3=z3mfmQfju8LLjOR~Fi(xQXqO!d-a(ZE z!Ja#gYh^>;4gzLZ^I!gq%(pqC09Hvd(DrNh!dJ$2pD(`~y`Kx9QVM(GZc{ zydl$bN(A4VT9%Xg+m!C*g{oXYyy!MXGM_Y2$eE81Rhvmb3dRaspX)|8p)gLc*L~9v zNBr}YuQ;ps4P?FnNWK9>_E1(TR}o#DXOD5$jCBJEn0<&q*KwQWV~F6M7WGO~2Yyjv z6&kOtBZ@SN(nmOKCybmdbR#=;g2F$-l~HS1LjyQy-1ah|>=Ot#t~MD0-tqfHo+`Qm zS_FQ`8(ubsPGv3zEo@l;nj6XE4iO)^leO#EKte<7&XgTeAvr5d{sw6&TpzMSpYAij zeqG5yYRTamLypczbnnGP$&N=l-T+5jVge5D=#LaiA^?_mh2B(8Z4Jr}Tjh#HQ8j7W z90L(BKK0yiJYk|ppZ^1%CMLY(=0rtS12iE(WU?2SvD`S9_#aI9KZ=)^_S>VVLXv^# z&VQ6Ce=c?Zw@`pQeBql!K!9U_{Q+j`^#kJa6CViX9Dh-vKUoFaid2#Y>d&Y9CxG>) zg=+juX40PE{8-25<;f2nJ7QE60=@IlaBU>CGr9Djz!r5F8iI-bxenU+6EKU+fvnkZ zuR*wSog`9C>-!XBc4$TN+l0`A$numN4%()Lko+^)PN(wjWSGAZRrQ8t;rzW~%x_dsgq4V4v8L@f?G8h|R_| z#3$YeV(hsbjuB?cs=)CL$o5#G!TBi-yuX&Mafu0{#m7Ivqh(wJ$@SoOKX6Gvh5ed^ z3m8E-@iX`%x^btb?FRi&>zYeJo%m=(k zc?3rBXXnS=Ln=l#=qkr-z76el5_*H2{1goX1w-$dAx^y0=%sCb$L2fIMCu>d0xEzD?HT^Og!oH)$#bq@I+J`s8Lq40%OF zBDQ8|@;1}`VJydUzd^JS?NQ`3WJLe+J-kdS!7q49-v3T3%(8~KiaLi}4i8=!jkhQB z@fDxuc%ccwIN%>bzPd{Okuzk!V9teuv)IN~7!Yk^k*9r769i=<1P%C@GTP4x*ig)R zEP7O)H|@7IUq=zc0{n8efw!?^#ie33#|cAz|6BsRz634cs|K*JLSv4C8n#XJj`pzK zq?c;KGpq=1!vVT0CZ0}D)nN|C&qpp{^?ZkV`SrU_qW~M{t~VWJR!#l^K35$BY<#e> zb>a)b-00Lc*}U&osoNJimA^OpO{LF+h;@lWs5^Us>1`?grxwDV$@f(|C}HV-wT`UP zl=5SNzsvlD4|%Fm8Ds`={9)W;8ypJtu95r@k0d0g5@uUtQ{Fo5DhYo5!ZA59FyANj z$T<`+blMb5;Az*)=XZVE@&SnMEv|%AjXOX2X=!8A@(0o`zFD}2zA?WE+j~0Ya^X-( zX>J3?dv7rl)GIHrfDo>y$FJW^)#i5XfPF}KAa&H-f@nzWP z^|J|#_!Rfi=?3W3qvQu*Y(f99Z6itLl04Ua+1N3K8J2?8g+3h`&cf-Vz3VPoG0_U_ zS9I@QV+PLwXfx5~$D#NJe@D?}R8vpHz+3`fmX4Lwx8WI72*UL3&ve8iF}=i|_l}C3 z9LQ}HSt}7|_o?r;in|gp&d9cF))tZ!?M8Daa@9t&H}mU(ZQFY#0Z|LUZp`e%Cib?? zh71A4nVRZqu)8Oq^>6bhowtAa?Yq)#@i1qbhY^2n`M&Uu{25LANj|vUgtuT4 zGOEVCMiu5`lTQHZa0=7r*-5S?np+pf9%&zy@9=_Vez0)E$9zvJ7i8N%yE$o1;K7)P zevS7%65rC^m2bld&4s8rCFRQ5kAmh+ugzEXEtH{hYm<58ED#&r)cavq^eJ!P*+Ji6 zfz{MvzE|~Icfx7Mp3c&dMj-`_LDlhdFN(V9iT;lBY0DD;12Facq^=*F;#yw4)6I@w z<;CMX3z+39+CM8Wdj^Y4U&Q#q^jFxj01*!v6|ljrBE)n{lX^C8iV+pmovF5(5_#x{ zw9^6ciK`wx%(@1_v@MMb(4c4cbet!rV!lVJ}X=Gj^(=3F|z z+`ZImG9A_AUL5QfdkDvhAfrKrSRv_DP$~p$SY&d4a#OnzADTEcyy#~-5beT8x-8lQIVa6jUQmsw#PN_-59gO4vhrOr!AVo$(X{_j~e5; zVj9al_p3J>ujplu@kqdskng}9Xh{JM9ir-;KV@mH?8xXtLeKPFn&wkf@&kPz=l*&f zc6}iBi5X$7Y zi)SbC^Fy{WQmh7%eT*}yc&JVv?L#|lYI+BxEdtd9Hf0z*%;3ZgYj_UHIWCUS zl?1G33+)k@8FY;&sc`0q#yzt=Mk0V;w)>KEjYn-*g=rx9b|9ov>=xJB?SkV?(J8&QpOUcP8y= z3VF zfFxi}eM&J0Lq%!i$l6^5nD(VPI0rpHBTx^vTCdU2Mjz^@fY46X)4(ODETVXX+`to zaP503!trXN0S2wnR9I6YR6t&%n$BZtki~kXLL*J+-GhciK?cc@tOcx7=`;kK2xO5L zg8VX67O2LTd#&7d`H)8uhQg4M@>K=XuZuZZxH!XZZc-TB#L_k|2vT)**!o!S%w%Fh` z&qfTq1reHzi!-$!SahDix147EY&n>E?0Ff#nIV76fto~1eJinn;SR@kyImcYNeS2s zu=g|uT}$UChJlL&nvLl3ypiv3dlFtG7`baZP1dDU_Ao5NsZ1x2ZD!Sk6XFLLn5D_8M*G$xug8(_VL(v?3Rj6x!dxssiNPf15f+%krLw+{b zP4>2BxjP#cz7Vhtww)XKs#*2Fv+Pv~z_Mq%A9$51NFw%+;qN2ww4Jd8c@b6aTK;@b zrNcm@%oZRcH}}Pwy1jCo9ZuR)jVdu3-OG;ozCsWd zoJXXk!l;ZblPRoEJfNk8vXV~ILx3x6<`^vA3Q4XPBJs`{*WKq%y@|eB49Foid&qIK z4NqOXk0A&p}ibO0Ln6E;ra#Bg9hGMY&Y<2 zmHPCE!jXKFt!pO(l|)yMz@taKFi&|t6+B)#y*j~R{ z+UnWZ-iO%~-3?C0e!D8|U)!5*C=(4>|L)T1zb^Fd6}snZS9?L0%!5QN`Ys z96a%@1RS#p@k)qC(!=fqb?E=EmDX|J!tD@d`c3 zclNs4WRQO!Ao5D+UIS`6R==lmwz&r^bCyHNw5OCOLd@!dONS)lE++&{)BzKI(Hq;V z@3XWxwU>euhkGjCUIl5+a*Ty-{t*_TZX3mM@4-aB`h=2UNZ?#bfScjCL+v5KUHqfS zN>1i|7E-1%k&elmvilh5ch)#pq=9XNyvJYNBn@B_a6MKO3*13;c?GZ&$|=Yc!Xw%? z>~ScQ%6Q?EHtBn}RH#ATQ7Jd5FQxb#MK&d4~(C&mM-=hhFy@<$&g`4ZuID$f8R4BkB1@MjyzUjqw}2UWEPz% zC;f@P4ygIQ%P%;6M<1eY&kTa{s|M3FmO+gYf8qoV$hK3%8Y>De)GiVDNl9wm&!qGJ z;sUgS+4x$`P&bZ=9!=%!EFf;STJpNYF)?Vogf+QzK{(>*Jvqk%)RotNJJdA3*)nbD zJ$JFOunV}h0m0_Vl&m*7D+LP+bBV-A$Y7Sr^`YhD>L>yhQ*3YLptY@)HZ;4G4_8w1 zZ{g!d5{xnCRr{aQ z@qa)l|E$g5X^QRLrRZ*H35AcdWFZ%nn^ijRr&p?!wJg)3m1(QFG`(np832febech} z^L%{E^&p-55Z^j-v1%uPMLVX$23^ui;nKUfjxoBd4GbRS^GUPA?p_q(5ExZ|r(v@8 zLZC1?9AN#8z4%48#KpsK-sRv$Hc}0o)x#jA(iReta}y8C<((5s%3SqIG-<7yAhyrN z-X7lpYJ@t@p6GVVaZU~YQ}G*({5W09B+cGKydo9ncDGorV8WU<+b(U4@iz6pK5N-i zV+4Yp>MK+yEyjmUHCVuI_w*(8!ke93=!?uM$M5+KImwENdOG>BupfwYd4XpFhSixc z?uI1)IE5pE^Z9w@9-W3(j*EUH>^!DBTsDye39M}bMhKzFr87eb_8W8Y!;=o}=b$>= zm0Gx`oNo-n#Dt;-o1w6{&6}Z!oZ(g8ECl^_Z8n`NBM9uxz!HbK&Sdihj1M9Uf-4fH zt%iXriO9?;cas~+y=7t}sr7-Tz7&3R2 zynRGNvjfgo<8Ye;hRT8MQ?|+EIeea)*a_N!xzLG!v66pRH$t9tDcMmf!t0ZA%^KMWK!-+PR#?(b#aX zbqZo*TAbcp*Hi(1eFXbS586|c`^YbKHs7eNB`J(g`v*r_$H`?X?m9?dzV;OD(T{U_ z-52&$U z9MYDpP!U<^Rbg)h&S?Q_Q^yKN5*)I@6_+>%vBr6koERaEpHErznEVMzC9QvGaIZCO z3?bh$caKR^fhMj2OV#$R@qIYJ;*Fj?xT3(9y`SUr$6v&cb&U7)^h~d>uOEn7`1k#= z|LLEFNkIE83ehOu^@-1A zT8$gSMa;Lsbezu}^-ItuCs#RiSm3doA|HrCzhzl{YPv?g%`5+-CKct828C_|0pLuaasf zv&Tc@KCO!4&#HxB8XbVXP(+m*P4YF5H`qZbru)r?+;d%Cko!8I)=sZVDvE@2Am>2N zFvAl2NkG{)zWHj}kWicapt|BQXQ#A^ixSX>ldwJP#G7$o+Cn4;NE`VTSGCKX3uMoUZEai_d9*PBViEwfk?sn7Y+SXP-#d-X*Z1Z8j=zy1>f;OJ{ zf|ttxUaqS8rNsU}@5BF|*$2d~y~6jqAMeLco3sd*IT9T#>cR{4p$&k~IMq7T7 z*{}F2mT{EYLpei0=6Oer90hjj;c*5qE%UXnc(PLB{02^R2&L;iF^TGB%lBtNdW(A@ z+{x~OFgR?8Grf;CR0=Ciecnw%PfV7@2@Ca(0Ug>}(a<7YLc~DSV&@ia9C*ND^%%DX zzvw*GLo1F%L!pGscbrxIjV z3zcaIlP@jkO7pUg9NBL?3(P$zh@ypm^07lyf!jAZ*QbHY2tg4M5piD@e7hz32_Sey z7<|L|3t0BQ8~5Md2}PN&tUi8-`5uU<7J0g4l?$++E#ks~!KRAxA!IFZy6n*Ji~ML1;LUA<-8rahA7j&!X$HxuZvF_c6gyJ1J`8pW>`UU( z0r5VX+ZGLw>IBwafuvO}2OP#>Mf;%AJ}Cq`5J`aMg1>#|j|iFz+NymzrVC{P68fJ& zNcI6WT1bVU)LbLbnJU5R!xQ}xT9D-YFn)#k>`cZWTZ1h<2p>s68*E$omq*dQ<>l<^ z`s&{%%N?U`(i4rLu_8e62wa(oST2Ka6w=LK1eg|$gkB&Hzhy8($7?Qg zN2T3@8?FFurosqTXk)DO5DJzL0zO!EQ8+&@&%ezR$B_{ z1Xp2_OpDvwnoP$C;YQ-@x!4RplHHl-GQ5>!{IgQsl};42k@7a~-@XX@h=2kjcr5mp-=$3(aKW$ZR%=x{3w5$X5|j0+f#DY|?v|#yEieRm zxIl-@n?nb<7H&mDW^<5U-mIpY)|w&)PWxEM^k8(!V)cjO%=8aEyxzzMZZj zLUgkB_cvIzFy!f;$cXv2{T7Yu^6&3U3H4UG>)b94$*>tAa%$IM1DuvFw|kl8TU+f1 zMQCGX+F+x7+ErxDfY3P$5Z0YFonp)1Y>4Q`Uaoj8eZJi#>TY>c>(w!~ZX=$7OS_m$ z!~ngJUN+&^vZ?Iq)*#lV#SkSd#eaA?C8_IVT2l=|XHu3joaydCsu9F1;MS`+uI1Q@ zQgkns%O{evRP+QzOA(kH`%b9}ck3r(m z@3g~qJZU1Mr)CfQr4;-4V0*E_g52o(g{=Os;n-3DSymp(!^f^G*u|F^5idt?lF0oYev6VYT@*-1?5^`BBx=1o9gbmO9@Ui%b1QaaE z4*FcJWhbhH7tJ5g0jr&ipMRy}p&2?X@yeG_e5da+Xn8wWuns7Lm77D@GjxS5!(h=RExe6oyJBay5JP~n5m7gLyx~ea#r?Ri`vo`Bkj=Mvu@?Zp zrB3%n7uGG%lSz?O@ttci(cuvSzCVPcTvU+<1hRUD29G~QZ9+0W9zWUSmOd;6t}W5* zZr|`+t^z_Y?pszO#v-_#D`g2P1fu}1Hgn_=g`u6JQzjZhqRoYO1#@ z2%t;`Dt-I|>PUXK923_B>yuqJ3^g~R0tk4I-c&e4?wz=WeHmG`f@G3~o{Ged@#M!F z3NJzvv-8X01fe_pmHXtTj6Trh10%8yQYiynuspc7XMAa5R>-P7mN7N_bK^`Ea~LUw zrOvl)?8*0I%>vs~jjOU=LV${IUF;?}!*}MzR-c7bgccjZW{XTJyU{nlNz;pT*oR%L zJ@n}fa^pdWF>p~lSbuw+%-!9+FiYq2T;w0OKxbY`7@Gj%MnDy}X%_SBOX?5&WS}o& zMcAslQ0v?eJ!MZY|gayAS!<&b`%4<=T1L! zj1X8D(b25vYenDk%}Tu^`j*R7;=N3I7Mmi=q*8$W$+>;%&iA(-%cy@fcKn6koTv7O zZVBiQF1$rP-?^8v;f3Bz`|~DN07^mHFb%r zjBC0dmt$_@rWDlWz2dIbKg!tl&VriP~ji#pcsE-;+L1HBlqP_%AG zeu(j#m{`=i-89^I?~i5Op8)L{3;8cF5CG;0Ku+36eku2#_1OO&y#K8=d-=7>$Jze! z!B3^L+im@1Yns4G$?o0*a$#C>^Mq*Ip(T?#69~m6G*N-iDKQ27ON&_X#J38R?hj{I z#$$rzCHiE(gDIm^aUTID`_&c$$1=K{mTpFZu|e2@JWIOd)I9k z<#r)FnALntYc=+FC01tY3bTQGg7oq4R$281_}=XnQ4_r?^9n6qwA+%2O7S z=&Cg4-}opysYs0kMgbDyu7?1$-?^k8owx=w!$;(wp6f$K{|V1?mB z@muLPRXXlsaSzYxC{-wq!H^v7gSj#5NGW%^<@8k4=VtkS=Wv2k(YryH(7esv@ zGuWv#|MS|gaDjNVe8)o-%W0htZ&PpoTmw+a2=+j4Vq_Kjl38_MKp6VnJx4Pu771MF zAx6~QXzXfv?+Qxhp3F8c?L3Af_K@E7ODJoErf8l+qfL8f-=1LL0-GoiiKR1~6!=_V zV}!bx=tBzD(8>E5P~&;Hb&MRl?jBfB8Va0FJibC8wiepz!Lb#AHHQk2j83M?4oxyQ zDEeB36XVQF!cWC22Ql6!$Ghi1vYHU}%q$SeWKcqm?N>je#-ejwG`_lAD=5${F-G;+ zXpr4KD1og6(pPl*lcEsA~{ z5K)Z5>XW-}Fd>mk7c1bx@?3OOD>qTt>R1=Vi`B%o$-QsJy7xy=Aw_WCy-hd=rFPt7 z9DJtVTS>`eJmTEPRqoa#7JGboLwn!qA0T-4o?8Qu%USrSmmdI3ZAD3E?27~k);YlX zbPJt73D^CfJwD{jXW;w@;%1PlhBiy$jX_ymSg?Az^R6T&Iv9Y?ecJnNOhy3(<-AyY zL!)%L102|%Q-Q?N-QU|MNFk0sQB?B;1s z%pt87&(AjBG7n5HilXhg-bNt-s*L^zzQbeMS~dax&=}f_c2Q*}L!;vY{yd$U`~?_FN*LwGm zv`f9M)$tCV^8P;JE!}`@*cc!R67^x}E-k*D8bKO(fE`A+0vj}>Zjm^-xw5jP;@$Q5 zTWy5W(Qa3M3<_dgJ&0S7zwA%F4dbF?87!+71^??eC-FrO6{ize!+Olwba2IECLs$r zOy%!{L{#+7RgBl3u1BE4fSx-vkIAXdT~Dd5Z{s&=WDlWr_}^^v%a^BumPph2@4>qRmOwzEgi0i@bXRlwckQv{Jr6J^g#Ur|l0%Nx?JaGxR-SC0Lumm!x!JiYj99wD`}0VWHWE0H z7CzP^kys3v_|@bw`#4PT*zXCw)t>+?Wj~MTUwpphl05wqGD5cXNEO-)LGwB3ZDZL& zl&AR`h4RO)9?&dY?@fBf2_Lpx0RvaIH8S;dn1bkNXa-nspb*sZfmrKPyoP@en5vQ> zYITdF6U1(YM~0V#7UltS-K-riQXFY-kAXNsnVSX9q@HByo%&CSz^TS8V7;N%Dp9+$ z@I5I~z(*b(7;gNv%fE?nF_JUXLMB!5!WE0=Y5c*o2M`Vvl&D3m z8TJ|_>|YkQlmtZLR1-<(|7y*;V4&5m51ugE|Ces;@9q4RxKa2vFs>=N>o~qmnQ4e> zk~t{Z@Sv%|AJh>u%Gg0MGJ%5azcJC=<&895y9TXEIzDa;8{mqMm`gafQKB>OFOP9C zJ|Kc)+0BW&pvPa+RWsiT;JO>^m|^*HE|j zrMHq@t%BzT6E_p2p?gp7<}(FNeZ05l(KjGJcZYlnHv*1{HGJ;3yd=hX%Q7>hO#Iuoq?Pj3|oQE#m@V=fwE7kW36R} z;C&ewY??}iRuL}xBGz9CfIsHl)GB#Pck%HjyxFl`ZRZ`)e&1uqTQbV0Hm&*2QJ*?M z0)7o66k?5x=#16u!Qz*8Hg>!C1DH6id@;0u!zTR$(?+i1^2KKPu8@khjIKF-QUurK zay=qvr?QrVLe4VPU5gU>g#SB<4PkLFanV-7y;;lZ!Y4jk@ayty%O2fD-K}kd*M@>Z z{zX8$A{i5j`b=h61TZg*$am{_T|FQ%I?2vT{KeoeUJi%_6M_00r1+0(O8=Gl<&OX? za)np+CtoJHO!OTvn9EDR#|MPJ(3Fh_(B`Tq5PP5bNkGsF&x!=PCC$r)uO`Gj!DT7) zv)+-2!xQ3BcB}&^qKlimD?fd{h?Cjb$=X76W@%h@iGAsZkM_~@fbEv{?p_BZ&H~am zOt-A>7rIR+NcMJz&`?dovOR{5n>-6=^a(#!@%ao9L_I4-1Z8{f!swdcPK#UP_usnY6T_v}+nt$uLD z>DC`aEHSB|o$$-QpStDPqWjzTi?;)I_S`xka|fTADl_t3c6{DXS_R*gZGF8n($ewp z&di-okD4CsSp4ZQ^31oIA9gRvZ5-YI^_dF>SF&wEJL>li94-%N*Pw2#hvPOmz1;5F zO1?l9!yAcMsqDQ`Qn6yv<6i%E^9ed&EocFT%I1JwVyU1teSo~`)$&$-Cep^tz)-1~ zRIpOI8n!%ieNN(5e_rB)wWr2fp}ubOBC7bZI7s=n5f3$q1%eWIo~69^2#cKs+v&G6z>gr-lNNw0MY??#I<&LKO zDyDk)E9-Z}4}qe~=MrVeU#lJdYL~@NJ0u@`{>|r)$HWd8W$yj=pZwb||L&vr4vUW# z`JnkFtMBM`suF1Z+cASk@&R(nkXj*JRaYW(!j*wJN_O^!@maC3f*~5SEE#dW;kY5F zUsTOn&1}dSg0u{nO-cIm7beAj({SOLop5+^ZqnCmNWVo&L#%aKB9vnmV35?-QB^HR zb5EM;k^p8s!DAI5b8zKe<#bitPj?_Gn~BSkbZ?G=g3UKk(CD)ypW>Am_}&V_Z`Xyv z$wG_(ggeJ7KR~961uVPaxmd5>RP*zqs5GtTPN3I)yKI#26DOLTWH^&QzL#Z#Y7^u9 z{Ecv(N+c4WZ1**2j z*ZzNJ;(z;=d%F(5@&;`-lkH<+@ix=Vu<)OKeY8i-8q#^x9r4Du9qi7G848DtUzmM# z=(ScoxmHXNzt;L#YEgbtkv;8mQ7Xe~%3^DDJFBdr!fabmaiX!`9;Y^fldyr zWUm_c|8|l;pu*U?*Clg*?W0?BXf9Qv@23@=6 zF`$dBNI-of=6LGv;)UXA=kpCWL;3t&_4uU^u|~7WsHWm^LJ(uhyeWxePBjMpw-e$S zi7V^XtdlQPh{~prr(9>unhl%8-%C%3Laog9ILw8H-nDNTnUT-xzF7-t=p_Z!@ojrG z)$OaHODE5np6wP{9mJYs5rxl3b6SP`awpEN_LSy3jtRfJWh^ZWV4aZO*eF8;dRP|R z4_fG-Y?I3lUoahxM7$bb8T%mk?6~hll6`TCmB~%%pVk(+z|wMM*(J|^v(Nv0{3Y?% z+fek`Kl%Cp+0MUMKaw`G)80dHY1kcW!Hod8GD&-+=O zXsp>3#WNdziT(|#Ps>*E znRROBP}4^8t4E;z8QJ%_tPQ>q$T)7L$r8^o9QW_UD%Vw!i}~M9?5&tI%N~tgpCKxg z#0~|%UK*0Cj)aAtAIr(+(n|&_IDNTz%i#`8r|xloEq-E0Yqe;~jBn8k6Bf`gYL$68 zM=Wj_pzb|JHKD`7bnl7%bm8yp=+MzwlW}X4ech1RneZ9D7S5O~71SmAuGXImh7Fsp zk=OzCly{{JYZ3Z$AU1&gq8VnSpZKIHHz*=!J97UiRKE+{f8pb*!Ak$JF9h+wH}1=G zyN-X8=%9+aN*_1-<-qA8pJ!5C4I#?OvD)*npIfu9_$k}=$LV`*p%;U1lQX|Et44SE++6tLg(`ov&6a)l-|N^TO>$8aYKiV=4l)(yAAX zi834bVQs7ZhVOu;?F?OSf2m)ZeTr_F&I>+|UVd7HZTM*tpJ&=3N5i^n>|`5FhwYj) z6R8+C@j{<@xlZC=J(qgcxtPsF<45Dvjg?aDM|Ob&$5jOjw2q!*bgVBh9HwWlc( zD>7T_-RfJuciraGYFAeZ$R>bt@zwZD@+|waUEfKH9WeH|{RI6V$r!MsBIv7c5);v* z39kQ@`-W@nVBBtkpSH_^`TU@rE#B}H)fD?Emv$>|)#*OvIc~=ZpIp3 zt_7d08~;`ZyrH`mLlt|>7F^L#~$ zVc0f0_~*G7@E88hq|J%rB&Mk`&WUR_cMkw#yy}>dopSvvcdsjr&_b)7P*MDBy8HM{ z&0{Wtd5%39pS2=#HBC!}*cn13ZoyfM>YeTa9$)L?ib7Y|-IQ?fLPix)f48DgjxhQ; zh2HX)2mwaf(}0Eqqsug6ed#lI*)ziO&o$O(_q=uZ(Yp?#zxUKHre+x_1I-X?%Qt$_ zZknMNicRhq4Oht@QqDVYBYa~T9I2dadBlRn05Kk;lHDXEWF_eCEW|f(oXBDF1gYQ@ zSM4_b?XeLkT`Kf2f!=_QZ7AC9VHf_~RS@0pF!W<=js@hmSJ~plQ|`s(Ddl2WGF`iT z%J|7qpl8aVo@gyU`u+Q}<3Hw%3n>*GL&(*Oak+I{N_8N&T8fyP;g9p%%85B+%y&!-%)<~G}Q2hm4c zHu1Bzle(9B=8O$RB`2`6>jB1xyiednHbNBY#|Hy_BU{bxN7o~ZDmgo6LI;-%`CE3pbyuYK(z5`Y zgT~NT;~tC4qR-j&=Jg$MiY4d!*8UoVmG%OTtHkn_7lB-oMg#-$ERnpuW3MjQGGBo>H90&_U_Iv}B{ols9W#^WF7$(;8hvqv}!upiEgytBUtV&_^I1(WJs*vwej z>e=ebKFg&Lt7`^1%^uh6uU;HcVt_{$@`0J5l3^2h9*gaA6O177g(1LS0}`1OCZUnz zFxT_F;A!8|yYSTW?5wbRPxN4ZHwFa$0=H#u3sPo12UnnG0O*L zKBtpnRN3$)hjVvGHORNe?j!?QTPG=m2@3~mtp+!B`27mvMW}R5akPWpdr(_}>YcZ4 zF=Cixkb_0qn&q8@B&+$EhU+f5xYsprNld*$NT!YB-7d?)f|^;kYm^}ns-CF3SeGK+ zv6*wKeWYv7cn(wn4K~(qlGN@Fx(2#!TqdZn!78hjeR6o=n17pVM&PcyTRg5FD#2Cv zqJ>i)?izkkszh*yqmjSHV^y@13B7W{h&PkEWa8SY$8A>ZL1OjJqf$976W0o`wK0h? z|7h9jTEq>sg6Xc*JNRA+_(aVx?J=)bs$)=fYr4N2WKG@7TG9@~C$YchhAAe=JJG$G zibZQnH7fI6i%(hS#%RWIOKce%)}6wkr0$jp-6MpxPWIOof}lOsqShawEus4KdTSF# z@8Vk9R+QDp)oIVU$$ARoj_DuW@-BJR{W?ttwLEH4z|7Neiu+zKUH_lD`d@y0Yu|%k zZ#V6`Y5%?Df0d-&vR)o}r2-V#W3dgs%BPgivbS2RVd)l&bk344252vK)lL6$+efCTee zp$vX$DeP{r_Ib056a9m(tkIm5n%Zk4EYm-l!DtCh!&TY7elX(oyc(3^6?pF^!aTeUk!kD}M|&JevW0(|8HDeFlGu zUf&%t8z!3o%JJkO1?6oM;YO$^fmbFGyEJ0U`yhWGy*xr)Z0=9zMvROL15(=~1f+NK zHXg+6E&WfA({N>3l-z$7)Az)QQpN$G-SgfXDwgWM8Z8|jRsBmKe(>@)GhO$ms67wMPvkw(Jg_!l^vvE4_kYL1R2_0*W%b!shvalr2-2v;WMj*iv!cy!2< z;x64j3j(U)mwr((dRW{*3)nj%r8FN?O9~e6*=U$m!Vn)@1;EuoRW$ z1Q|LCD_WEM6R7m{<%6Ttuiv6@sVOETZQrQFz(rRZftSmiFG#l4SPgkny7D|KXT=R1 zkZD7(X^QKP;GgRi9bJRw)7EB<(2&4OBcQPeoFPm!t_qzd>XpPsr*ba0SxpU&2rZ(D z{SBIeUaNEC7&p_h1{EJHw4q44@ei%Gj}L;Ti^{ zOvRZ+hYyE$d6=)L_x45HEf7vw(aL%EDVZ00ewu*Jis)%k3XFAqoVk=bBXHccmda{V;t8f zu5{!tMy~<^FxW^+!cEz~IQw6o{eu199g&dPr3hM3R`$&jkKf@Z4n7kiA;>)w3pYwm zCcqnZP8<-dkamX^Jl8sUlx-7h0U{Ldf|>m&<#LIp7s8}S)!JrQ`0n=<%zd(@t6VZy zQDv934|7{VbWi^x2%2&& z0JEzI7laqlhj?bu_OhPO1XFE&<#=@pzpXX2d@n07zrvc`c>PA)8iISpxJf135ijYY zS}S!O_r~l@7Ozh#$_C|=DI7M|UBhy(PCoBVdx7p)3>MYVgqnn}B7rqrBP zEpZ{OvD`9IvBA(u4GWm3yEn?OZHWGb7aTtYNgppryWG51i>YD~qA)RZ)razjKQ zH%M`Lzs_?1o@cs$&wGF7U**5+dtK*op2u?PY?)fh$Qk8|3_eI=-kQz_b@Y_04VOcx zRk%mBr(Vw|&6V(!3NC%}-y+_ejGr4Ve&3b;2hsv;;Aa;ilaKxO`15v3wDD4##))%3 z2WNNzj$W=o z7V@0FoV<@+saKM--y9UTGwmU{jd=b{^K~1?07Msry#y*b$mxBCI9hqdj|9!K4ZFe9 zS%0`=awvuE4lJfGXVgN9SwWg}nKNG&tS%4gBJ=Fv`->N0Fn^MfU9{K_sJNQUielv& zSEIGG=eofb6Xn=&dqHTHOu-v9g`!TfjZk=yC>NVr>aW7r~5ZS zJ*LtX*zXZNK=BPfa-*MV8Zv&i-i76l!h=_1Tkp&SCR$*7y%_g6_KRz$&BxxX*#u=u za(eg+h>xG9d-?nxIuDZZ=kQt{NX#pqnjO4BvG_fKi8)_c^TmI_T)IeLvN@3n$^A#z z`_p^*pI)dF^EdyfgU)DGIrW;TpO*GOz3(V7llIB?Dq;`v@>b#%dkqlG%j$88QT7q` zK_0m!FTO>Cr&(8}Ux7$+%6vsp(Do_1ZF9hv5g883yjM^}IWx+L+Nl?=NY)vjra8l4 zRUNWVIPg+ocjmbj@71z&_r85#EM0kk@v&Dja7?o`W zkroQ-z2&qvKL0J^(P=BEG%F#lP*o3*UU(FiR|8#rc=ga3&|zANaTb^~NH_D{_6Qlq zipo+~QoAs0Qd93L)+$`|IwP{V$|96q*Y39MSwLX}{@xnyg;GlV-Z zJ3 zkHuNM=w*|o%PP`zd_=TFW=!XLrZZxy9tNv`Qv9J?eW6*(b(?OrTz>&$oYh7>s z*4*|V!LOKuoA13RwmjG*ryOtZr>MmCEPAMv|0ev`Fm*5ND1iXeoK(9(*&{QFvbR4B zVlJDbtU){NN-u+X87;M1n~Xq-gRLsA*LqizGwRny!`y{m_1}aediM!G(VsqTQ*uWt zMY-q;8{KvzC$E6BA1&J5DogY4L-j3I!S@4qWhs@TR#vcmt#KK`Fcb%^kYVw6l)vYW&@!>*o)1oL*<~Pxyci+Yfzgv*msBZO;F!;NQx?*Jm*@*}Oz0D7UyCp5m?H60RT6rbRiBEJuFK{YX2dH! zPAz3S%osl{8T@{2fhCb%fY&#AcJvj>jdDeLh3k?0*`0lV9B8GR`^;imt6F8UWH z|DTWKV}N|c4QtSkXQIjbG@9%;pLY7NjhJZ%Q*}Ol|C;7)DBBZvj5tKwcS%z*vo%(? zBVUATAA(Qj153*_QxtVh6)IEOeW=6LgG9Mh09r>OZY7fA4@V(3d-+-T4hIe?nAoSi ziGW@iz?7|-GBuUg?Bc8|sECXdRieyWa1~kPhJLK%GjSgD>k}5ZUZhcRL1CtP%osj#inr&QjaH_(8cfPkZic z;R+afDFwe9i5U(RdklFI_i2{Cp?vBBU&Ss@tDfQ&nZ&xHn$Q1c%cv^;%?v9M?e+8? zXxcZwJ@1_=hqDgoRb1?N^ov)q=c}`4qArb&kop5pTZfn=C#^;?Ty+oHVlM(1p zPWHKmHsKRlUranPTCGjG+agiu@1Am^-$TC@RCtMT6-LD;+q_GHfOh#CnabC2T`1} zurCW4-iffWxnx=?-Oj$CJP7nk16VED{>s6{!Gr?RmWks7=yGd>3=aP0NhLQ?s1al> zAxrrCcA{8_t*4`xVP2KW*%8z{n}cs$8kBpx!+ zzi1^3Ol)XVZcR1EMo-#_u-U`3_t#1YGTiT1F7n`JuZCFM#x2#3?Qq?yGLOBZy1zBF z=JOl*JZjTc)sAof(M>&YUGKUlKq*=lBC}dmOm}l(sC2>9W*t3-ZJ(}M=pB>7!E2h> zM~aOe{$SdGd3wvc7ITNwY;tR@mOiodC(Y6)`W2B#@IKI7MZ#TM$Ad?7&OQPzY~BgY z;}oDDhUB4}uv(jr)KFotG{NIwfXLG*suD~s!{b*+dxd~;A`7XMS81)N<_g~P1bQR> zV-O|GzY!pg5~`F9yF3OcjIfgYj|2(bOaRFv4VD<$H(qycwDqO)yeLcsEO;O*fxLA* ze=v3MlGc)|EXp-^yub4Fm>}(!iq7h3-?U5P3qe$^;6cgYZCy-JPW_q>?$~&JGc< zy4|0XtZiw(JZipOgJxX#taQFsI{Wdh0V?jZ=lJs{_HW$O#t)wV`rPfs7)*3LjkNum z>m6|Z*+)wGuy$vd&0}>va2gPb^An?-9mpGw8`*ZUrrCG8CnO%J(9Wc5w=b>v`>@Al08@*h-b{==O>m!kDBZa>~PvBt+kxZrYtx>2|u5g{{C!!d@T=*G=>KUbG+&z zXLT#+NGfF%JNqB!k|GPBs!H+69uNP~2|vSZj`%vcw7WRqQf;)(z04N4qnQE+gxUoP zWb>MH4$U_Dk)464si9Y=C`jrBsSeLmKEd(meZ{>xzJiP2D&B0YvU>g8s6KJ5F^1?({`9NO3#~ev zHRPNhXaIDhq^Ne+-V(&%F@?x;%&|LIux(ML{d^$k*DMLyuS)SNU~*-cSK|r`?eD#e z(u6)r(tK17x6m{y1A>K%+j`}t!uf)I+L~;v|Bf`%Zpys*c+yaROyVGzHztXhmK@~d zd@|AqfgP}J3c*gR9vNr@^RBRVhD#6DAQxk%J2`_l8P@xROi#OO_wV6Kq~B$6hMozb zx?;U|wSj4-iim5SN{XmG!{f9fBNF@D)R zys?>=rnpn*9^saqhI06dZOti7WoJYRyod0c&pup)$~(Am3p&^b8FxfYVcPFh&$Ij% zzuI;3QG>YsIdQ=QIxA*gB-^n3rR0kZ%ezQuW zUO`{gbQaOt(!OJNMNfuBxys)P!zopr$zxS_%s+y%XU7z~(v^qE`5vByIl#b@IJ z`^<-WdfnWE%SoDuJ`=ug1@IoPPqr<3W>I`Mp5&Z`TEZ`B4D^6lfQwA~>fL;V=7)`W zGiqI~khOMJ=Gln<4sbKvj2~osqN7KGMV%vxW^3Eld--p0T2FACl0Oe<8{ke~hz#YA z;eX+O`AY2g`MGV&1SV6r>#z*Z&noeMD6gO0??Hv@rSFOHFwhS=tMR2ki=(i!kB3Q# zCu~o&`2nm*jJLRT{t(dyeE8kuwthMxUYCa?ID%(0<%;A=2qE-IZ=i)0JRZ%2BNVPH z5=@y+6qs%m*&ucV9-`%=vxiF)1$dmBdP{gXo#ScldYL@_W3a~XsY|Eg@bP^R=KDBp zzQS%PEWwI<)I?p&*Hmv$v2?%*ELM97giH#KNUTniR9OJ*jk1k?Q>ouDy?P`07 zPUGdL%oG)~BZcx0r^*EoS5#`j%#+}3 zn{7!;2a!7CPni3>F^+ja*)hmN{CuoG7a)oTFgoSukm{%gxLqYLoE7rY5R0sqh8L5c z2X<4z03;4cFWhKq;{CGPC6T>rIXpJA+;2dA&ThIfFPs`5kU&{7lnR(!DD_U&lv_=Q zKgcf^^F8PYjTPf4eHYuUS1fx&X6hLe)sdTnhjJG8fn~_1@tpBcXR#^GqObg-Sl5lZ zSFv4GzY}*o{y;T`@@aKC281C2v>vcC!qY0wAsdK?MJ2uRPhlLZ5?om13E%FR3kNx- zI5`KM86DC0ls^T=w7@w~9U#piS;mp1MR9wbJr4n*U8dzS&hzS4Q`h;va_l)L61IK3 z{h=)NT35M(ZNtcFRO5(DK+j&E#m62}lW6`iNQm4FD0Iwk*dK%az2trZ5^f?_eyZv| z@gKU{|G*9WtqwnzsRJWrN5a3-NWepUJ+3t>4`ivMd#1n5_MRnGWp;b!Y4BmwbR9pc zmOi7V50Ru#eE6yk7HxSck?o^Tnba9_)j6BhxwEu*F3jrAcdX<=F8PQ-?~x3arH6R|0JIr{0_j$nBRuzwtqXi&)(qA z=?0Ah*SFYz@h{Z^+K2e@U=WYr03PSE~jTA5kG>A> z1Aa*WZ665^Px#4cDt~JB=5X}QKS}+69~1zo0UY&J|G{+a{}~wmS5NYv2uM0)?B@ci$T(AHN8-P>5*&<=D62d0ZOm$0%|@kI(B9>ljGJb79q!#I;D|t{3xYe| zo_bv&&60c5vPPfMpl}HxsA4_c&0a&1HGSi~?29RQ&zN~%^fSyc9a2fhH&Fcw%DjSv0qwvu_r!{b!5pYP=lZ5biK>3 zIBXs5!KEh2eLywXkQtq&t@VP3X%0F6@?^Y*K6q5jR_%?^+Qfu=D!c#*C!D7tLLMN= zVU4(|o<>(lW`QNi=A9WWYb3qOWTygPuB>={&xA84v!r1vIB-C{M8QJH@hfI)&y~fp zFkG4}HCQ9cT83r?pKcKLoiXXEJt@SJ8_k;{Rzr0T1C7s{srx`@8%DJ}`gSO{3`s24 zlR=5SDF!8dYsTITi&{HT$+*W8CTv%)%xkAbhYWQeD!Xan`0*Kcex?3*AZ!K!R9E|l z?(cp2cU%k@rM9Z>Z#m8UtTX!me~E$X{4-Uq;zo0U%_Y#%^kxP5CrbH^$8|ch-B$x=9`%&3&yPRMbjs7CY%Mx?lhCNiqoJ&I@=X-+&3I5YVMQQ`1;u10 z*((e^ZoEQE3hwCngvOCKM=0WpZZ2#EEe-TJRnsddEz8pv4HQJL>n+^ADy|(+hq$~` z#f6#?4`11KsiqI2JNZ_L*A;sj8r;3`*=yFVo=_aBs*Zg$fd8xs0Ef`f|Vn3eLQyIZiNj!uW=OTxP zJ6yljl7a@*wQxW+HY-CesKTS)Jaz+qW^JAv21P|rzQ&OkQfBb<9)ADG5}kg}?Ultb zh4rbpe@mkf)&665cOD7FC%WbksW?eLe;$aP>5~H8rkREPuD{pUd(W|eQgRl0LZa}` zu+u4ZAa6fj(2;FC@_lkEJjteh6iz;&(-e1B-RsbYt;+TeCRUCu{w0n37y9+UxY(`8 z{F&P=hQI;)QX8$lwgga0>YF7O%O@TJKQrYwXS>`J12uUC99HVl(z2N#!p|jUW5Fr- zFfYgEcdIkwhUdP0LwGm^3Ena@sgY6=XxBfVpPJwH_zG01|J>x-6W(MU*?Hb0F=DO^ zZo!Y9AmZrI8?AZyA;H~fEv7g6$-8xa=6<6AGAGsF)1S+ka?4sZiFRx4gb>_arHirK z1?LwF)Jrjfca+>iE~I^$a~}v5A8mw0G)ObpQ@5v_Io#2b6UUEpn!G?^(!|}S#=^%H zqC5PlrZ7n%zff#dS+$~ag_nslq zlFpW(PU{l)-f1G|h^G+j3c5in3KCk|VOcTVXZRGvL{gM_&z^^?4`X6+bEecG7eH&w z`esV{dw26*Piez}qN*L6P;zPwc!2f%38jC+<$pt^=dz8%#hsP>L!rf2>f7;Z3qW*H zwFA!jqm8eoBPAmkRM0X@et#7-_dt-~?|nwJ3tbXtr+r)v#mcxV=N*49U$hvi*c~ehOK3VPV?kI8F=?hI)>S5z(@;a}pd*3| zMD+K38Ogm<=GFdgD4e9^DK?speTT2%$Q4$GP9$lpAiRl+} z{fdWh$xTKIXH^w`h@g50;leQSLe|q-a0&m;cW%b?@I#8~Icb5Zb>K{RC!9LH?1qaqu9B#> zJ`rHwnTKm@yDkL0j0MR+mWJ+NBkQqX&`Wh`nb55!D}53*r2aB>yh##Tk=|1=iB4Ro zD~6JbFx_oaOZO_d1S;EI;C9N7K=M~Ie^*}L#$R6fR3lId`|kJl6`<`{J5~8i&!H>g zTSH{6s1$RP)fLM=+sC}rbCfYMF#Gn8*1aM-zf(rDKt^|F<_xbkYiUWlS+bfx==3k; zV}9A3Kc%;pF!HBr=Klh>>FU6(L>(soGd-i(o=xYTd|X+Y@9F6HE*Yw+LJkN76~xnf zqUfOHQ1Vg;X#T*B5)HV9F87{k(>!6kKy>_)?bmoc~d^q)U@IB;4ao?=wu#J1~8L0AC!h?~Lqx6HIWm8&gJgaQJyAw!=P)4vSCIBbu>! zDZq^OsDhMOULhgnlS&$nlWX3}aiWdcs+p^0l6!F7t{SQYjS?Z3)ibYRlfv4oSN$~i zW{=B3v%yhFnfXNOk_4b(#Q~&P1c%37UuA10W^9lU25k72nHEA*I zQEg0Ykrdaa!Z+_Sa)F0zSiu&s?ztB(dULV!ywdxjSLsrr?ixI~sHn#4zDY$&A%X(! zcZ$|UE~8mHiEBUSSyPqG5TeJm`_Hdj{{scR|4r-T+(cUsP+RYxOj^%b|LyeUu+K{7 zb+HwIc%?6S*`JS~KKt?CZ#aOf$25LE|M7TQi~_+n&O5d`rTt(pX$UkL%lJRB6%0V_Gj z2nQ}7nsuvm-Jn)$Q%!$01Y`%T1tiz5Phi$zDpJO_HFTDS0+QIV?4q>zpW(5g^F&74 z*6)Eg78^LWAv>6V_za1_!VY-kWM7z%$Q3{IE7tlJbkHal4rA0jjkG1gt_Qx)?U;c|= zX!zVK;afni^Idy1NI)*CEaZ3u_l@Wv3kI)sQv+~_rdMyHxlx0SWCu>?VL!znU=^lgh@ct3-{NTgr8x?j*wzr1A=p|If*;u3s(ap1O4*ogoXfp!;h> z#Zxhr$-v@Kb*VbUzp0nZbZ$&v8YDCXc5q{4%m0cPDF~kOOLcO%Vmvb5KR(mns#2?Z zQmQRGRV@y)s4k6JfFH@tVN~8FmvIIK%PPW)q~(NC(tO^qQO)oL9(l03799gRk!W;p z_*5qyF6>z|>+j(Y#Zx#W>_sT}SY;OehuH;wPfwvm)NIwTO=6LS=aSPOQ1yB4?}128 zIfYAi%8k61Sf5rqIy$r))~CMM{aJ%z^B$`R`1YV*E=PO@bpMOP)cAN_-YjZv{Mf>U z(wBv-V! zQD^KGE)-Q4I)T2(^M^zCj|p_?{7ehtjV_aNs@+7Ar(K04P}g3hKvIQsPP>D{>iH^< zCY_rplcD_mo{?IfatqXAr;uwByPZMQFzU;&|CiZ(Qc^!kGld>-BzJ-z{ZJf`}G8r z&ZwN)*i7N>v_DIVYm5oFxb40DHc!NAzdvPtai^M;~oE zRI`2#)B`_+?##Uzg854eu*=%-p7U9BI;xq!hmdp05uYif?K1&g1ejbtKe&| z(6y^2kBmW>ge8bx4=ltT{e*-~DW~;W?=%%IE!KgJARVln22!#8q$W?b<1u^)nc>*K zbK^#bC(au2O-ZsYN_(Y*4j&OTqIk>0I?`a(a7+dtcU5s`hlRVeQo^S6Rf^ac(l!&$ zlzG=RBg&L%X5l-t))8)0!4k-2Oklj{IJ|9)B!QE^aq_`Q6J#p ztgsG62WhIeM~*?qLtnr0?8oq?h_wpL<{nBp>#A_3$MnS*UN*ikO32m?$aB)82@4LOv>XSBnqnndzvQE!Q7<6cHqE^Zv{2&w^i!ds^UYtM>{vOeE~T`A3)i0I*&7>3gEhexI+Mzez6?`t8>X1r-2IO_bBJ zf_Dk+yxN0=ooU4I?!+CG#vJl^p}uCB66k3rplC8{S#u@W6aGr*JisG$8& zjVsOKYVg7slIyQfK#w*bk0lH6r1Fc|con>RPX)DWN#A-jU!o~v=?~^_A{p9e(iEgRBb(y z$&KB+XeZNE-qh^{DUh8<16tGX8?tKGX0k_yOeo?cSoR{Rci)44~KJA!kW8@E!2JA=WPkH5g@ETD`%MH-{)3yq zukxF$GvW23x&q&^U_~UDVOnObB4cM7GpSu36#d6Cge-QFH(rn710XsD&gu9>h^&*$ zr^Oh@{(!Ppv={RR?MkN8lV)=t$=_7dZ1EU(~Rfw0~)w;R)uIX}x zRgYuE3UisiP%iC8CM0t-vC=U%IcJbiwOVC*stThH`a+BM_I-UikeO(4^X>4+D(kOl zqVFaiELjh({JnPcKHtUffV;1*wcW9K>S6khYMl4AH=5kJ`0Bpbe@r>PQhy5Zru+MM zrj4$gSj2I}+rE|N$^j%SAbwV=Es!x1YM?u~ekpgOKc)cRbk+JF8E87l zU^D$=l5*0{u1d##&M|8j{T4!FfFizQT{qUp1CK4t3%ExU4Q*sSv!%^LC8nWTDh z`~*w_6X;3-f^UFR`z*jBcgav8y9pAQe5X|HvHA?(9o;F~S1h10xrF&3b8EY66ijJX zj#fBe0SZgjnx8a(W#GcPZF@FQmx~i;_zQ`YW9&=O##sy2?$T5zq48`u#ykWat@*6> z^2+#OwP5>)-U+OVLE<2_Tr%1Zq&qA&VNG8g_y9BCX(!f%oiO36FU+^m(yvS;4e?mO zO0-FF^fvz3J8Yma_)^+z*ysnH4>J^~LIgs5nkGevkeNO2J7<@@SC7#B@gJ?L#gU8C zX?QhA|5D+fy^`&Q;a$3Yw^zBASe8_|@u{)-5g zNSgb3Fbl}tFo6A|OKn6eeLt<|L9 z?9JAbKEnn3)Q6QG6^hbcW~K#bxhY<^H%s2A0r`H(cZgLoYMo;ObK;nrz;F#wV|gh+ z>BIM)V_mBnOV+fXNNXp?O3<^*Xv z^E}#V!VF`YsfR2BTrTk+<$>k|qB`innHJpL87S*&Z|q(p+s3>K1f7+T zvyHT;Kw8dXmg849#CL8xEmrMLH1`hVE~Z`!$K7Cj=;j?%K8p}rRao1JwlA(sNA^a! zN?C9Va-W>gfBZ18X^w5)Ti>&2Q`Qu1{Adi&%}Q>IfQ_juJLz01J~mo{Ss#~p0y4<` zp?_Wa_tBdzofX&LI@LR#aQs?pmbE?gAecF9e!LuD1=i&o@diUANT^j({}KG^{^2I8 zxWrZ!G5-5!mVXrX6RSC?>lVGXYxy5%f9u>07{4WJd&qyiCx7qgKD+S$=MSFkx&HXQ zUgI`ESfwPGc#@y0-Q>iVPea(z)HkyEo{=14hS;H~n53b1IFQB@@#7RG;knKvSpNj* zN@4KhxeB&B9h8k|wTkKk_5dFaOC*^H-s);W#555g-4MAF9Kh~bPg{q3I!p?*2c$ts z3|f>^9{G6S1te_2N`@ZlL2R~>xeet45@Z(OBcwQlts5ZKsV*LL%V+t?h>$&c_NZGe zAVI%f=RtSu!anNYcly*D*ye`LcN5ysGXXP7>|Ic6ung9Z9KY!7k`->)L|OHF zMV;KimPH@C#3@b?aM_0ST%nQ>S(zRt?S?0+5=|%l+mmoJcvsm%{WhFzp*_v`C^RVb z!Q4@uk6AX>PZoSN4IZY@51jU;m%SYP8br)&`E}Zz(BcP-@bokJ?%=v9cd(BR=RR(aS1LsS-)B=_ zJ)R2SbE-n1hsZ(h!y|J*h%JEav*}E!q0Sl&(HRu5iM>F3UVBd6`_Ofjj=*S(2dl(B zTya+JHiMhQ zNSWg;xNM5=P`P&D9)K(7*-G9u%qB&?WpCMZEI7KBNolxA+d|o z#Z!No5l?IqQvr#!lrsnhYK=7cIpyu_)s?jlzIa87ylPQhbv`64DzZoXs6L1Lu{v(q zO|Vywoc9^y%r8R7Xho$0dZ387FS7}D{8a{Aqs$ps=NG!u*{h&ySVWN*``JwpFfUc`FsU?I+D<0)(7A+a!XQyP-z<-BlA=&OBr zW;}@mIGowzF-6#s#dx-fc`>*(D4I7V+R_uALb-t5e94yEPiRY8sAHIyT@J9w%+aj4 z&#wo*vB8TV>rrJOamW-H_m0uSy~o7MXdw>^ebTy>9d%ktNXnH(>00y2xnr<-3MH4B zz8^OysmB&zyT-q_3J%l3&_Gf))1rX*c0O`Lj!Ji)fh3xWL4~G+<8{TDTv6z8llcI| z)$#jFylq=mIo>9#j6cB(PEqblwhIhcH>?BRy=r_@y89PS$_9OX@3~2-Z+!YAKq>8Z zhvFkoes&d9v-R4AI>^QGN|>wCHID>MP*ZTb$q=2oo}YdUAtl&+C61=5I@&cXckmb9 zN(%&ZxTRnn>|#IIEq>`JvPmec53{T?9?CbbHO;QRCM*trsV%$GH{VQ^q~lwENy^?pIBbuh!rJ9Q zKtv(V3nTX!b=Ss{s|BR6?-tNsLid7$a~9}lO3)WDQHXGTTaYS!H3Vf`K$WjCKj{Xr z8It&nYQP?ne)FVsH`vs%leNc!Dd--qW%q2idPTKpJmcVu_c(6(M>Y6ZFSotRcLj6v z9`*4TbGYIT-iH3=na1_)ru8vPa~GWQ-s;tx5I@|S()J?HXn&1Q-@*0t?To*5hoRN| zvfyb7YWZ#nR(`V5=TS-}-+Z^zkq3fybY;;+*FU07?^}pthMl+uio4aX_NB5TCU^QP7FAA>9eL7^|viueRgXrjoW35MM)>~UT=%`3z%0MyU!Fqy3&nWCA7 z15(BYIjrf?%yzelC{Hh>2&_>u6=mEZW7mxjX69_8O;%yzb*;6e>RD}0dD`ykD62AQ zYLA9RHS|d#De#D3GJCj<9i_Omo3lFER$Y!+;rriEm-P?%mWeOLmdr&1$eE|8?=SrD z;+G;~qbC*y{))EI|JFbYQ+{L6@9iNk!~^V6lp>QQy%RZC3CY%?TI-84s^5W^nNi&s zEq^6eHidY>Wn;NlN&S!UwhYfB{Uf{af4OU)OEsP<--~OXE$5h<;?|aUBgKNGGqr@MxqJrO2yi5WHlT2^6dj67VFkS;1!Od(epG&he#+(_juA zi!a92v}G{PA)Oq4#!T9A%v!_Ju(KwIysqtMmz0lacjLv}m#4Nle~gsNzPj=L{q1x4 zzZlK`<%5&kbm4`s?8vLzXK%E?eCB}O>cWY~XPqI6^N#SZm8bm7)a2dZVNae-r;Hlv z>>bb-YUq$YY4;Ew_`ST#2nV4aq8@^0%x&lErSmGQ{fuAbY)C5_a*WzAT~Hw^6L&>Z-pHr*c2^=A^Ni>^Xdy@<6aq< zc=&#?=qR9EiJV~W6symu*N1*bOZFd9a1cr6d#2kT`)~sX`(111DY2o$!--QoZrWQ^ zcU#2xeGUbRm8NGjXhycrk_S=ZgxNnrv4CUnNChy@-O(_8U^tp255zN)pXyn{yPV^5 zAb<+O(t+vMn%e>aKPoP`cldaizPZkiIgEL(_u`;i9 zvNcUE{86TDl=Z<`a$<&D*wj3DlcrA0!&$pb#AX*~Enr$-+6VCWtF{L%fiY~g!b1n$2oz-AjlNZNq%LZ{>WrcUmyY?jt zanYVA{V4OaGhV)(d~+b&`Z$5VM`lPi;MAStQ6+NvJV2Y+7@4TrMV9uf2U1`bnOg&@ zsg)}+y(6bYsJM-lIO6hu#-49E@t#crkK7q0hdhkMfH1VVrv)uHVdckF7!I z__aovYTG8{&f0My#N4y9&0)opVssk2SvE8pLK-W=mjyl55v&{KntoE7-Sb=MQ%TH}!nu7mM zVa%^HSdOiQMo8=1YFn5<$7GJ*qtq`ue@J=7o`SrU2{hq~Jv7QedNBM%AjOQ9!61U2 z5a|pa+|C&mnV2yJ0WTT?t=8eRnI0f`KYWDxGZ6nw3%7Oas-u=ocannHDy9W~LMe%r6|V%CI`?bKYMMmtRP*c@t>f;P zxSgzQMD#XRw*91re?QDDMnfd>I@&K=&U|Kiil1pM#&+;td}?b2ic>9F=<@MXbHlo1 z9*a35>)Zlw_$%q@xu=4hoBK-j&6ro2sz@o_og-6fh5bKT#`KizKf_y22#TR0&xD{;QIYd(9_knOohR0V8+~ZoTxwX7Ljv|=zLcDd*yn&@n2z| z9Cp9rlBW(fV-$A+u{WbIKg)@Odd3R)eV&ItSaBg81u+sYO(43{99w41RXr1TL?zeH z8bzDL*@V=r(Cq+15$)xR3{DKIL}GUf71HqFZ|;;TUGJlboz!;ol>qN6;FQgWiWqwV@cTDE$w%!B=ZK2?2+(uyn2=GH}IE0w3x@hoRCRFztduvA5$# zFqmgGeZe`JoG9Nf_uym@Ph0pHR#ZL2P0}_&>PXKAS4(@AHG*?y&ZT{g zS)m6DeM*eV?i5OLMBf_#++nGqczO*#e+i%5R(p}_G;RKMVQ=tq<}Ws1@!d|pVgN?w zF;QoYeD1h)BbQ{xE)O|(=7h^0RCB5YYk5LUro>A6-^sL1Fn#?WkbjkiNY3WY)#^B* zV*UI!8y3%K`8a@vW)+TuBkI!H8lo3fcAfK5E-Un2388XvfI8@fs>12h6~K2UUD<(p zHF$`!G;`h`JXWaKnf8mpWX{$Xx<8s^n^9XoYNhBcuMnR7$eWRvFDdOF3hO*0?lJNU zBSk;ze$LN{>#0BlBu5_9^US57sH0qlwMqfB;p}e@|Iz{g;po@G#c*g3tKl@%9=n-u zswC+ds9l&>U;9+Fcx0WAzdzlawGt98mAV7gmxe8j{{~8b{-psV32)8u^2%d6ox0Xr zeZvCenc3py);2>m(W0-r__|0r z&GXXA(hTc~re%K2k+fVpNq`~;rfWXy2=^dzS=XadRT?;_tyi3g`f1%}Q-j z9m{{7FUbc|PJ9EY4~(d6%jOje^@YkTr{OpCQ`bX zX2jx3pA3qDPm8 z_16aJeF3bi;Y|HZgGtRL*NLP;o<9r2`;EAwLCqEn<;#i;Oy+HpzbWh9Zu;wcJ@2b) zLMjE}DH7vc=Kqbd2ls9|_kQ2qtwi@a$LW3Eht!$I?0?2M2lH_!8+8 z_{ML6cH}qVial{kiTtb_P!&QHse!B+uuya|_Gge94g0~62*n=QVO!a77}aK^?f>KK zJ;RzX+pyu*VjUd{NEKz289_w>DFg^u1(_y7h&UKZ&{Uu(2_Zm$RI3$`Ap~TYVOb$z z35Xb`gB3V;XqIeG?3!)+vQs*5^W)&;#Es4G z$;Hm&2W?z`&NVCjMc*)M49i_M$$=1$g0f4BytOO!yT%$j8w09}&P49}M9xL#$6Tv= zGS@lB6uFTWF0uIu=WA_@$S#(61zYQ7J0$d^zxUVNstNN+hCG$%0R~IPqS25OkfeTV zshOL(7+nlZ>PvDi2PfvOr}T~H(2<-0n*c{1)nNp&aNNczN0R>}IFp#fo2$yPOc3-Y z;e1`ShRvGM<`hz4siw*hGA(V3>hx+MjI&F?!L9NzSJ4 z(8Wt%(!MZeQ+iT)T&!ne!|;-DsIA&68S0P@=UQTg`3pxxE2w7*q>+zP ziKKdKu?!B@rGG+@z=Ickd23m`J*dx}nVr>4d}3(u^OnTu7c~ByM7>m26#DGFeb9v{ zvC!ITSHVuE=%mO@Y3A;?iLo+WS5_c5C17jgrzz{~TpS&F<*H-xdl>cUP0avG%j^8N zfku#2icUcSChif?O{IZIM?;{i9zG$9x|1v?u}7tP3&Fi1%;;ko$@{4@>%NDTgq^kY zhU5PSPvB6<6<%X2{h4I26me=YbH>5BzqR}N=y2?hl_%HF3rE%`)qna%nN?f9!lYRYSG^W8#-# zggIs=tYz$6nE4>jf&RRS*0ujnFzjR&B*syJMW7gd=ab_vFA!l4MWmTMPE2<6X;I^+zg`Ye8i;>~$s_+EMM0ND=J0Y7Kfp z70!^B^tl$LDm-)1sP*a2!DzW-I<1~o2rhucU8Tr#)H`N6aT#Ax%2F&`IkDrSorGxQC zLnHAmo{xGIRw$l0CR^BF9~U9p<*-&;Khp2kG*R-okg?pp#b$9|R>h-7kIG+FY?IHq z57-nU)my-*CC6>$;*K6x+$^u&=l!d6(>pf{+#O4?0oxb3wV>2Byc&0i;~9@Rlsg23 z5Vw;s&1+;RBV;rPjmVJG`D3_BNMX4aF!r{;sZv~*1zdC6Kb z8!Vls<0%^7e2wBgT;62A$EB7??EwEzhMpz=Gn8SQ(~lbp*P{2n$1mLD!H;fq7F-%c z%dEHEdlA#>Vm|0-8KG&Dt)Qj`;peUH zF>dL=3&^n#afvLOaHH9oU7f{CYikyQg})f>qzx}j);^htOyiNOzLCs1vd8qFaWb56 zBY65L&1a?%FkDsC&H}sTjaI7t1>*9^5qTu?6 z|3(Slex>Y|`9cjqH%}Z0JgD&e)E0nuXq2oDtJkK6&T=wXmQzPJ=70Uo zdUG!7vD@3@z=TH8;?^Fj@kHi!PV}Av$Ah>cVhSKiL`Y2TTrRBx6&>|yur>PO?)JMm z>$C7RN$L;?j7AGt_J)GNX0Jc-u2)zI|{9K^MDQzdOC< z+LnXwjwgLLPLaO^NzQ0MG{gJCZ6Z#hcYdGNs;B>mIa7^M&nUkiStcb{xVjwbNQwwq za|9;UhFOt5t=0?IdpoYL1;?)(?$S!W8VB|ZHo@gCcCSOi99OlKky7-l)K*$PKdBi1 zqh-~1@idFY!%SR=a4g5pxnEhuT;pO9#FYdJ+}ZBBQ`2>Q2d^M-u}#ME<6Thy#3{)y zu5@zgCt6_U&CKmzO>YojSOuUVbx6#Q^eKS@KZq&>+s>1e?;lrEJ+~A%G{f?eW z-#ugbU`s$QRuc^=W%Q71?g8!GY5yZJ%YC0js_p04XLnfIZy{ovm$yy7ulEo1MwRt) zO6P@!c94lI*Ft^nrI-=jSEtP}4M8@J6&Eqwz1Y{GMRNBPH3k6lxztLtFfJ(A8pkz| zm_y{(&iLN6*&d>uH*l$}uQ;LXYdu*e(k6YdcOoTHG?_b|kkW0FX)m=>-hJ*g0Sv2)JF zGZbe4LNFt|BlIoOwkv<+0(EXsKl)=NyGTA+3;&&4&M9sG<9QA+mn%LZ(%R}AW7_!l z2^>(mBa9L6`}b9ctA<5!iSQYVcghRSP2H5N3PdxCrpdd+ks9kq=qdz8dX$G-FX!|GS(Z6rB340sV|0DB}W0 zuEUZRG{z7bqg9VKg;7;$41B!JUvR0OaCRzt-h-;8EVQA36+t$?fsGYQ4E^>Q39!-a zkQs;*`c$FByevUrQU4Ss7%@3$(|l&Z*smC!!nTv`0Ae4?{#Mm7+NMBA+VpgfCE33R zN_Wq+dEw{3M8pZeWs5rT=sJj85IGj#aI>`P{1A;_+WKf?t)Tn5&dq9npy#UwjL-?N z(*@#MnEIlib--Njykl`RfG-H&g70yp>8~)zNdtZDNA^wmfu1k)LNzf!;YUE1AiFhcXUMcx0ZB4*az z_J*&iI~^-?UjZN;;C8l(@)D@O6UEn|knzIW{Iqz+Sp zsVg&l#s|fMy`Iw`)TvM@I^C93%X+jmrxrKOk1CEebX4mP3yY!aht|m13jhBg#(x#) zp6h%RaL8}GPu1<-{QaiATK$ssR>dR-=M$eeFRg(-hvnrbC^oG&{m`V2h6O!FOfVYE z4zYV${WK49mQO8r@9@@@S;t#Xc*RWX5*_KVq>i&1y(tjSLmi!~5&DRo9M76_U3;sz zGaWWGd^{}I#0U&m5?jJz_;b;_XOlJUTS;AXU61Q$T*3~-L!`!0wSVw~G{;-(Dj|K8 z9%Gm~1lPB&jX6Gxd@2PaR&B)O1vto?NEx!9K3QHabUg>q%!{~yeu8doTv-+|1-e(o zew4cSOZaGRn74o8M~Dg4Kd$sRqiUUUj75lCT?<8+hGY_lBT`{W*%*Yb)D=s}3$yM> zTBa!ZuT408x_wlD2UFn_+F{;M{9MoeKLN)k*}-zji{jrQ{*{y~%?ee&a0)me6Ud_p z-?7oDKSc`F69z6-f0n4)zx`e3lcbTbneQgY1P&gyaO3{{X9qBKx748@<4p~jB-32o`~D?&LhP}&u& zVB-}v+?%YDF!-)loG8~IzRfXv;kRCH(Wjexp%!rH!|2@*9uGE~b2mkiGd{GnSjR`3 zl5lL+tdY`90U0WK-{g7oz)#~w4rQ>-fy6CMOZgJ+OMNQ+O9kqR09*SeuPRE&<=Xwb z>o?Y#r>A$$%BQR+@h#F2LhZy2_B5)PCe}rL4E3zz8vHX^pVF;0r-vH&wU@i1K8lWd zjBFrYx|yA_-T(7Lt}>b#5aZ|pzzw{PM+}{De%|#}+WuV`WP4L1Bx6o7W|va2fCdNS zka;DX!a29c$2%aa0SdgN^>3d6izj`7rmL zPXC2hV~c}%w031QunquVutkti)6fM_(sotY;V~oHjD(gW4zz3E7uw+TZd5C9L{t>!Cu z_|f!5RlscJc{f^f5=Rpv*M*~$lXb}@4@w%WHQ#-XZC~z?`%*uAapQ6wc;XH}ZWvbW zF+Y8yg?C^M-|BOyDCNM0V5~B$5oUO?^-+}6ZaN5Rnwl&xKL*q#g<3YQ)DQ8+R8+^d8r@t+RZIQGyGNj$M(b6vGfX!~B7%&NGAlXE8Ibd`Pu>p|mY@hTP zn|oa4u;f>N1ybF-lyF_^InZ!l?w+Q`yNi!?NaH`O2_6xZTrI(+ck*zj)l@U-5`tN;S& zuT%K(xL8WXUZPHk_zcYt@MCkU*DiTh>!B*`;+ z2s>PRW0$SSo;Z?J&Q|>C+H51cKOQ*Q09_P6NwAT$ae})Ro|r=@FQ(~I-mm!5r(jqV zVepZUbB)!;)B0%wo)Tw%;q5aaf$h#yDRWOz1cnUK>sUyh^pzID{#Ch%ROzkgGVduh z#!hsFet14~U_OAacp7e%2p63u*V&0~ZW~X~xD;cJZ0V;3kGrhBi~adCF8P51-=h~Z{KQPl-vT%Uof9r>E~`h#)CZvi)9}T;oNvB3`!V#( zX!z%m?ElE$`uOV>J$%Flz{RYWCxGbzX^lj4U4Gsc8-4tJhhkVaC@5`pH8Q7sEfjAl zDAlQ?1_t}*@^)>cOeQU(Hv)?mSNeA+cVg^R+@9k=rN2;3p#j=>;Uwik|L_Ph&je8o zWvm(7xu2nPq0DMNQnN90vBk-WsSCS3F{w?@I$y&jP#G6yx(!yG}L0aUaV?c7ApJPTxG~yM{Ek@8N zI(Md%z_z0pBUWVE_5%fGrDT8CJaR=cbYbCaLmzbo{HUg6eBW9$KG`_7XQZ?IDOnw{ zs=VUt$kR11ZiEVN47eKGbcwo8upO<^+leSF*CtF(p zkac-zBUQ6bIQ+^Z`Nf#VgDoqCn-5@3(|lnZ09o%iYjjRExVb%Z1JfxelCRX&1UE`E zYoqFpz3?tVv*e%0ASAjc#}H*<5mGAR(r4Y~9-q`k@w@+S6FQK1Vvx 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≻4Ty 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∈D!q9q|QI@C|2_%uZ@~YXzIT)48ubs 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 yS>MC=ubo!Y#EgKCk3T+}0OemE@bdcwQ?^r_(5Y Date: Tue, 1 Aug 2023 11:55:29 -0500 Subject: [PATCH 453/703] Fix beta tag (#3842) ## What are you changing in this pull request and why? ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --- .../how-we-build-our-metrics/semantic-layer-1-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md index 3df92e63f12..1d63431a73e 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md @@ -5,7 +5,7 @@ displayText: "dbt Cloud Semantic Layer best practices" hoverSnippet: Learn how to get started with the dbt Semantic Layer --- -:::beta +:::tip **This is a guide for a beta product.** We anticipate this guide will evolve alongside the Semantic Layer through community collaboration. We welcome discussions, ideas, issues, and contributions to refining best practices. ::: From 95846210671f3ccc7dec44cb495a47f72eaa9c2a Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 1 Aug 2023 10:23:33 -0700 Subject: [PATCH 454/703] Fold in feedback --- .../versions/02-upgrading-to-v1.5.md | 50 +++++++++++++++---- .../reference/project-configs/target-path.md | 14 +++++- 2 files changed, 53 insertions(+), 11 deletions(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index ebcf74bc5a7..88a908f0d1d 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -57,17 +57,49 @@ models: config: ... ``` -Some options that could previously be specified _after_ a sub-command can now only be specified _before_. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected commands are: +Some options that could previously be specified _after_ a subcommand can now only be specified _before_. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected commands are: + +
    +List of affected commands + +```bash +--cache-selected-only | --no-cache-selected-only +--debug, -d | --no-debug +--deprecated-print | --deprecated-no-print +--enable-legacy-logger | --no-enable-legacy-logger +--fail-fast, -x | --no-fail-fast +--log-cache-events | --no-log-cache-events +--log-format +--log-format-file +--log-level +--log-level-file +--log-path +--macro-debugging | --no-macro-debugging +--partial-parse | --no-partial-parse +--partial-parse-file-path +--populate-cache | --no-populate-cache +--print | --no-print +--printer-width +--quiet, -q | --no-quiet +--record-timing-info, -r +--send-anonymous-usage-stats | --no-send-anonymous-usage-stats +--single-threaded | --no-single-threaded +--static-parser | --no-static-parser +--use-colors | --no-use-colors +--use-colors-file | --no-use-colors-file +--use-experimental-parser | --no-use-experimental-parser +--version, -V, -v +--version-check | --no-version-check +--warn-error +--warn-error-options +--write-json | --no-write-json + +``` + +
    -| | | | | | -|--------------|--------------|-----------------|-----------|---------------------------| -| --cache-selected-only | --debug | --deprecated-print | --enable-legacy-logger| --fail-fast | -| --log-cache-events | --log-format | --log-level | --log-path | --macro-debugging | -| --partial-parse | --populate-cache | --print | --printer-width | --quiet | -| --record-timing-info | --send-anonymous-usage-stats | --single-threaded | --static-parser | --use-colors | -| --use-experimental-parser | --version | --version-check | --warn-error | --write-json | -Additionally, some options could be previously specified _before_ a sub-command can now only be specified _after_. Any command _not_ on the above list must appear _after_ the subcommand from v1.5 on. For example, `--profiles-dir`. +Additionally, some options that could be previously specified _before_ a subcommand can now only be specified _after_. Any command _not_ on the above list must appear _after_ the subcommand from v1.5 on. For example, `--profiles-dir`. The built-in [collect_freshness](https://github.com/dbt-labs/dbt-core/blob/1.5.latest/core/dbt/include/global_project/macros/adapters/freshness.sql) macro now returns the entire `response` object, instead of just the `table` result. If you're using a custom override for `collect_freshness`, make sure you're also returning the `response` object; otherwise, some of your dbt commands will never finish. For example: diff --git a/website/docs/reference/project-configs/target-path.md b/website/docs/reference/project-configs/target-path.md index 54458efe512..fddc5a93c5e 100644 --- a/website/docs/reference/project-configs/target-path.md +++ b/website/docs/reference/project-configs/target-path.md @@ -48,12 +48,22 @@ The precedence order is: CLI flag > env var > `dbt_project.yml` ## Examples -### Use a subdirectory named `compiled` for compiled files +### Specify subdirectory using the project config file ```yml -target-path: "compiled" +target-path: "compiled_files" ``` + + + +### Specify subdirectory from the command line + +```bash +dbt run --target-path compiled_files +``` + + \ No newline at end of file From 86da948c10d8327f28e91f3f9b241155b2548f53 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Tue, 1 Aug 2023 10:44:44 -0700 Subject: [PATCH 455/703] Update website/docs/guides/migration/versions/02-upgrading-to-v1.5.md Co-authored-by: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> --- .../docs/guides/migration/versions/02-upgrading-to-v1.5.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index 88a908f0d1d..91e12d4a4cb 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -57,10 +57,10 @@ models: config: ... ``` -Some options that could previously be specified _after_ a subcommand can now only be specified _before_. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected commands are: +Some options that could previously be specified _after_ a subcommand can now only be specified _before_. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected options are:
    -List of affected commands +List of affected options ```bash --cache-selected-only | --no-cache-selected-only From 7bc568d698ad4d905228b551ca61c53ec7377d6f Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Tue, 1 Aug 2023 10:50:16 -0700 Subject: [PATCH 456/703] Update website/docs/guides/migration/versions/02-upgrading-to-v1.5.md --- website/docs/guides/migration/versions/02-upgrading-to-v1.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index 91e12d4a4cb..1779d18193d 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -99,7 +99,7 @@ Some options that could previously be specified _after_ a subcommand can now onl
    -Additionally, some options that could be previously specified _before_ a subcommand can now only be specified _after_. Any command _not_ on the above list must appear _after_ the subcommand from v1.5 on. For example, `--profiles-dir`. +Additionally, some options that could be previously specified _before_ a subcommand can now only be specified _after_. Any command _not_ in the above list must appear _after_ the subcommand from v1.5 on. For example, `--profiles-dir`. The built-in [collect_freshness](https://github.com/dbt-labs/dbt-core/blob/1.5.latest/core/dbt/include/global_project/macros/adapters/freshness.sql) macro now returns the entire `response` object, instead of just the `table` result. If you're using a custom override for `collect_freshness`, make sure you're also returning the `response` object; otherwise, some of your dbt commands will never finish. For example: From 6367dbb5a73526add08744bf626f95aefdad587a Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Tue, 1 Aug 2023 11:56:42 -0600 Subject: [PATCH 457/703] Fix broken links to "Related documentation" (#3840) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [Preview](https://deploy-preview-3840--docs-getdbt-com.netlify.app/docs/build/custom-aliases#model-versions) ## What are you changing in this pull request and why? [These](https://docs.getdbt.com/docs/build/custom-aliases#model-versions) links are broken: image Because they go here: - https://docs.getdbt.com/docs/build/govern/model-versions - https://docs.getdbt.com/docs/build/resource-properties/versions#alias ## 🎩 Click these links (which work now): > Related documentation: > > - [Model versions](https://deploy-preview-3840--docs-getdbt-com.netlify.app/docs/collaborate/govern/model-versions) > - [versions](https://deploy-preview-3840--docs-getdbt-com.netlify.app/reference/resource-properties/versions#alias) ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/build/custom-aliases.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/custom-aliases.md b/website/docs/docs/build/custom-aliases.md index 589d64f8510..326434ea922 100644 --- a/website/docs/docs/build/custom-aliases.md +++ b/website/docs/docs/build/custom-aliases.md @@ -168,8 +168,8 @@ New in v1.5 **Related documentation:** -- [Model versions](govern/model-versions) -- [`versions`](resource-properties/versions#alias) +- [Model versions](/docs/collaborate/govern/model-versions) +- [`versions`](/reference/resource-properties/versions#alias) By default, dbt will create versioned models with the alias `_v`, where `` is that version's unique identifier. You can customize this behavior just like for non-versioned models by configuring a custom `alias` or re-implementing the `generate_alias_name` macro. From 0f28cf951ce5b08de8862c91604914073e2345d3 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 1 Aug 2023 11:10:59 -0700 Subject: [PATCH 458/703] Fold in moar feedback --- .../connect-data-platform/connection-profiles.md | 13 +++++++++++++ .../migration/versions/02-upgrading-to-v1.5.md | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/connection-profiles.md b/website/docs/docs/core/connect-data-platform/connection-profiles.md index 8088ff1dfa7..a6ec4120433 100644 --- a/website/docs/docs/core/connect-data-platform/connection-profiles.md +++ b/website/docs/docs/core/connect-data-platform/connection-profiles.md @@ -177,10 +177,23 @@ There are multiple ways to direct dbt to a different location for your `profiles ### 1. Use the `--profiles-dir` option when executing a dbt command This option can be used as follows: + + + ``` +$ dbt --profiles-dir path/to/directory run + ``` + + + + + + ``` $ dbt run --profiles-dir path/to/directory ``` + + If using this method, the `--profiles-dir` option needs to be provided every time you run a dbt command. ### 2. Use the `DBT_PROFILES_DIR` environment variable to change the default location diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index 1779d18193d..f4005cd8bdc 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -57,7 +57,7 @@ models: config: ... ``` -Some options that could previously be specified _after_ a subcommand can now only be specified _before_. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected options are: +Some options that could previously be specified _after_ a subcommand can now only be specified _before_. This includes the inverse of the option, `--write-json` and `--no-write-json`, for example. The list of affected options are:
    List of affected options @@ -99,7 +99,7 @@ Some options that could previously be specified _after_ a subcommand can now onl
    -Additionally, some options that could be previously specified _before_ a subcommand can now only be specified _after_. Any command _not_ in the above list must appear _after_ the subcommand from v1.5 on. For example, `--profiles-dir`. +Additionally, some options that could be previously specified _before_ a subcommand can now only be specified _after_. Any option _not_ in the above list must appear _after_ the subcommand from v1.5 and later. For example, `--profiles-dir`. The built-in [collect_freshness](https://github.com/dbt-labs/dbt-core/blob/1.5.latest/core/dbt/include/global_project/macros/adapters/freshness.sql) macro now returns the entire `response` object, instead of just the `table` result. If you're using a custom override for `collect_freshness`, make sure you're also returning the `response` object; otherwise, some of your dbt commands will never finish. For example: From 44e69aff176989d7315df147275c3383d2a6ae16 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Tue, 1 Aug 2023 11:22:28 -0700 Subject: [PATCH 459/703] Update website/docs/guides/migration/versions/02-upgrading-to-v1.5.md --- website/docs/guides/migration/versions/02-upgrading-to-v1.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index f4005cd8bdc..0c7fc7ebcad 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -57,7 +57,7 @@ models: config: ... ``` -Some options that could previously be specified _after_ a subcommand can now only be specified _before_. This includes the inverse of the option, `--write-json` and `--no-write-json`, for example. The list of affected options are: +Some options that could previously be specified _after_ a subcommand can now only be specified _before_. This includes the inverse of the option, `--write-json` and `--no-write-json`, for example. The list of affected options are:


    +## Next steps + +Review the following documents to learn more and get started: + +- [Build your metrics](/docs/build/build-metrics-intro) +- [Set up dbt Semantic Layer](docs/use-dbt-semantic-layer/setup-dbt-sl) +- [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) + diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index f09066a50f0..89cd9bc6ddc 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -15,7 +15,11 @@ import NewSLChanges from '/snippets/_new-sl-changes.md'; The dbt Semantic Layer allows you to define metrics and use various interfaces to query them. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). -The Semantic Layer includes these components: + + +## dbt Semantic Layer components + +The dbt Semantic Layer includes the following components: | Components | Information | Developer plans | Team plans | Enterprise plans | License | @@ -25,6 +29,7 @@ The Semantic Layer includes these components: | **Semantic Layer Gateway** | A service that passes queries to MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

    ❌| ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | | **Semantic Layer API** | The interfaces that allow users to submit metric queries include the MetricFlow CLI and JDBC API. They also serve as the foundation for building first-class integrations with various tools. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| + ## Related questions
    diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 9f8a9ac3cfa..2eb9cd6e30b 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -10,19 +10,19 @@ The legacy Semantic Layer will be deprecated in H2 2023. Additionally, the `dbt_ ## Step 1: Migrate metric configs to the new spec -The metrics specification in dbt core is changed in v1.6 to support the integration of MetricFlow. It's strongly recommended that you refer to [Build your metrics](/docs/build/build-metrics-intro) and before getting started so you understand the core concepts of the Semantic Layer. +The metrics specification in dbt Core is changed in v1.6 to support the integration of MetricFlow. It's strongly recommended that you refer to [Build your metrics](/docs/build/build-metrics-intro) and before getting started so you understand the core concepts of the Semantic Layer. dbt Labs recommends completing these steps in a local dev environment instead of the IDE: 1. Create new Semantic Model configs as YAML files in your dbt project.* 1. Upgrade the metrics configs in your project to the new spec.* 1. Delete your old metrics file or remove the `.yml` file extension so they're ignored at parse time. Remove the `dbt-metrics` package from your project. Remove any macros that reference `dbt-metrics`, like `metrics.calculate()`. Make sure that any packages you’re using don't have references to the old metrics spec. -1. Install the CLI with `pip install "dbt-metricflow[your_adapter_name]`. For example: +1. Install the CLI with `pip install "dbt-metricflow[your_adapter_name]"`. For example: ```bash pip install "dbt-metricflow[snowflake]" ``` - The MetricFlow CLI is not available in the IDE at this time. Support for it is coming soon. + **Note** - The MetricFlow CLI is not available in the IDE at this time. Support is coming soon. 1. Run `dbt parse`. This parses your project and creates a `semantic_manifest.json` file in your target directory. MetricFlow needs this file to query metrics. If you make changes to your configs, you will need to parse your project again. 1. Run `mf list metrics` to view the metrics in your project. @@ -58,13 +58,13 @@ You might need to audit metric values during the migration to ensure that the hi 1. Run the [dbt-audit](https://github.com/dbt-labs/dbt-audit-helper) helper on both models to compare the metric values. -## Step 3: **Setup the Semantic Layer in a new environment** +## Step 3: Setup the Semantic Layer in a new environment This step is only relevant to users who want the legacy and new semantic layer to run in parallel for a short time. This will let you recreate content in downstream tools like Hex and Mode with minimal downtime. If you do not need to recreate assets in these tools skip to step 5. -1. Create a new deployment environment in dbt Cloud and set the dbt version to 1.6. +1. Create a new deployment environment in dbt Cloud and set the dbt version to 1.6 or higher. 2. Choose `Only run on a custom branch` and point to the branch that has the updated metric definition -3. Set the deployment schema to a temporary migration schema i.e `tmp_sl_migration`. Optional, you can create a new database for the migration. +3. Set the deployment schema to a temporary migration schema, such as `tmp_sl_migration`. Optional, you can create a new database for the migration. 4. Create a job to parse your project, such as `dbt parse`, and run it. Make sure this job succeeds, There needs to be a successful job in your environment in order to set up the semantic layer 5. In Account Settings > Projects > Project details click `Configure the Semantic Layer`. Under **Environment**select the deployment environment you created in the previous step. Save your configuration. 6. In the Project details page, click `Generate service token` and grant it `Semantic Layer Only` and `Metadata Only` permissions. Save this token securely - you will need it to connect to the semantic layer. @@ -75,32 +75,38 @@ At this point, both the new semantic layer and the old semantic layer will be ru Now that your Semantic Layer is set up, you will need to update any downstream integrations that used the legacy Semantic Layer. -**Migration guide for Hex** +### Migration guide for Hex -1. Setup a new connection for the semantic layer for your account. Note your old connection will still work. The following Loom video guides you in setting up your Semantic Layer with Hex: +1. Set up a new connection for the Semantic Layer for your account. Something to note is that your old connection will still work. The following Loom video guides you in setting up your Semantic Layer with Hex: - + -2. Re-create the dashboards/reports that you’re using the legacy dbt Semantic Layer. +2. Re-create the dashboards or reports that use the legacy dbt Semantic Layer. +3. For specific SQL syntax details, refer to [Querying the API for metric metadata](/docs/dbt-cloud-apis/sl-jdbc#querying-the-api-for-metric-metadata) to query metrics using the API. -NOTE: You will need to update your connection to your production environment once you merge your changes to main. Currently, this connection will be pointing at the semantic layer migration environment + * **Note** — You will need to update your connection to your production environment once you merge your changes to main. Currently, this connection will be pointing at the semantic layer migration environment -**Migration guide for Mode** +### Migration guide for Mode -1. Setup a new connection for the semantic layer for your account. Follow [Mode's docs to setup your connect](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). +1. Set up a new connection for the semantic layer for your account. Follow [Mode's docs to setup your connection](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). -2. Re-create the dashboards/reports that you’re using in the legacy semantic layer. +2. Re-create the dashboards or reports that use the legacy dbt Semantic Layer. + +3. For specific SQL syntax details, refer to [Querying the API for metric metadata](/docs/dbt-cloud-apis/sl-jdbc#querying-the-api-for-metric-metadata) to query metrics using the API. ## Step 5: Merge your metrics migration branch to main, and upgrade your production environment to 1.6. -1. Upgrade your production environment to 1.6. Note the old metrics definitions are no longer valid so your dbt jobs will not pass. +1. Upgrade your production environment to 1.6 or higher. + * **Note** — The old metrics definitions are no longer valid so your dbt jobs will not pass. + 2. Merge your updated metrics definitions to main. **At this point the legacy semantic layer will no longer work.** If you created a new environment in [Step 3](#step-3-setup-the-semantic-layer-in-a-new-environment): -1. Update your Environment in Account Settings > Project Details > Edit Semantic Layer Configuration to point to your production environment -2. Delete your migration environment. Be sure to update your connections details in any downstream tools to account for the environment change. +3. Update your Environment in Account Settings > Project Details > Edit Semantic Layer Configuration to point to your production environment + +4. Delete your migration environment. Be sure to update your connection details in any downstream tools to account for the environment change. ## Related docs @@ -108,3 +114,4 @@ If you created a new environment in [Step 3](#step-3-setup-the-semantic-layer-in - [Example dbt project](https://github.com/dbt-labs/jaffle-sl-template) - [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) - [Why we're deprecating the dbt_metrics package](/blog/deprecating-dbt-metrics) blog post +- [dbt Semantic Layer API query syntax](/docs/dbt-cloud-apis/sl-jdbc#querying-the-api-for-metric-metadata) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 54a2f280295..9e89b411795 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -13,21 +13,23 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 3. In the **Project Details** page, navigate to the **Semantic Layer** section, and select **Configure Semantic Layer**. - + -4. In the **Set Up Semantic Layer Configuration** page, enter the credentials you want the Semantic Layer to use specific to your data platform. -**Note:** We recommend credentials have the least privileges required because your Semantic Layer users will be querying it in downstream applications. At a minimum, the Semantic Layer needs to have read access to the schema(s) that contains the dbt models that you used to build your semantic models. +4. In the **Set Up Semantic Layer Configuration** page, enter the credentials you want the Semantic Layer to use specific to your data platform. We recommend credentials have the least privileges required because your Semantic Layer users will be querying it in downstream applications. At a minimum, the Semantic Layer needs to have read access to the schema(s) that contains the dbt models that you used to build your semantic models. + + 5. Select the deployment environment you want for the Semantic Layer and click **Save**. - +6. After saving it, you'll be provided with the connection information that allows you to connect to downstream tools. If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). + + + +7. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. For more info on how to integrate with partner integrations, refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). -6. You should see connection information that allows you to connect to downstream tools. -**Note:** If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). +8. Return to the **Project Details** page, then select **Generate Service Token**. You will need Semantic Layer Only and Metadata Only [service token](/docs/dbt-cloud-apis/service-tokens) permissions. -7. Return to the **Project Details** page, then select **Generate Service Token** to create a Semantic Layer Only and Metadata Only [service token](/docs/dbt-cloud-apis/service-tokens). -8. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. For more info on how to integrate with partner integrations, refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). Great job, you've configured the Semantic Layer 🎉! diff --git a/website/snippets/_sl-test-and-query-metrics.md b/website/snippets/_sl-test-and-query-metrics.md index 8f859c1c1f6..7d309466f26 100644 --- a/website/snippets/_sl-test-and-query-metrics.md +++ b/website/snippets/_sl-test-and-query-metrics.md @@ -1,6 +1,6 @@ -This section will explain how you can test and query metrics locally. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on installing it and a reference for the CLI commands. +This section will explain how you can locally test and query metrics. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on installing it and a reference for the CLI commands. -:::tip +:::important - dbt Cloud Team or Enterprise — For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. You can also use the MetricFlow CLI to test and query metrics locally. Alternatively, you can test using SQL client tools like DataGrip, DBeaver, or RazorSQL. @@ -9,7 +9,7 @@ This section will explain how you can test and query metrics locally. Before you **Query and commit your metrics using the CLI:** -MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt run` before preceding to ensure the data exists in your warehouse. +MetricFlow needs a `semantic_manifest.json` in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt run` before preceding to ensure the data exists in your warehouse. 1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. @@ -17,3 +17,5 @@ MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To 4. Verify that the metric values are what you expect. To further understand how the metric is being generated, you can view the generated SQL if you type `--explain` in the CLI. 5. Run `mf validate-configs` to run validation on your semantic models and metrics. 6. Commit and merge the code changes that contain the metric definitions. + +To streamline your metric querying process, you can connect to the [dbt Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) to access your metrics programmatically. For SQL syntax, refer to [Querying the API for metric metadata](/docs/dbt-cloud-apis/sl-jdbc#querying-the-api-for-metric-metadata) to query metrics using the API. diff --git a/website/static/img/docs/dbt-cloud/semantic-layer/new-sl-configure.jpg b/website/static/img/docs/dbt-cloud/semantic-layer/new-sl-configure.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9e624693aa0aded2da69212330cbe3165c5689c9 GIT binary patch literal 26524 zcmd?RbyS>96DJA;0tA8vcMHxSL4vzGL4#{>mqCL&1PksK+})kv?(Xh7*iOFhP4e#D zd;h#=&)J2CGtabCS9e!eRd@f2V0l@ww{LLYKtMpel@J$Jgn)obfPjERgnJE6(Pij` z1bahL)+W^@kJ8sx5C=jR#^*9D&p;7T)PfGI^?gSm zs9f!%3rflp#MOxjx+8)+ksV=RuyS-j5w=l!_XMj6LxH5R(IP5SbQiJ7>we$5dGZz8 zVWfoPYtr#Y|NG)*70q~bxjg|u4{01@kRFl*r1^B`Xr;0g-$(U88B^uSKlZUNUu>7Zjo{&!^9iQm?(hHB zsnMzpTJ^xRJpn_3_V=Jzeub8WroQUkKvufJa&1NKL|6Mh1cg z{0;{J1&Idn3j78M{)GrMg@FFgI|Rgg@FxVstLOj-Snwwr_)k6q>UScaIAr6m&f#znuD5*G^c^JC4-)!wZ0L9i>1x4DiGW* zoZweWBL_WV7fTB(drlV~(*Km;1i$}E29Of}r-*|&52>1rJh70qoe?n`10w??DeoI% zVq$JPLt{=wVbOo8gTL{ResOTH;RFDjot+t+Ss1MCOaM$DKYj!-G6R^I>A@xF?SWPf zdM@-<_GJGh@|%vZk-dSPsf~lFwH5I%x_bK7jt)Geq`w;a^YdRmja*Fswq#}hPq)Aw z1pLYYFflL!{@U0oRQr|l-)jHq*MFPi{zZ&a-qgj&LS5L@5R<}m(l;$RJJ#=6SB4hS9IY0J1zfI{&(j8v*Lf6RQuZ`8{3C}H~Fuef7Sfe1x`6T zQ*di~zs8W4i5u|0r2SK#8}Ms@|25$Moz4HGf~S-B4L9JAXz;!v5fv`VN?ncK|xb!X!zXErr%Di_D@ny zxnW1PPZ(>Oss@jaE}uQQ>^HYwmKrXH+*a(_1B4RC#J@uSecI)q^+5&rm_ktG{C}S$ z2$=T(Xf$HTKTjK4M*9`5ET-t+Lgf73Kh6IqT4m5wj87pk{!tL{-+n*xx)-?rqJwru z3;9O6ZNpIS-|f9iXny^dr?1eDl3$@F%Q)1r|I+yeW~uBiKVZiGFJK8#eeS1HzR~(d z+xEisA&Hz#9NZokxG;Mjv+zkVt0_XLSF<~#_e#% zl3Jm*QnSTL#;iq6#`9#AWhg-|m6wdm`FQ%CHkOvmcB32KUVTXX@5G|Y5IYHfVzgdI z1Lj|gMPg_*8rtqpXNPVLL_Jm5D_lcx$8NrVCZPzyh^jqp+pNT6w_0)lF3tMdW6^z= z)$uBevDR!+Q_PiKH&@9c`!i?W;*@L7-VL5zJ185KYEgnv);m$zeOs$z$6_Sky1BBPgfFcDwcQ|wZ!$LEukCQ94sDVw9Y z3K+tU)TUd>5qxzDV5OmoMmOh)qSDVqW}|Oc`x6>{$9Pn`a}_UJL-SS9tWw4j@oeEw z)upi4Js~(!#Av7jHfv*g4X)QoTf?bRXyifGxouuAt@vD?f~TuW+uCimLe_nucyfVI zhC|=9nGMA$D-3!nFXq@8!&?nzt(IY{d(zimC8z}ckc;80F&s%5H+!|7lTnMbD+8s6divfIs1`ko4T??=z$cvIw6iQmf* zD*o##%#OE^Sn-PSU{cQlgJS(xsnP8f57@0qK;uAw%;%D7)x81k>47Rv`_OP2E~ z)kN^NneF2PH;->&Hs36^0OMFAKoB~AFSM8|&!iCKYR7=4?qM?UU zu?x_IlZsMFYl|<7Ug1NUITminvvAQ}q#j3v(F)eQeYl48IrOo0Nt<8)e8|>=px|AP+2tlUry$&py!`c;XnQ`iPxP z-kc6bgb!{%ShrS2lxb9rELdHxEJDd`tX`V*_bP`Pb`ALZ+{w>b$K+}3AK{&SVn}3{ z$@j_=RQGtZaj=mqr6^t!!dGdMtt`5|n>PNy@%l8E>u{naKdrGBSWG9D>};h$GO{A< ze9uErrktJBypj_oP54q|v05%YQ^eakUR^Qb<8->xq+{JSf91W4K{!=qGP-Yoo&52V z(2u=Yv#pkw&8gE+y=F(Jg-7p7o`;tfb9AZ`Bg^qQD;JdV1T%SYyjVS9@WFC}>VeuS z=C=tGMu+mmN(c&mG}sWQ-$4`#LMryL8oQJEcxUs5z^9ik0$5@zB#}fOtl8==B3U>+ z*V|QZe@m$3=NX7{Jacc)lNw%N7*py#pAQX%M%dI?W3C32P31JOBm?9XpbEJh-Fa0y zJ-wGm`Vh>EJeosmy_Dg}w`Zz5+E8uTIx#dN}_#!N2-?P2QMV8 z{GgF$&)IF`bPDq4*2>F4>xefRZhVWz(wj~4eA)(ko^@>zwlkzt96DcaTg6)Ptba`d znmedDyym*YRM3_QldH^;=%LeCs5OYUNB@xTMATf=*MH_ghl>2id_%KBw)N@yU=n7( zVuBrK*XHSjRaz_`{#m_zVLK{hjT>?Mv~ThhXxT(!HDNU}>NONc)^ziA0jrPS zP!L6b;Ql6+>*lDCUTMn&BOR{e&_cCLt8RmFxFMm|#L0Lhp#y&g!MiwB-r{J!ZWYaz zHLi|{)MERfCS+S){oypAFGP$;FNoc8s=PG9{K){MvvAn(W#7)DbZIgdMjwB2zlg{c zpkTZ{5qAZA81(iHJZ^GrvMRx)kyU{inE11Tv*^9yP!j^)`wdVYYeoI&RMTc0aouQfb#b9Pf*FaF6m!DhKr? zp)2#@G;o}}VufU3un4x9>vO?|NGh`JpH=u3y89FgoyntVip-4WyVpWzXy3w=!ej?Z zLV0#y#Gya=`wk@|N%7GWt)bG@)iTWnvtX$Qujxci1C{ziX42cNC)t>c6w*IG<2KD!7UWmLEW?G9xg)6ZT|Rr0%6 ziB+6jDqkssh;+)Jh0{PiR`(9eos(V=!jT!}v-j+S(%SLqEbal1S&G7xN0TysklLs?(1=etHB zH5;LPa5=kEtntA^RzWVyRVCy>j}LZ{Xf z7ss$)xo7<;{ji`%_6L#D?9IM89dDlgW7Y6QZ$a=dlCPd3Q)7kIOo(D5pePHMqgSe_qrpjTN5;=?~77XYO8t##~ znJh!q26&V;&U9T2_FfT=LU(x)`t(Fxi<1j+WRC{Ds`>2g4$Rpv0?Z@dH(M^OoX6BE zzUU!REI?Y@o)T)6*!U$d2{E(^>Wbw=j1293 z$2~L^Y3Xd>ZU3i}-g^SX0cf@nK?gK>c`sZ*#Y)2w!(dcr$Mp&k*y%z;?uGZ3NmC@4 zkPU`3vy&3dEw?2$Q8A1nfbFli{tg;zn8)LIC<9yykwU~~c2YJ=Qx=hY<|DG9dD*mp;Qpjq_G)<+04BTX{o0@wCpJ7FSU>{*OmT8Um5uPZnbFH9j;! zm7yR0OhEtgAEibd0^XE`WxeV%{$r}X@n@i&9U6o{)x=m}{cZ$o$N0BU!9}@eii3Y! z{jbnjFpzJCzAz0Pk^e0yObAZvHyBR(qc_EgHBi7+F}sFjqkkL3|Le%XiF*T2mOeJv ztP5@_=*lRhwR^ohQL2_|0<)f6qGyk<4`;XU&Nt=2J}~zM{8EFxSOg&t&F#r@=;Huc zy{J2E3XdC`kGbA?00a;Z&HWY&vJGK~Lh5_}M6MK(`D(yhJVVgcek6gj<60LoU+hRK zR}*KC0r^^VJIg3HnL%%uEs%j5w$5_#y&TVV?9ocgqB&E&RomSLLfJkkX@`#26GbA6 zNkmYVdL96|RoWcWig~o2Bd5F#aCDvX2uQORXeXY54OIiek(Ky6YM_ zP;9x;@rjwY6?4O#=$t}F?P6~5ZMAvd3Y(Rf98?8a;o{kk59Tw{SjeZ_-mhRu3u(R| z2DF2&4`Gz@KdizZt+wf)QOa5v^`~;xJ>Ku8&v<57b%*WWu7*TSC`%8nuh_giKZzFr zNNM(`3Sw46-hLpIy8uO^k_G70r*YT{A`$T(#aFu1ci;1FNVS%4Rm9`1nD^;4A6srX zUA;#kS(O~+xlIYfV;>=XcsOlC$YVUdxn1=-)QOXbc|Wc6ErwFAHodmCOsnZVtNBc< zc8lx2!R}~!Jo}1^&^P3?$O5H&4b$OX@Yru>NAgBH>`&~sMG$ZuVCSxP1xj7+49hUj z*V|^lqg9c%TB^^C)JsAz)pk2(?Ff9U<1T*Li2&GpvfCbj&kH-MH6F&*dc9zT=wUrq zp1D#}S0|q-$ZXh;5+hCAtnf0N%zn+}{!`!U`e0fGx9a?Il<&}fkA1-;uls0w5%{TC zO#$5S`_s0U))D8uF%qTNjN*75&-sPE*LnA?FVAish{uHr*#Rdk&Eq%UV672pl?%yP zjE7Ll1>I8KKCa0?=$!FuBow))&H17(1lY;1fJIC26RYip@UnG^*LIvL9r8SQdUIrw z*)G7+D*l~L-2rzpAd>G{?Y(qDMj2$-t5W)n!_bnJY^mRSsIJX8SH1802bebT$>z#mt*pRUq`Byw2 zESLKhYRnNpTNWd;ZDsfJ5%~{6m#jW+^t=Y)caM3P zx5e(8eUY>2=$gLuCo*uMWzur#yd`Dyng(~g0yuYF^-WE(TFYX^uM5I`VUZ;#^JE

    zi5KBYjd)9(CK`y)9; z$ODygB2UJgfMvQMIa$a9lFR9MVH=ynCPUWi{=&$k5iH&j$h>#$nY`^0@!GCG6*2{3 z0@1u1i_iresE=$R*JFRCPSI<=J%t8*M*MVP*X+U7f~CC`IsK%7d;g zm4aF0YJX*!#%`S^v<&TVFPXES6N&{uQs4uHg0Se+bVDXi_h2JN(|8s${j!V;xMK)` z8BhI}%g(F&tyJs!aRsgYS0At7ovsg*TOw}~czt2+GDfLPz{AB^!XB{Zf7SL3DtdK2 z_tvuSo_*DQGSlh~iDCyo6q9~JBIPo%x^ym?t@V25b7KlBndly;EkQ>t)x?A39#`z1 z%?~1Wr0Z8A>3D1w3B389UpQ1sG;$ZS^s%lR2)LX$2ENlD%CF-mC2HudwKH9b(dUer zHfz<<7)$5dvm1l9y09pg2oCxpTSbR!bbD8nxS|MVsS*kR%1`P)v|Adj@>|?3HbG(! z(~;bPA+z@H=+wr>vqTUAHBfTOC}P(`D)!k+wW_PES6dtLueW~`$#2X=v0H2Nc-rp_ zji*Cu+B5EsMuC{NAWn@2zwe*ZXjK0Y>QUo51NJ%k+^jFK%_ihmI>H=?z)O2X%G)l3 z2z|^UZ{bbsodIXtxCJUDNd`S37)aL?$3K*dzV8?hsA@~W^6oNT&4x8KSf!TP+Am?4 zE9KD=uAGnN3sDoOcsK!>LX(7CJtWLuQfrZ+r}0NCwJi~(N-Cc z?Fq$_i2}8JuCoH|1Q7(8<#fF5s>Wg`Hz;d+ZoC%xBJ7V^e*(Re#^dIYco)rXs*py# zN`PD~1l*OLCRwqae0;ndy{_PUz7s-#UUCSV3;gQ89*WP0!idRejo3k;(^_hAw${-| z7i4E*Ke8LlGm<&oo}J6XW{N>PUDo{L32i|2QsK_;0n$&UiF1FHJLA=n-`(gtPgd$ z_bx9B4RHvNud$4m>F^bC$ax4SAN!!)V!8*U498lRdg)vOn<6vtA6jOvl!k58WZEM? zb71SH-6gVddLbwHoOKcMnS~`bE-|t0pCRS#v}WaHT(brcm8_I1?LGv7FB)OjKz)%G zO$~#aC(mo{;f+mBnjU=EuTNYS7kezx;Ap+!5=m8cgk5QHm823ty&s74u#W=n_@#pj z0G=IFuMsDaddoL7gK;|Esitt)UgUV%lK5({5s2uP%(oavZ8Lb z8d=Hvp!c<&H4@N6jHq2TTcF)CznnMLRQxrm{po|7ESD3A6I>XV+>rWX@TC${* zX%?wvCeeRp<0*-_F*q2HyH~9J8CW19jk9?fv9FYHxgq!;=@3u)U<&Qk3ubKP6QT2y zI{zI!=J>~CuykO}j2P*y&bq+~YPU~$>YUGrJ?!=^acS0c+$R9;8Nu3y?8dERpE55@ zD-rN`u{(N7b7;^ft#wDpv~$v0>>0LyhECC+*x|(U3%J_&RuMQZA zCJF6Vn%$cCICQe#rvury8$qofc9+iCjLuS_JB5flq2F)3p9WA8?D{4MG?92Bp4-=x z5Wm%*CSE!Uz^lJF+Xql|%Xivs^=GcyRw+zM%%oos?rrYC=meP2NcJWCD4*(|poP*=AN-h@^P0&( zq4*D(MqdWno01gcz=Cl=^!8@6w3ep=pw(C%q2$5LR8)Fk$Ga1e2$(Ht zp;I+5=8IHg(!|47-8P!$t3BFXwlo<^P#_LNRoxjzNryiP+W%Aq* zVkmWc zTFhM4-P9`*pmjQpAyIsK^icBZ=i4WD2G-7@$!vVZ-so$}EV^xb>-2vCU`Al?S7}}I5rjNtcgH{2lp9aB9XiyIJI zC=B&NFU8#>=N-529vLsz9aF|enXpX3VrXsc`L>Ta!YG_SEIMCvnCb+&K@kKN-kGkz zk~bf($(j6y7+h~>oHqq;-C1j|y7$uEx~&vVIbO`!)_Yl(}5xpP8HN!w+0*ko$iqr1V~Wn$`G z%bIrRAcw1|WAK)6-Ke@OAbDnuHI9@0Rq#Q0lIhAzZb1>7O>b9jY zbbO374NX#+I_G*H)d>07$N&-ow2v?4=iwMrJwXzHWShw-$BjZ3=$U1;%N#Y^9a}hE zIaebM{NivFwVoqLP;9?~oyFT-)WG5xQ#&Af9~9}+Ft8ikl8UF_U_(IsJe&Z^ssu&2 z4t=C6uk1@AsYTpH&4(6pkJAhHr!uZU!bE82)~Z_zuZ+!?y=2>7OYj(S5CHprlA$mQ zW!>HwSi2>uLFd)+kuIE!4r~;yf;Rl0<>U9uxOzvPL>txuL|7O#VFyA@v|@skS(q$G z(#fuSO8HiQ;O(E`beRk!sEY?&9>50mRmu=H`+^VekSlUsRH0_lx{q5Rg56t0rM)Hb z_ndrLHa5aO-p+#MAfkr4ubJ!e%mJBcGsjbS??~+k5-F&~zu_?3J{k4%;Q@$gJNa;R z*8RugBv>f$bNaH#t09m39J8P+wGDmk8J!}T3~nfS=QW%#&M<)P8Ne^YvKbvyHYOwcAhg3aH zWM4kNsFpYt1anwnp@cbLqpfQ=(y-|buyF5aVy;TUXD3k&;N6s(j`R1=Y{3r;_lSyk zO1Z4%y1_=S?n>1QQ$WW2;nzE6;;zs%xVzt|9Qj=C`6*LY&LH6ON0$=Ox89gcue?Yb-{61vyt)AWCWbg1M2i>(t;7zUtM*dF4%a@pZ zHvzRWRBMkOpz~}!pjhj?oe8XJ<&J~FT=#akqyjM-x5?D)RBE41e3NmwwQv zoTWIUf)}=iLdEpO(JJ4_^Ch;tMo{h3N%H6NUh=wb7HFA!#l&|5+XicwJYQRm+TLd6 zUoIU>73C@aL1l0Qd*kX07*KKougetSTAQPdALxbhbrc0NjZ`~fV}gf0jRaEYE1|TI z&nY=dH}uq}1a0YWG|Gjk%&J1Ipty4t#qs$@bbE^ck3%v{{mFby5Vd> z9)mMYdj6)Nq=3OLzV@2)w7-viA<7 z5)#CcXhFdK>zBcZ=v2Mze~x;I(cs5?ae~X$G5&QN3k&rwVO%eEUhHopLBim)D7a+h zzbG4i2V#^1Y-tm!FeUr&!$o9{nI)>)L^HZPP! z&T}^eJT!M%a%mhDu>cimMM}97hJw*PfKCg|^rAcQE`xR~XIxrbH$1xd5{K>9V4cRD zrl>Ia5^yi$vB@CNYH-s3jnqvT4p|m%Tii#FeYAVa6V3aQ2WK=c6}t2RtqNe3p=8Ya zwTA%nlkHL7xX5I-m`EM3<@{DA)ZbI{)eHV^*%x^F>~X(3tCc&!Wj(kBgOIbEz@+%> zH4H;a*IcU^jPJrwCkxU7Ra*mo#*jzl1f%)a&Dm@d@tH(?GM$#}9ZsX)G#>tbVf`d$ zL-!4Fv%+Fiv`8X&gYw%4YDKk&RtpC_UTI@`ofD}E%A`E^@hlC^8yr4aP#D33@M7n{ zZ@FniJ8Oci+T9yxww|U@=d`Hb8ctHiHd#*E*y2*YODnm(AOS8zEWz_>40mHWAv(aL>$ z!o_SnLl^pU$Y^kDu*27I?6gg)z*r`Cz^$ZOO~l9Fe0E^%XWQV6$HSFvvoq0o(Idw? zJMBvj%w?{AC}wnpsG}C!1#-%Vp9A)XH)H(lg*UEPL{q!vFmArVBgH#t?*ufzJ3Ice;x4EwrYt?-PICJB1-DC5oSi#Ifo7}oG z#09xi{uepr-A}fr>TL?G&_F7pb+dNT;&vg~hvaiNw65c**jW|8kNCuP+Y!s$J=@Rs zGPN7%aUFM~;>q+SgQ3V}rJ3fWGTLzPn}BPLC1nG%$&AlY4w_tfD)>n8f!AZ}a>sgL zAS(N+Vgq<7kzJ^~U5Vz+VT~0u*XFtDt%`h&l+3BDV!52PiIz^Qtl=7lPdyp`Oz+F( z5c{0&Ug&?8x7_5|utT9TlyKqn^!noIhk^!`l>=v+?l3NW^osSA+71#nRsKl&Y(->0 zGSj@#9?EndH*-PXZKYUn*+d!pq@a5>+P8;Dg1Cw*qM%c3ny2p`Zn@Wk;fC{oHpxoz z;M}SKbBl-PrwiNF){7*xLSHUV5+y8vijR9Z@A7u4^R?S0r{jmZs{%#S^9I#$$fLRa zNyR!3E{V*}x0r8nNRN}*;)KDQY5UgZr3N>#2Rp#ZJ{Rpbowqav$LoB9}BR?4&{lF zkkA<*&|S~$QoaT}nmOPB)_$Tky`GS|u#2N%mgq6V9sI^wbM)68= z7Ae%PGDoTmM)K$5J%!%m-TP3_RnN7rio6s^7pm^Q(v(TtZ7tu(o76euV z(w)Cez#vGXVa$Fs-qD#51p=fnsECb1-$mhW4-S%Ui#XQGt-1(#?oX*Z5%JR1EO=6d zbGer;hB+u)xEPKKgF_o%$HltO+Tf$v@x1UUU|#emj{|Dzd`#taZp32U z`%0t9#eQq{E9zD>UzFps<{71H6*}#uwC+u(ft;ULE^!QM;wJ?}DECz+Sa9appod+) z7dYj_Br`z;*N`zu2 zi}qXPyoP+R;0^saDM3+ij2ed3P%(F#=cRW(_<;RdTM|C1h~4UooWVFZkWl*7Y~e9Y z!Jt7A}?$t{=mTpm-1&8oWgioYqk>SptdAQ{tfHvnUaZCYa-LhOW4GTs`$qy z`#{WOmbiZA*GwjKvPWXH^^>{M)P18VZ29CR8h)=viX3F`d%)kos4!p|C^$_Idijt$6}3bWZKX5 zL0dzy>N2Z-fF4$q+TJUY*U01+x9dV0Q@U=8txv8r_`6*OIMZYf#KvILk+*@d`;!*XoYCS- z#j+wa{zf36VDUln9gx{YL2tF%ioWcVTZfV&fq4+K9?IY;n+25)5^l~d!d5>?oMh}2 zA+HB<7$9Nfg+F+P#0=DQQZ@R9yWzO??0a`wcx#v3O03zTa6Ae(0Pv`$EM|#UKP9_VXVj)*cD{ z$SD%xbZs^(3+TnU=p*86wO)Mo;5@ObOk!Y2p^fKnzE(`5aQRq~U^tNFKk%T+w4~KJ z^{{`ryOl4;7dOxM_M1}~YelmwjQ!5kw%q4R;XVN;e2#Vlj|5TA0y_*GM%(Bc$xf+2 z7y-2mLw0FBETzf4vvz$w1bxQydQxenE;HrgA9*jkhcFy!x_&)036jVqdL4*#Wl1{$ z;)Fcr#y>*7j%ig{7A>{fi=n`p*GW=HnOW0g&ZIQh2sr(af8`wNKBC#2(f8IMkgvOR zr5-31NlobHhXNm#zl_VPqs~?UBT-L?f&_UPSJsj;W}&1R5P&)P&!zg;7x=qr-{2jR z0A!^Fp}36pDs(-^>5Y^Fn)hgvt6o0}HZfNnCPzcN8!)dAiq!g4D+;)^LBp=W1(@S5 zRS8UlIY0CBKIu_RlVTXSk5qZ4JYm2WXPbTtI-(_HE84aWyRfixJq@&@s0mv z)Z)vs$0Eo!z2MQRFRxa*&Xi`M54-E(J?5K`KrsmR=TZCWORc9CiM+7qB5sjfYk+6G zTIc3~8hEFF|39Y(++0X~c z(EZ;42YtA1`N>(5^p?%sw1@f00CCjIvF!Q|6v`mZ;qp44srVgoNlzr6+}Z9h_ccb=%SIhp-^cU zg;rC_cU?}m<6&sC?5B&&pH?qb4jQ6{wTp3X1QS^_pGl%|c zT2RiQNgYBSC9VjIGS^%Duwq1^GD+I0FUH37HU8O$*vPd%(BR$zUtJ(>z)~~3vimYe z^?Qrr{Y8*?58C(x4!cv#U$hC-ckt$-9qBFJzaj_}V!&xr`0TYw|1QU0uNuV#2!oqT ztNfpW1fm4L5)O%X3`zbAn*#cUP2n{dPWu-&CFfV#yP;ygzeKZ;z2*77@PIP(~YZj%3PQSxKwoZRyl0AHN3AOUe|jI;p0S z0lw4YZTcW{h~Wsix>Bwk5D7NF_(AnGohJE<)A13TjBwi5`r_rXHh1l!JcnW}7Sba9 z`9BuhlN^li2kO9=--?DuNtn+{WJ)KJ>n+t!xDIjPTIV;Wjt2#(SOrPO=)&7RBHp?v$r zNTPUeN%GEG0x#kZ2qptRZdc0`=d;_Vg45Ozu!S_A8O>|0U_^G%@ex&I{#g*2#9+4O z?Qihu8Aw(_Ooj`SD_wSFf2MIdQYB$jNC33kNCHRFFoM>{=GLor9ai6ajcF8O&`_Nj zM|^J3xX6{mO44u63on7*>91S8NE(TUt_j6Lf9xQR&=X2(%UsRw3`LE5m#CmuJtz8) z(75n}?KHZNZP}h*hrNVM{Yzu}uI z4)QhK_7lC7#$)I>#%2jWuoG5i=ZE$&N{6O?vG@?@_$0w2eq2O`; zM5w{$xX~enTg2FEg|uKg_Llwap;Rhbk5Ki)L^z%+-%p`YeMIHcLyQ4+Q^Cnrrqf#a zw1x)ehfSwwIsquHUh5*2!6W+5Mw)}pTO!l7k!GJ}1u-d23R~OJ8(d!?dFWRkrd7$k z0t+jK(8U8<&s<4B$pHX&){k3og?2KR%Z1 za9(vRt7RP1PhUOHVbB^4d;3n@6--PtXfMmx3~KX< zJl6EQY?-ibBV{(MkLh_l-}xgMh?wWrs9tZ8NIXmd9v*?A8yu-!xS$)1MT$=!JENZbFGMC#+zmr|dpr$Y}_{ z|FAZGq}U5x1`lPS|C^ud_Pd5BGnOi-Wbq|q9=+ZrG`*J>LIPaYi)^NB4)r&}rN_ix}Gw!++zggYX`o(qrOr#qqtqmSA_E#G`&nlS;EY!Oat+}EfGLr_kt=t zO;LajwbtP*x{DgmHHPJj?vV>c>tIoZ8ADsylj@G;;)$l=j~f!^VFzGjB68l4kTL}N z9|aP9*9t;#U1*l6p{dk;K$4Q~ zaQk={ZoE)+e_}ss7Kzhrd=~Ls2)!*vqmzg~pDUQQq$mYs+g)xZtBP@ z6HVTjl0Q|^B*~9Clpugm*?qogZcUBrTmQ4uEOW3Fozk#tz3al!*EO0_O9QxFz}#qA zbaO1mJV;!eR}0h$o(NzT1@4Bp&#Ut$-Zd??x&fw+g)Gd_F=99!mtD1K>3*obQ5=a^74gQ_-f=_qlx+&?CmE(+j1)q~?kdU~{}fUxk_U$k z_!DDWud`43A2Wbb08Lo%k?&J7g^?sZ=6bGQd-tZB;lB>rdLk&H>!zY2iBG-_xW`B!TK^?!?0dI9c$>ggFr#qxlpsBTPG}x7H#DleAadnYM1gM8R3-(9(V*@hw&) zY_C;h?cNupvAS+}ysyb;>xL(CX2hJFv7Yi^_OV&+5IPtakJOhVIcT$z*9l%LnsB{R zyWb6saD9{)`2spHh|zqXUGEU=5Bpp7=)!Z`vD_B~`%XC=LbEz@>2{DFYYAztan_7= zsm1xgT%BuI?G7{)slp(bq~vGGXgs*3s8w7|Ij#aPjdER)D7p#rVk#8x@Uycw^XKnD4=%OMt-cC_B*q^4+eVV)(nQ}dozT6T_Tvtxc7Ru*(x8c_BLOdnNPl`tC9;ZYznPj zckW%P>7J5+H1D;_7;uIuNrcTpo)3un{J`nt8(JoFMfH2Ab8mTl8>az)#ZW(}CTt?W*VxQ|Nvrt9Ms z^3Yo9&5Y`#(^fbR%U1nH0w4gk#9m_wOHumwsk*la7^;q+>4t4cwSau8Pe;KJ&FhXB zX+NVB50Fx%&_tQV#`Ud3N*k?~{PHnWao29mR5}}zpg|HAna1zilis1)Poyd$dj|9s zrEdE?mFwgJBe$fn>d~~(MYg=%(L&etxSHF(&u-0eU|td6R8164>8*vYr>792_D?D# z-oO1<7+@&B-_Y3`n+6Lo2e}TtIp4lwsP)bE#OYXpbM3rnW9e!5r>BpSfdabK5Gj5HPOn$q5F^>`pRpDDHjBX}dX z19!GcKG)?a=1PJgp|N9z2#yOTX+Y85FdXy)_o3fW<8mSV7GA24KPl7u!8j&zxioH- zac~FY!R%=~C^-HKGuCLnUwH2Dg_SDPZh@929rS#8axPG-$QnxH;nGy@G*D@FvAqX_ zt|>%9-euCzasykGugDV`&6SGPD!>7sh|yFEq|Op9DgOvt76lkZFD?JLmmRqU20axrFgbW<^@I^#o3*b?ZC-p+M*fs#bpvV8O3s!c z1YEV!NgsYLn-cy$Z~r3IeyX&UCaz!DEEr}_X@cf#FrYT>=6G>%x=6KzPW*G>Cu)yU+s)pEA~V^> z!o$b=%Zpw->%FT6yX|N&Xgq0ahAU6de74l`I9mn`GN17f#9MJY<)IxZw_0xG91xaQ zgMc6t`1QX4w2D+pw!p~O>BTgVHO4`;Hz&y)SUgG>13Vkd59?MvX{(Hfqtm^f)k837 z--BVz_Q{yj8BYnK0M*izjM3g&>s1Co>s{802(BMYyS#QhgBH2ece-c>EzV^IY4pWm zE$y5Jm-8%RNR_pE$3qp`q9$H-_^ANeytLl=v{~Syl8#MymL@hd8+Yfc*NEjIUlyth zz=(O-Q{T~)kM>t=rL;L+HT#8;XRrCLr<6dT*VbXEr8*{`TU=|N-Pbt9(!s^hNrUrw zx$u$h!C-K5omTh8xAl2oFcUc}GU2;wJfn>za2SPS;$S>rmhW}fg%GK5cKvS^<^*+s z@Utv0uaf|bTC%5-i+NV6ux@mxz$TE0Cb#`yI?c3Fr24FN_#6TP^m)*|L zzPwT$!(pSxLv6NnB6Ec6^})wjI0r-m&QH6l2=;>2dUN0#BYgX@Y6%%BF5{7uf<<foTlSh{v!t^sd?@ud97hpXm^|sVDP_#&a@y=%V`0?y7fNKILI%V-FoKU z#-lw}ZSp~q?!bfbQ$>U8q7ukTH|UVFm)uqLH-%k_7I z!SD1Dzkt!8*GTw3Vt|KLNgvC3DJ9#vTJLx8U=OTjiW9TJsOShXu?UWx;pAQUEVcN+ z8{L$+_BwXo#orzw0~A{65(Bdk#~Q+55TLp13?_Kf%)e?yl@Og?C00!ObaSvl(Em*& zyp)GxO9npKiVYnY;|v;{Oi@K3!B6+NNnG*R&yBApX4xfnQn>B(N4O^0Z43+giqhGLqEW8vO)c2ggqCo_Rx?9W>v>EjXq{(yTl30{?Sg`FaXgU;7fAu25O`Q*@~0O*D297+*NF1N%=I05|-#QGq2>HB6D zW}thw-3qLGC(;of_m~3A$Kj;qJlLK(SvM_Es_!fWs~6sGDABuD5^b>kV+H+^`TeA$ zz`Fi6i(7pr9Yh)j4j~A+AeZ!khA%J5KPXfwDa4A}dvyR);mc&uXpN@75=QM!ee(ns zQuRnX1t>8&^Q3Aun;gHdR3rvS{y(IGkv%kl1y`hm#hty?4DfsE-|jlPWqBG=QWQn!3e6WTF}O=|~9Lw|O&qd4z|4$>AKf8)_zq2KbEk zLW8UEwzV|XmM(_~rAl<46!oQdMpBFNE5@z;9M+I+>($ma2bQjxz*^YH98+lz?kztD zTqg>nktKUd*Hl9b{sU0XLuEx`*-DkEUUKZvy!Fd?mMdtPvF|$61{U|9fw+tL>c+Y| zs_{wv{&F|o@o>i9r5jm)_zecl)@~9ZobonxSxg~j?@9$dgde{4H zzRa9+u5*>We|!J-kjk#V=j@BQ`&K-HTCtw@=}C5Tzv(H7s-aBWsIde>of_yYCwxwY zVh!f^+?+m2-3{+S`%FV6iZQlsZfoP980P4SV;dt*E33UK5&Iqa{Wb%p#KJfSFuK=Wr$BP%Yvy?ru>4fC}^4eZN<*SP}lczuR(eOK5hDR08R*%_StN7eAd)0lG4j7!G zj^JoXTmMSoF_eR$MkJ5j#>VHd8{2_8+g=Jj=N{D&iCm8#Bt-?m3jP>3Y_uyFs!?O^ z@ARtK$Bu1>`r)z{tqq}+*G6K2os*a1_T7av&)FZHUg$nzKtA&Wy+`a}xY~ABz7;Z# zmv}NXjngF8%*QuIfod^6nWEWU!bM-f;V;+aP=X8c<3P_#&Xv_@W|>D0S|y*w3v2bn zo`MQ~Y2;9LpxExWxQ9L?9hs^3bm11&;KMD(g-ul9+k||5@%CS2)26_5HS=+Ml2HEy zW={L3BA;op`Gaodr(W+cDo@FqS6RM@JK@qkR)PoM4NbYO2tPuV6JI zS3jOF*F~UEiz$A3NXs60F))X&V|tz@2!nYlt72dFBCPkcMf(vBhOBX#sv@{04Hgqo zc=gs;%w2%vAi?Qh*ablUe`>G(tPb=fGBGy5kl7CBzPm~6FGMjbhn?2Zh?2TCZ+(4s zw$kRmr`3;8fM!5$JMCjb$t7j4G580S-FOwTLheFMdx1!Ofq){Ed=gjKA9A7~$-U0< zKXQ%8Fl;~`k>8M&{vY-uiMRK^LyLGWdGnt3#pV3vxvDznLmNDo@Gh1)KyJ>?Q<8Yp z6aUgUew_26s%Ct`3xWiYo0D_tpjlM^VzUF%7Gz(YJH2pZO#l4hNEjaA*3NdU{%GR& zKpOyAdwQ(=`ky}>sihepYyYQjuKZN-Ls$Oocl zBCI~AV*u3$w?>y+0-A=Ku-AUkNrP9Yc(D7|Xq(R2#-Ubuf2cyjLzk(S6S;3VI`9r~V*I`w?tzdPZv@a7Shaj%P0gZFN(mHk2ax-eApHc+Y-!zHuaAh;fD&>5y! zXQkM#t*&huuJ&N|iZOg1Kv{n2uqZ3SxV+b462tn-e3WkHsn!6j z3s#95J2<{6AF{Iv%_oq)e*Gog8IP=ZCAn@5tDjXv{q3$>MC6LN>nIkd*n8qa=BN_m zA={s3`i*C=2cb#P7Zbfj2oIN5iY*@C%?tQ&WHn@!<~MX)d=J|8X6V(vks^H0)g?_P zr!&5){2{o65LZ&jzKltBpBPxCe+)DDNd&P;-+3is!!rnn4A@0xG=HKo zh4fB4*g%P;$%r6#OTL!N))ZCL?Sl6$ik*-rqeP5CZOLHIF3KfUc0~-PzUXz4B{w`_V|^CHT#1laXUgQ#HdwHMlXe zr!&f^Ir3I-ykdqsVsl8i0`0yJZ@EVNuc^Ws<82#7G-8ZlXpXc=hzW3?{C1y7}vv zvBF|byc1SA)1uo^?|Uq$=8TwEB-fsb{_kIo@7$J2rQ`-@&xcY-@h3o)Oc7#wAP` z)+oePs1tVpHWaS(dT)eDL`%xmkN7fTdOxik57Qgn)=!}MIgx`?HLAYJ&CfF2#+)k& zdzao~@=K2hTo0Sb+=28g{ygc1D8nyG2xILQhwp8j6}DY!J+T})R*LU6^8zuxO_Kf~ zXj?C(6aL*Y>2B#w2x<=^AnVmLV5%(L`9(7LIzOamPQ;lqK{~!z?1dyQkJ6X=kP(Ek z1uY#_W?oLx=)|E`jrc0)X;=4BzUfAgzLL2>-S8hO6q2J8} z!fyRA-Na}HcM5tO8+bPjDKy#XncAGa8cPRtHt3fJSOF3uW8m0ELSC;Pl6n1HN|iY~ z$ff)kp5S?NrDVo1lA(IX!g7D5*!wK+xoY;Y@{Q#&$}?iu*>$d8>z1fu(U;^Doa1=a zOa&EW@tBUbS=grj;mJp^4x`sEGRm5LL0^r$#Opqd`966KO=V-8@o_OO%`6gvFr6)) zx!uiXK;Up?T880FNvAtUs5%aG5f{}W~Bz(j%%?pJ*5Q#I} z-6qPqTt}C!^hpAZ>nTTD!310AF*KtXG#;~OO;>n}i)k1kfI)=|Kzy724JDG~1$Gpz zCF*}V3~%}sen~bd;gm__LNL^=w99vIGB#B*M2$GEVnCK23kxiYiM&!FmgX~jCV577 z!)tdi3al!9M;0M800rZxVW9=v|z-P1YYD(XG8ctczwT za@1n={z)%;W=6vh=D8^F$O0F(bJTV-O^nUy>pLnhh-yfSId+_*K1X5iL(!fh;|Zwt z`l3Cpi7fRSI_dju7Qn+r*>6JZtbscB(GP=TwX{SNrT%u&cUk6dx?E|ZUg=GK z6}^DV6oj(E{-NX5z%heHnRsoFGKywjxs_fRny;s#Z*l3_7o#s+I3n%!={b&;!9suC%pNx8wxT7~d5Zruoiwv}`PmBsMx?Gfi!6Cs`_i*r~! z4J{_ir`szevnSs#8^{J-X|ebk@o{d3kC4aExR!)xi(~NN+7UARrlxif=x6>vpSNbP z%y}W^=n@j)p*L#U^#vnZ$C%3>5xavuY~+4$sc=g4x_4%f=u{xr#Efay|wp= z2x6+y!e1%ZX>zHq&C?V68%^wCX|v%5zpQZ}Ep#!Ar;y!ue07<#DsRNg7Dg`*-uU@@ zI9TyCl*}w9E8QFG+_bslQ6f&k=?px86QJL5PFG#5z5T$j&=Z>#!ch7{3r^4%nKqJN-D?+=a+L5j3=GC3Aal zxc7Q@^}2-!b3L*aZ%heA`g<#^*Dq%zelm zhHB@~g*xiJ@|v9*^KvrTG5smL986jDXVNJ?2JaVXQ`UOEMGGW9HdpNFeok;6KZ||> zx11BQhSJI}9p=cna~CjYmSYG>GP^FH8Baj4mX{?s`WZ#XXD8o2`=T%nm(9ZlQ{gT!3&ax4(G)w+q3MGu`p2<>hyCXs_r@DY^dT)b66h<(XRdsYO5D zfVY%|35%S}>yD4#%D+iYQbg{WTceF4^I)RkpZnlsvf8)QU9A<#JJd){&{2lWaEopXc zaf)y?x6$@_$ol?TBr$X z0xm%5Yy5!Vb7|;0%MMRb;kObas~wIig&*{} zJ*IP0Kkba9(b_CLF!bD1NF6W7Ho0GQL8c88?BX`+5AHdy>$OhH?f=%+fT&&|@9V^T z)KS?e69$SljG~X5(=ATCGUeIbM*jpW7)j$A3ISzzqr!sM- z%x@dg09bhtw+O!jGy&v=Hp9FgU7Z;d*=pbeu%c#z7Pw~`M}97P@7gs+5{yM$q!W8Na4j*fTd92+3gzTL@^&L5 z8#Pn7VhNXk}<-IbVfPF?mNPxL-tvI81mKS;-$pDpF| z)fEBicu#Qq+vR2dz#PYt)N_-dOx66_w-gar;SWm|&pL?rn)gC-wPwZcSS+uJ5j$Y( zpbXuuaT+_s{qk(Aq7ydYXH{oq)Gf?hG@H{o?jdK5Z+p*=dKC1~CN^0vT;Wc_oX%

    Q6^lnwpyS3)IqMzU#=fW^ zVI6Y5+KX3^?V~s<5BnY)0aI;{t@vPx8$*2YNw~LqLGqBpbg`W<`#}I(01h;rC*&QW zS-M*pa92*SUF)I2mptpE;CGr?3Z!<2CzZMr<7HzcE(LshBqnMhM--+o=5p=12xI7D z2G6aTxT`rz;<~wtU7i=)xc^U9i~_yvN8jh_X$Fy4G&kGPLBgCtBd2nF3mS*)e{o<2 zcxBE@9o!EZDfR~{6RKK*ekE7iRSp~&;e0BPOYCU~1`-2So0~94bot_JSoHvyTl@Ru z%j!!c_qb##td8gzWc7~T9)q1lL33y8vsqCRr`XS$dxZ}Sj22q-1ynbCrV%bj;2bl5 z&;psYK&hV88k~z6!1f6Z8J_VxXGsO^S40u*?!Ql?R(U2(u_WAAIFqvx^l7Jgn;@fD z!Q5h3Xz}80QevXPd5YzUJ;cw1)Ozc}NLm#DNO`NR1loCk4^6oYv|nxK-XFZj&^%IP zqz?>ao@Fv!jhq;In3|yvKM*|95tidd{Mob_4-EQp>P1TF?n{1yp@%!C?MTli?c8`ZVv_rl0SOy=({UUc7W9Ecr4BLu z?-3&qx3o<#c3oAJl|3_qd*XvO5jXGDyNnOVAy>pfEAJ3{&>uj0mmzDhKHJ2|RsqCI;bIs3Qe1}@l7so;{RpQ=4rSD_9T@f|{QmM79oEJC_$Py&- zzb`BoIo>yF`ISi5-co7+Y%kS=tY$c&`jFcjr>DSeatPffYfQ=mI0Nb<1pA4RkSklx zXURmM+PKupwRMDt;V14}M01AscAFllfXYr;UfvCHBz{7e8|#}ejXezKnO;e;_c-i@9Z&0!FZ|-+PBy%AJN(`Lry#&OYMK}yN=`&c zhXB0MU3tEG#RdCj!QK7zzn97fHjoT=!}ee=ZBW6>W?U@0+_j!8T_H=6U$NegzQ-EZ zUpXVqTbB7Kq}_?s(Y>#~)vb;Kw1TtmexKTFxB#E63MzDsb`Sw3O_ z6_5E(4CbRYh-aqPw&-)ya?jF{wJFoO=8g)P%Bq=$<0%Eb`&3Lq_1%J@P zj-BrH%qYC)qJ3Z8^)Q>@4feN{6#o`bDZgz0c%1rTv@Vf_9N{zI(?31+EhG57bb$|- zqygwBc{SkMU(nC&9QtwH?eYB!nZ7^i~4R{jqWKH<64KtuSuuNe5*fFJ;wmPOn<{tJ=(|J(b2X7pOlE=_-g WEHp(2MxXx=i=v#GY>Bj4z<&X)dlrKL literal 0 HcmV?d00001 diff --git a/website/static/img/docs/dbt-cloud/semantic-layer/sl-configure-example.jpg b/website/static/img/docs/dbt-cloud/semantic-layer/sl-configure-example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d73b6167dba47c3b312e60d8fc0bd215a8c93dd9 GIT binary patch literal 51854 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 Date: Wed, 9 Aug 2023 13:40:35 +0100 Subject: [PATCH 607/703] fix typos and add clarification on primary entity --- website/docs/docs/build/dimensions.md | 7 ++++--- website/docs/docs/build/semantic-models.md | 19 ++++++++++++------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/website/docs/docs/build/dimensions.md b/website/docs/docs/build/dimensions.md index 2e2776e5588..49ae9045021 100644 --- a/website/docs/docs/build/dimensions.md +++ b/website/docs/docs/build/dimensions.md @@ -61,9 +61,9 @@ semantic_models: expr: case when quantity > 10 then true else false end ``` -MetricFlow requires that all dimensions have a primary entity. If your data source does not have a primary entity, you will need to specify one. +MetricFlow requires that all dimensions have a primary entity. This is to guarantee unique dimension names. If your data source doesn't have a primary entity, you need to assign the entity a name using the `primary_entity: entity_name` key. It doesn't necessarily have to map to a column in that table and assigning the name doesn't affect query generation. -```yaml: +```yaml semantic_model: name: bookings_monthly_source description: bookings_monthly_source @@ -75,7 +75,8 @@ semantic_model: agg: sum create_metric: true primary_entity: booking_id - ``` +``` + ## Dimensions types Dimensions have 2 types. This section further explains the definitions and provides examples. diff --git a/website/docs/docs/build/semantic-models.md b/website/docs/docs/build/semantic-models.md index bc188eed834..bb56bd212e6 100644 --- a/website/docs/docs/build/semantic-models.md +++ b/website/docs/docs/build/semantic-models.md @@ -23,9 +23,9 @@ Semantic models have 6 components and this page explains the definitions with so | [Model](#model) | Specifies the dbt model for the semantic model using the `ref` function | Required | | [Defaults](#defaults) | The defaults for the model, currently only `agg_time_dimension` is supported. | Required | | [Entities](#entities) | Uses the columns from entities as join keys and indicate their type as primary, foreign, or unique keys with the `type` parameter | Required | +| [Primary Entity](#primary-entity) | If a primary entity exists, this component is Optional. If the semantic model has no primary entity, then this property is required. | Optional | | [Dimensions](#dimensions) | Different ways to group or slice data for a metric, they can be `time` or `categorical` | Required | | [Measures](#measures) | Aggregations applied to columns in your data model. They can be the final metric or used as building blocks for more complex metrics | Optional | -| [Primary Entity](#primary) | If the semantic model has no primary entity, then this property is required. | Optional | ## Semantic models components @@ -47,6 +47,7 @@ semantic_models: primary_entity: >- if the semantic model has no primary entity, then this property is required. #Optional if a primary entity exists, otherwise Required ``` + The following example displays a complete configuration and detailed descriptions of each field: ```yaml @@ -117,15 +118,19 @@ Includes important details in the description of the semantic model. This descri Specify the dbt model for the semantic model using the [`ref` function](/reference/dbt-jinja-functions/ref). ### Defaults -Defaults for the semantic model. Currently only `agg_time_dimension`. `agg_time_dimension` represents the default time dimensions for measures. This can be overriden by adding the `agg_time_dimension` key directly to a measure - see [Dimensions](/docs/build/dimensions) for examples. + +Defaults for the semantic model. Currently only `agg_time_dimension`. `agg_time_dimension` represents the default time dimensions for measures. This can be overridden by adding the `agg_time_dimension` key directly to a measure - see [Dimensions](/docs/build/dimensions) for examples. ### Entities To specify the [entities](/docs/build/entities) in your model, use their columns as join keys and indicate their `type` as primary, foreign, or unique keys with the type parameter. -### Primary Entity -If your data source does not have a primary entity, you need to manually specify one. Metricflow requers that all dimensions be tied to an entity. You can define a primary entity using the following configs: +### Primary entity + +MetricFlow requires that all dimensions be tied to an entity. This is to guarantee unique dimension names. If your data source doesn't have a primary entity, you need to assign the entity a name using the `primary_entity: entity_name` key. It doesn't necessarily have to map to a column in that table and assigning the name doesn't affect query generation. + +You can define a primary entity using the following configs: -```yaml: +```yaml semantic_model: name: bookings_monthly_source description: bookings_monthly_source @@ -137,7 +142,7 @@ semantic_model: agg: sum create_metric: true primary_entity: booking_id -``` + ``` @@ -158,7 +163,7 @@ This example shows a semantic model with three entities and their entity types: To reference a desired column, use the actual column name from the model in the `name` parameter. You can also use `name` as an alias to rename the column, and the `expr` parameter to refer to the original column name or a SQL expression of the column. -```yml +```yaml entity: - name: transaction type: primary From d0f4f70828d8735357dd2d99b61002753c146bc2 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 9 Aug 2023 14:22:31 +0100 Subject: [PATCH 608/703] Update website/docs/docs/dbt-cloud-apis/sl-jdbc.md --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 41c45873982..a3fb5e755e0 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -137,7 +137,7 @@ To query metric values, here are the following parameters that are available: | --------- | -----------| ------------ | -------------------- | | `metrics` | The metric name as defined in your dbt metric configuration | `metrics=['revenue']` | Required | | `group_by` | Dimension names or entities to group by. We require a reference to the entity of the dimension (other than for the primary time dimension), which is pre-appended to the front of the dimension name with a double underscore. | `group_by=['user__country', 'metric_time']` | Optional | -| `grain` | A parameter specific to any time dimension and changes the grain of the data from the default for the metric. | ```group_by=[`Dimension('metric_time').```
    ```grain('week\|day\|month\|quarter\|year')]``` | Optional | +| `grain` | A parameter specific to any time dimension and changes the grain of the data from the default for the metric. | `group_by=[Dimension('metric_time')`
    `grain('week\|day\|month\|quarter\|year')]` | Optional | | `where` | A where clause that allows you to filter on dimensions and entities using parameters - comes with `TimeDimension`, `Dimension`, and `Entity` objects. Granularity is required with `TimeDimension` | `"{{ where="Dimension('customer__country') = 'US')"` | Optional | | `limit` | Limit the data returned | `limit=10` | Optional | |`order` | Order the data returned | `order_by=['-order_gross_profit']` (remove `-` for ascending order) | Optional | From e91361c470f115af95cc337aecbcfd25eddd0b3b Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 9 Aug 2023 14:22:37 +0100 Subject: [PATCH 609/703] Update website/docs/docs/dbt-cloud-apis/sl-jdbc.md --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index a3fb5e755e0..1497dd61a63 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -138,7 +138,7 @@ To query metric values, here are the following parameters that are available: | `metrics` | The metric name as defined in your dbt metric configuration | `metrics=['revenue']` | Required | | `group_by` | Dimension names or entities to group by. We require a reference to the entity of the dimension (other than for the primary time dimension), which is pre-appended to the front of the dimension name with a double underscore. | `group_by=['user__country', 'metric_time']` | Optional | | `grain` | A parameter specific to any time dimension and changes the grain of the data from the default for the metric. | `group_by=[Dimension('metric_time')`
    `grain('week\|day\|month\|quarter\|year')]` | Optional | -| `where` | A where clause that allows you to filter on dimensions and entities using parameters - comes with `TimeDimension`, `Dimension`, and `Entity` objects. Granularity is required with `TimeDimension` | `"{{ where="Dimension('customer__country') = 'US')"` | Optional | +| `where` | A where clause that allows you to filter on dimensions and entities using parameters - comes with `TimeDimension`, `Dimension`, and `Entity` objects. Granularity is required with `TimeDimension` | `"{{ where=Dimension('customer__country') = 'US')"` | Optional | | `limit` | Limit the data returned | `limit=10` | Optional | |`order` | Order the data returned | `order_by=['-order_gross_profit']` (remove `-` for ascending order) | Optional | | `explain` | If true, returns generated SQL for the data platform but does not execute | `explain=True` | Optional | From 2ba8bf22c05a89621e5e52961640f48f6d625078 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 9 Aug 2023 17:19:11 +0100 Subject: [PATCH 610/703] Update cumulative-metrics.md update type to cumulative --- website/docs/docs/build/cumulative-metrics.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index bdc6c1fc233..3b4d2327e8a 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -8,7 +8,7 @@ tags: [Metrics, Semantic Layer] Cumulative metrics aggregate a measure over a given accumulation window. If no window is specified, the window is considered infinite and accumulates values over all time. You will need to create the [time spine model](/docs/build/metricflow-time-spine) before you add cumulative metrics. -This metric is common for calculating things like weekly active users, or month to date revenue. The parameters, description, and type for cumulative metrics are: +This metric is common for calculating things like weekly active users, or month-to-date revenue. The parameters, description, and type for cumulative metrics are: | Parameter | Description | Type | | --------- | ----------- | ---- | @@ -27,7 +27,7 @@ The following displays the complete specification for cumulative metrics, along metrics: - name: The metric name # Required description: The metric description # Optional - type: simple # Required + type: cumulative # Required label: The value that will be displayed in downstream tools # Required type_params: # Required measure: The measure you are referencing # Required @@ -82,7 +82,7 @@ This section details examples of when you specify and don't specify window optio If a window option is specified, the MetricFlow framework applies a sliding window to the underlying measure. -Suppose the underlying measure `customers` which is configured to count the unique customers making orders at the Jaffle shop. +Suppose the underlying measure `customers` is configured to count the unique customers making orders at the Jaffle shop. ```yaml measures: @@ -127,7 +127,7 @@ Suppose you (a subscription-based company for the sake of this example) have an * `event_type`: (integer) a column that populates with +1 to indicate an added subscription, or -1 to indicate a deleted subscription. * `revenue`: (integer) a column that multiplies `event_type` and `subscription_revenue` to depict the amount of revenue added or lost for a specific date. -Using cumulative metrics without specifying a window, you can calculate running totals for metrics like the count of active subscriptions and revenue at any point in time. The following configuration YAML displays creating such cumulative metrics to obtain current revenue or total number of active subscriptions as a cumulative sum: +Using cumulative metrics without specifying a window, you can calculate running totals for metrics like the count of active subscriptions and revenue at any point in time. The following configuration YAML displays creating such cumulative metrics to obtain current revenue or the total number of active subscriptions as a cumulative sum: ```yaml measures: From 328af29a297fb9a483002875a1cd0908e18dd24b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 9 Aug 2023 18:51:45 +0100 Subject: [PATCH 611/703] fix docs to reflect upcoming partner integrations --- website/docs/guides/migration/sl-migration.md | 5 +++++ website/snippets/_sl-partner-links.md | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 2eb9cd6e30b..357c1248a77 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -77,6 +77,11 @@ Now that your Semantic Layer is set up, you will need to update any downstream i ### Migration guide for Hex +:::important Hex integration coming soon + +Hex is currently working on an integration with the new dbt Semantic Layer. This section will have updated instructions once the integration is available. +::: + 1. Set up a new connection for the Semantic Layer for your account. Something to note is that your old connection will still work. The following Loom video guides you in setting up your Semantic Layer with Hex: diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index 40456fcfc17..cd92f6ca861 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -1,8 +1,8 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. These are the following tools that integrate with the dbt Semantic Layer: -1. **Hex** — Public docs are coming soon, refer to [this Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a) for more info on how to integrate with Hex. 1. **Mode** — Refer to the [Mode docs](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer) for info on how to integrate with Mode. +1. **Hex** — Hex is currently working on an integration with the new dbt Semantic Layer. Until then, refer to [this Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a) for more info. 1. **Google Sheets** — Google Sheets integration coming soon. 1. **Tools that allows you to write SQL** — They must meet one of the two criteria: * Supports a generic JDBC driver option (such as DataGrip) or From 90b04b14388a1af464dc37faaf421d8a2c3b2ff7 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 9 Aug 2023 20:06:26 +0100 Subject: [PATCH 612/703] Update website/docs/guides/migration/sl-migration.md --- website/docs/guides/migration/sl-migration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 357c1248a77..baa7ae4a567 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -79,7 +79,7 @@ Now that your Semantic Layer is set up, you will need to update any downstream i :::important Hex integration coming soon -Hex is currently working on an integration with the new dbt Semantic Layer. This section will have updated instructions once the integration is available. +Hex’s Semantic Layer integration will be available for use in the coming weeks. This section will have updated instructions once the integration is available. ::: 1. Set up a new connection for the Semantic Layer for your account. Something to note is that your old connection will still work. The following Loom video guides you in setting up your Semantic Layer with Hex: From 9ee477cc25a6cece0bde168931ce9569e21cb651 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 9 Aug 2023 20:06:32 +0100 Subject: [PATCH 613/703] Update website/snippets/_sl-partner-links.md --- website/snippets/_sl-partner-links.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index cd92f6ca861..3e4173a6ae3 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -2,7 +2,7 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. These are the following tools that integrate with the dbt Semantic Layer: 1. **Mode** — Refer to the [Mode docs](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer) for info on how to integrate with Mode. -1. **Hex** — Hex is currently working on an integration with the new dbt Semantic Layer. Until then, refer to [this Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a) for more info. +1. **Hex** — Hex’s Semantic Layer integration will be available in the coming weeks. Until then, refer to [this Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a) for more info. 1. **Google Sheets** — Google Sheets integration coming soon. 1. **Tools that allows you to write SQL** — They must meet one of the two criteria: * Supports a generic JDBC driver option (such as DataGrip) or From 3842a0dd466520134242a59998017cec1c10104c Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Wed, 9 Aug 2023 15:25:29 -0400 Subject: [PATCH 614/703] Update website/docs/docs/cloud/cloud-cli-installation.md --- website/docs/docs/cloud/cloud-cli-installation.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/cloud-cli-installation.md b/website/docs/docs/cloud/cloud-cli-installation.md index c300f6478a1..ecd48abae42 100644 --- a/website/docs/docs/cloud/cloud-cli-installation.md +++ b/website/docs/docs/cloud/cloud-cli-installation.md @@ -12,7 +12,7 @@ The following installation instructions are for the dbt Cloud CLI, currently in ## Installing dbt Cloud CLI -### Install and update with Brew (recommended) +### Install and update with Brew on MacOS (recommended) Install the CLI: From 215b0aac42757a7d082f12ab55d974517f03bdac Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Wed, 9 Aug 2023 15:28:37 -0400 Subject: [PATCH 615/703] Update website/docs/docs/cloud/cloud-cli-installation.md --- website/docs/docs/cloud/cloud-cli-installation.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/cloud-cli-installation.md b/website/docs/docs/cloud/cloud-cli-installation.md index ecd48abae42..933a1b5f04d 100644 --- a/website/docs/docs/cloud/cloud-cli-installation.md +++ b/website/docs/docs/cloud/cloud-cli-installation.md @@ -35,7 +35,7 @@ brew update brew upgrade dbt-cloud-cli ``` -### Manually install (Windows only) +### Manually install (Windows and Linux) 1. Download the latest darwin release from [Github](https://github.com/dbt-labs/dbti/releases). 2. Place the `dbt` executable in `/usr/local/bin` or `/usr/.local/bin` if `/usr/local/bin` doesn’t exist. From fee8c5f75e90d0c86f077f54633d97621cae0ef5 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Wed, 9 Aug 2023 16:32:50 -0400 Subject: [PATCH 616/703] Apply suggestions from code review --- .../docs/docs/cloud/cloud-cli-installation.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/website/docs/docs/cloud/cloud-cli-installation.md b/website/docs/docs/cloud/cloud-cli-installation.md index 933a1b5f04d..4ed5e57665b 100644 --- a/website/docs/docs/cloud/cloud-cli-installation.md +++ b/website/docs/docs/cloud/cloud-cli-installation.md @@ -28,7 +28,7 @@ which dbt dbt --help ``` -Upgrade the CLI: +### Upgrade the CLI ```bash brew update @@ -37,26 +37,26 @@ brew upgrade dbt-cloud-cli ### Manually install (Windows and Linux) -1. Download the latest darwin release from [Github](https://github.com/dbt-labs/dbti/releases). -2. Place the `dbt` executable in `/usr/local/bin` or `/usr/.local/bin` if `/usr/local/bin` doesn’t exist. -3. Navigate to `/usr/local/bin` / `/usr/.local/bin` in Finder and double click on the `dbt` executable: +1. Download the latest darwin release from [Github](https://github.com/dbt-labs/dbt-cli/releases). +2. Add the `dbt` executable to your path. +3. Navigate to your `dbt` path in Finder and double-click on the `dbt` executable: 1. You will receive a message that the executable is untrusted and cannot be run. Override this by right-clicking the executable and selecting “Open”. A new prompt will pop up, allowing you to open the executable. 2. After clicking “Open”, a terminal window will appear. The window can be closed, and you can now invoke `dbt` from any other terminal*. - You may need to deal with conflicts due to other `dbt` installations. Run `which dbt` to see the location of the `dbt` installation you’re using. If you get `/usr/local/bin/dbt` from `which dbt`, you’re using the one you just installed. If not, you may need to uninstall other installations, directly invoke the executable, or handle path conflicts differently, such as using an alias for the new executable. 4. Move to a directory with a dbt project, and create a `dbt_cloud.yml` file containing your `project-id` from dbt Cloud. 5. Invoke `dbt --help` from your terminal to see a list of supported commands. -#### Updating dbt Cloud installation (Windows only) +#### Updating dbt Cloud installation (Windows + Linux) Follow the same process in [Installing dbt Cloud CLI](#manually-install-windows-only) and replace the existing `dbt` executable with the new one. You should not have to go through the security steps again. ## Setting up the CLI -1. Ensure that you have created a project in dbt Cloud. +1. Ensure that you have created a project in [dbt Cloud](https://cloud.getdbt.com/). -2. Ensure that your personal [development credentials](#glossary) are set on the project +2. Ensure that your personal [development credentials](https://cloud.getdbt.com/settings/profile/credentials) are set on the project. -3. Create an environment variable with your [dbt cloud API key](#glossary): +3. Create an environment variable with your [dbt cloud API key](https://cloud.getdbt.com/settings/profile#api-access): ```bash @@ -82,7 +82,7 @@ Follow the same process in [Installing dbt Cloud CLI](#manually-install-windows- ``` 6. Ensure that a `dbt_cloud.yml` file exists in the project directory. The file is required to have a `project-id` field with a valid [project ID](#glossary): - +You can find your project ID by selecting your project and clicking on **documentation** in the navigation bar. Your project ID is the number in the URL: https://cloud.getdbt.com/documentation/1/projects/{project id}. ```bash > $ pwd /Users/user/dbt-projects/jaffle_shop From f4cc0be61f98b77ebb8a4a44ec3601dc493c48bd Mon Sep 17 00:00:00 2001 From: Greg McKeon Date: Wed, 9 Aug 2023 17:16:16 -0400 Subject: [PATCH 617/703] Update cloud-cli-installation.md --- website/docs/docs/cloud/cloud-cli-installation.md | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/cloud/cloud-cli-installation.md b/website/docs/docs/cloud/cloud-cli-installation.md index 4ed5e57665b..383f1dc364d 100644 --- a/website/docs/docs/cloud/cloud-cli-installation.md +++ b/website/docs/docs/cloud/cloud-cli-installation.md @@ -28,7 +28,7 @@ which dbt dbt --help ``` -### Upgrade the CLI +#### Upgrade the CLI with Brew ```bash brew update @@ -37,14 +37,10 @@ brew upgrade dbt-cloud-cli ### Manually install (Windows and Linux) -1. Download the latest darwin release from [Github](https://github.com/dbt-labs/dbt-cli/releases). +1. Download the latest release for your platform from [Github](https://github.com/dbt-labs/dbt-cli/releases). 2. Add the `dbt` executable to your path. -3. Navigate to your `dbt` path in Finder and double-click on the `dbt` executable: - 1. You will receive a message that the executable is untrusted and cannot be run. Override this by right-clicking the executable and selecting “Open”. A new prompt will pop up, allowing you to open the executable. - 2. After clicking “Open”, a terminal window will appear. The window can be closed, and you can now invoke `dbt` from any other terminal*. - - You may need to deal with conflicts due to other `dbt` installations. Run `which dbt` to see the location of the `dbt` installation you’re using. If you get `/usr/local/bin/dbt` from `which dbt`, you’re using the one you just installed. If not, you may need to uninstall other installations, directly invoke the executable, or handle path conflicts differently, such as using an alias for the new executable. -4. Move to a directory with a dbt project, and create a `dbt_cloud.yml` file containing your `project-id` from dbt Cloud. -5. Invoke `dbt --help` from your terminal to see a list of supported commands. +3. Move to a directory with a dbt project, and create a `dbt_cloud.yml` file containing your `project-id` from dbt Cloud. +4. Invoke `dbt --help` from your terminal to see a list of supported commands. #### Updating dbt Cloud installation (Windows + Linux) From f5f2a64bf1d73d392d68ca48e0286977cab3dd8b Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Wed, 9 Aug 2023 16:37:48 -0700 Subject: [PATCH 618/703] Update sidebar, landing page, and add new pages --- ...023-07-03-data-vault-2-0-with-dbt-cloud.md | 2 +- .../07-June-2023/product-docs-jun.md | 4 +- .../09-April-2023/product-docs.md | 2 +- .../23-Dec-2022/new-jobs-default-as-off.md | 2 +- website/docs/docs/deploy/ci-jobs.md | 2 +- website/docs/docs/deploy/dbt-cloud-job.md | 26 ------- .../docs/docs/deploy/deploy-environments.md | 6 +- .../{job-settings.md => deploy-jobs.md} | 61 ++++++++++++++--- .../docs/docs/deploy/deployment-overview.md | 26 ++----- website/docs/docs/deploy/deployment-tools.md | 2 +- website/docs/docs/deploy/job-commands.md | 1 - website/docs/docs/deploy/job-scheduler.md | 2 +- website/docs/docs/deploy/job-triggers.md | 68 ------------------- website/docs/docs/deploy/jobs.md | 21 ++++++ ...uctionizing-your-dbt-databricks-project.md | 8 +-- ...abricks-workflows-to-run-dbt-cloud-jobs.md | 4 +- website/docs/quickstarts/bigquery-qs.md | 4 +- website/docs/quickstarts/databricks-qs.md | 4 +- website/docs/quickstarts/redshift-qs.md | 4 +- website/docs/quickstarts/snowflake-qs.md | 4 +- website/sidebars.js | 13 +--- website/static/_redirects | 2 + 22 files changed, 111 insertions(+), 157 deletions(-) delete mode 100644 website/docs/docs/deploy/dbt-cloud-job.md rename website/docs/docs/deploy/{job-settings.md => deploy-jobs.md} (68%) delete mode 100644 website/docs/docs/deploy/job-triggers.md create mode 100644 website/docs/docs/deploy/jobs.md diff --git a/website/blog/2023-07-03-data-vault-2-0-with-dbt-cloud.md b/website/blog/2023-07-03-data-vault-2-0-with-dbt-cloud.md index e1351034f66..a6f3682f9e9 100644 --- a/website/blog/2023-07-03-data-vault-2-0-with-dbt-cloud.md +++ b/website/blog/2023-07-03-data-vault-2-0-with-dbt-cloud.md @@ -97,7 +97,7 @@ dbt Cloud includes **built-in Git** with accessible features directly from its I The biggest boon to Data Vault developer productivity in dbt Cloud are the **DataOps** and **Data Warehouse Automation** features of dbt Cloud. Each Data Vault developer gets their own development environment to work in and there is no complicated set up process to go through. -Commit your work, create a pull request, and have automated code review enabled by dbt Cloud [**jobs**](https://docs.getdbt.com/docs/deploy/dbt-cloud-job) that can be defined for each environment separately (e.g., testing, QA, production). Together with dbt [**tags**](https://docs.getdbt.com/reference/resource-configs/tags), the feature allows you to orchestrate your project in an efficient and powerful way. +Commit your work, create a pull request, and have automated code review enabled by dbt Cloud [**jobs**](https://docs.getdbt.com/docs/deploy/jobs) that can be defined for each environment separately (e.g., testing, QA, production). Together with dbt [**tags**](https://docs.getdbt.com/reference/resource-configs/tags), the feature allows you to orchestrate your project in an efficient and powerful way. ### Auditable data diff --git a/website/docs/docs/dbt-versions/release-notes/07-June-2023/product-docs-jun.md b/website/docs/docs/dbt-versions/release-notes/07-June-2023/product-docs-jun.md index 286b271b05d..469d2ac362b 100644 --- a/website/docs/docs/dbt-versions/release-notes/07-June-2023/product-docs-jun.md +++ b/website/docs/docs/dbt-versions/release-notes/07-June-2023/product-docs-jun.md @@ -13,11 +13,11 @@ Here's what's new to [docs.getdbt.com](http://docs.getdbt.com/) in June: ## ☁ Cloud projects -- We clarified the nuances of [CI and CI jobs](/docs/deploy/continuous-integration), updated the [Scheduler content](/docs/deploy/job-scheduler), added two new pages for the job settings and run visibility, moved the project state page to the [Syntax page](/reference/node-selection/syntax), and provided a landing page for [Deploying with Cloud](/docs/deploy/dbt-cloud-job) to help readers navigate the content better. +- We clarified the nuances of [CI and CI jobs](/docs/deploy/continuous-integration), updated the [Scheduler content](/docs/deploy/job-scheduler), added two new pages for the job settings and run visibility, moved the project state page to the [Syntax page](/reference/node-selection/syntax), and provided a landing page for [Deploying with Cloud](/docs/deploy/jobs) to help readers navigate the content better. - We reformatted the [Supported data platforms page](/docs/supported-data-platforms) by adding dbt Cloud to the page, splitting it into multiple pages, using cards to display verified adapters, and moving the [Warehouse setup pages](/docs/core/connect-data-platform/about-core-connections) to the Docs section. - We launched a new [Lint and format page](/docs/cloud/dbt-cloud-ide/lint-format), which highlights the awesome new dbt Cloud IDE linting/formatting function. - We enabled a connection between [dbt Cloud release notes](/docs/dbt-versions/dbt-cloud-release-notes) and the dbt Slack community. This means new dbt Cloud release notes are automatically sent to the slack community [#dbt-cloud channel](https://getdbt.slack.com/archives/CMZ2V0X8V) via RSS feed, keeping users up to date with changes that may affect them. -- We’ve added two new docs links in the dbt Cloud Job settings user interface (UI). This will provide additional guidance and help users succeed when setting up a dbt Cloud job: [job commands](/docs/deploy/job-commands) and [job triggers](/docs/deploy/job-triggers). +- We’ve added two new docs links in the dbt Cloud Job settings user interface (UI). This will provide additional guidance and help users succeed when setting up a dbt Cloud job: [job commands](/docs/deploy/job-commands) and job triggers. - We added information related to the newly created [IT license](/docs/cloud/manage-access/about-user-access#license-based-access-control), available for Team and Enterprise plans. - We added a new [Supported browser page](/docs/cloud/about-cloud/browsers), which lists the recommended browsers for dbt Cloud. - We launched a new page informing users of [new Experimental features option](/docs/dbt-versions/experimental-features) in dbt Cloud. diff --git a/website/docs/docs/dbt-versions/release-notes/09-April-2023/product-docs.md b/website/docs/docs/dbt-versions/release-notes/09-April-2023/product-docs.md index 991fc9be1f4..d30bcf85b99 100644 --- a/website/docs/docs/dbt-versions/release-notes/09-April-2023/product-docs.md +++ b/website/docs/docs/dbt-versions/release-notes/09-April-2023/product-docs.md @@ -20,7 +20,7 @@ Hello from the dbt Docs team: @mirnawong1, @matthewshaver, @nghi-ly, and @runleo * [dbt Cloud quickstart guide](/quickstarts/starburst-galaxy),  * [connection page](/docs/cloud/connect-data-platform/connect-starburst-trino),  * [set up page](/docs/core/connect-data-platform/trino-setup), and [config page](/reference/resource-configs/trino-configs). -- Enhanced [dbt Cloud jobs page](/docs/deploy/dbt-cloud-job) and section to include conceptual info on the queue time, improvements made around it, and about failed jobs. +- Enhanced [dbt Cloud jobs page](/docs/deploy/jobs) and section to include conceptual info on the queue time, improvements made around it, and about failed jobs. - Check out the April dbt [Cloud release notes](/docs/dbt-versions/dbt-cloud-release-notes) ## 🎯 Core projects diff --git a/website/docs/docs/dbt-versions/release-notes/23-Dec-2022/new-jobs-default-as-off.md b/website/docs/docs/dbt-versions/release-notes/23-Dec-2022/new-jobs-default-as-off.md index 0e26d8dc628..bdc89b4abde 100644 --- a/website/docs/docs/dbt-versions/release-notes/23-Dec-2022/new-jobs-default-as-off.md +++ b/website/docs/docs/dbt-versions/release-notes/23-Dec-2022/new-jobs-default-as-off.md @@ -8,7 +8,7 @@ tags: [Dec-2022] To help save compute time, new jobs will no longer be triggered to run by default. When you create a new job in dbt Cloud, you can trigger the job to run by selecting **Run on schedule** and completing the desired schedule and timing information. -For more information, refer to [Job triggers](/docs/deploy/job-triggers). +For more information, refer to [Deploy jobs](/docs/deploy/deploy-jobs). diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index a1f12d19f84..74a39dd7828 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -58,7 +58,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. :::info - Older versions of dbt Cloud only allow you to defer to a specific job instead of an environment. Deferral to a job compares state against the project code that was run in the deferred job's last successful run. While deferral to an environment is more efficient as dbt Cloud will compare against the project representation (which is stored in the `manifest.json`) of the last successful deploy job run that executed in the deferred environment. By considering _all_ [deploy jobs](/docs/deploy/job-settings) that run in the deferred environment, dbt Cloud will get a more accurate, latest project representation state. + Older versions of dbt Cloud only allow you to defer to a specific job instead of an environment. Deferral to a job compares state against the project code that was run in the deferred job's last successful run. While deferral to an environment is more efficient as dbt Cloud will compare against the project representation (which is stored in the `manifest.json`) of the last successful deploy job run that executed in the deferred environment. By considering _all_ [deploy jobs](/docs/deploy/deploy-jobs) that run in the deferred environment, dbt Cloud will get a more accurate, latest project representation state. ::: - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since most teams do not want to test doc generation on every CI check. diff --git a/website/docs/docs/deploy/dbt-cloud-job.md b/website/docs/docs/deploy/dbt-cloud-job.md deleted file mode 100644 index fa9eead2d3b..00000000000 --- a/website/docs/docs/deploy/dbt-cloud-job.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: "dbt Cloud jobs" -id: "dbt-cloud-job" -description: "Manage, setup, and configure your dbt Cloud job using elegant job commands and triggers." -hide_table_of_contents: true -tags: ["scheduler"] ---- - -Manage, set up, and automate your dbt jobs using robust custom job settings. You can use the job scheduler to configure when and how your jobs run, helping you keep production data fresh on a timely basis. - -This portion of our documentation will go over dbt Cloud's various job settings using: - -- [Job settings](/docs/deploy/job-settings) — Intuitively navigate the user interface to create new dbt jobs or edit existing ones. -- [Job commands](/docs/deploy/job-commands) — Use job commands to configure dbt commands on a schedule. -- [Job triggers](/docs/deploy/job-triggers) — You can configure when and how dbt should run your job, such as: - * Running on scheduled days or cron schedules - * Setting up continuous integration (CI) to run when someone opens a new pull request in your dbt repository - * Using the API to trigger jobs - - - - - - - - diff --git a/website/docs/docs/deploy/deploy-environments.md b/website/docs/docs/deploy/deploy-environments.md index 9421d664739..bdcf36b7a30 100644 --- a/website/docs/docs/deploy/deploy-environments.md +++ b/website/docs/docs/deploy/deploy-environments.md @@ -10,7 +10,7 @@ Deployment environments in dbt Cloud are crucial for deploying dbt jobs in produ - The warehouse connection information (including the target database/schema settings) - The version of your code to execute -A dbt Cloud project can have multiple deployment environments, providing you the flexibility and customization to tailor the execution of dbt jobs. You can use deployment environments to [create and schedule jobs](/docs/deploy/job-settings#create-and-schedule-jobs), [enable continuous integration](/docs/deploy/continuous-integration), or more based on your specific needs or requirements. +A dbt Cloud project can have multiple deployment environments, providing you the flexibility and customization to tailor the execution of dbt jobs. You can use deployment environments to [create and schedule jobs](/docs/deploy/deploy-jobs#create-and-schedule-jobs), [enable continuous integration](/docs/deploy/continuous-integration), or more based on your specific needs or requirements. :::tip Learn how to manage dbt Cloud environments To learn different approaches to managing dbt Cloud environments and recommendations for your organization's unique needs, read [dbt Cloud environment best practices](https://docs.getdbt.com/guides/best-practices/environment-setup/1-env-guide-overview). @@ -191,7 +191,7 @@ This section allows you to determine the credentials that should be used when co ## Related docs - [dbt Cloud environment best practices](https://docs.getdbt.com/guides/best-practices/environment-setup/1-env-guide-overview) -- [Deploy dbt jobs](/docs/deploy/dbt-cloud-job) -- [Deploy CI jobs](/docs/deploy/continuous-integration) +- [Deploy jobs](/docs/deploy/deploy-jobs) +- [CI jobs](/docs/deploy/continuous-integration) - [Delete a job or environment in dbt Cloud](/faqs/Environments/delete-environment-job) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/deploy-jobs.md similarity index 68% rename from website/docs/docs/deploy/job-settings.md rename to website/docs/docs/deploy/deploy-jobs.md index 8df0f48925d..9f903dfe850 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/deploy-jobs.md @@ -1,10 +1,10 @@ --- -title: "Job settings" -description: "Learn how to create and schedule jobs in dbt Cloud for the scheduler to run. When you run with dbt Cloud, you get built-in observability, logging, and alerting." +title: "Deploy jobs" +description: "Learn how to create and schedule deploy jobs in dbt Cloud for the scheduler to run. When you run with dbt Cloud, you get built-in observability, logging, and alerting." tags: [scheduler] --- -Jobs make it easy to run dbt commands against a project in your cloud data platform, triggered either by schedule or events. Each job run in dbt Cloud will have an entry in the job's run history and a detailed run overview, which provides you with: +You can use deploy jobs to build production data assets. Deploy jobs make it easy to run dbt commands against a project in your cloud data platform, triggered either by schedule or events. Each job run in dbt Cloud will have an entry in the job's run history and a detailed run overview, which provides you with: - Job trigger type - Commit SHA @@ -13,11 +13,11 @@ Jobs make it easy to run dbt commands against a project in your cloud data platf - Job run details, including run timing, [model timing data](#model-timing), and [artifacts](/docs/deploy/artifacts) - Detailed run steps with logs and their run step statuses -You can create a deploy job and configure it to run on [scheduled days and times](/docs/deploy/job-triggers#schedule-days) or enter a [custom cron schedule](/docs/deploy/job-triggers#custom-cron-schedules). +You can create a deploy job and configure it to run on [scheduled days and times](#schedule-days) or enter a [custom cron schedule](#custom-cron-schedules). :::tip Join our beta -dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs, refer to [Create and schedule jobs (Beta version)](/docs/deploy/job-settings?version=beta#create-and-schedule-jobs) on this page. +dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs, refer to [Create and schedule jobs (Beta version)](/docs/deploy/deploy-jobs?version=beta#create-and-schedule-jobs) on this page. If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). @@ -57,9 +57,9 @@ If you're interested in joining our beta, please fill out our Google Form to [si -6. Under the **Triggers** section, you can configure when and how dbt will trigger the deploy job. Refer to [job triggers](/docs/deploy/job-triggers) for more details. +6. Under the **Triggers** section, you can configure when and how dbt will trigger the deploy job. - * **Schedule** tab — Use the **Run on schedule** toggle to configure your job to run on [scheduled](/docs/deploy/job-triggers#schedule-days) days and time, or enter a [custom cron schedule](/docs/deploy/job-triggers#custom-cron-schedules). + * **Schedule** tab — Enable the **Run on schedule** option. Use either the [scheduled days](#schedule-days) or the [custom cron schedule](#custom-cron-schedule) method to configure your desired days, times, and intervals for running your deploy job. * **Continuous Integration** tab — Configure [continuous integration (CI)](/docs/deploy/continuous-integration) to run when someone opens a new pull request in your dbt repository. * **API** tab — Use the [dbt API](/docs/dbt-cloud-apis/overview) to trigger a job. @@ -81,7 +81,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running the deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. 4. Options in the **Schedule** section: - **Run on schedule** — Enable this option to run the deploy job on a set schedule. - - **Timing** — Specify whether to [schedule](/docs/deploy/job-triggers#schedule-days) the deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](/docs/deploy/job-triggers#custom-cron-schedule). + - **Timing** — Specify whether to [schedule](#schedule-days) the deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](#custom-cron-schedule). - **Days of the Week** — By default, it’s set to every day when **Frequency** or **Specific Intervals** is chosen for **Timing**. @@ -104,3 +104,48 @@ If you're interested in joining our beta, please fill out our Google Form to [si
    + +### Schedule days + +To set your job's schedule, use the **Schedule Days** option to choose specific days of the week, and select customized hours or intervals. + +Under **Timing**, you can either use customizable hours for jobs that need to run frequently throughout the day or exact intervals for jobs that need to run at specific times: + +- **Every n hours** — Use this option to set how often your job runs, in hours. Enter a number between 1 and 23 to represent the interval between job runs. For example, if you set it to "every 2 hours", the job will run every 2 hours from midnight UTC. This option is useful if you need to run jobs multiple times per day at regular intervals. + +- **At exact intervals** — Use this option to set specific times when your job should run. You can enter a comma-separated list of hours (in UTC) when you want the job to run. For example, if you set it to `0,12,23,` the job will run at midnight, noon, and 11 PM UTC. This option is useful if you want your jobs to run at specific times of day and don't need them to run more frequently than once a day. + +:::info + +dbt Cloud uses [Coordinated Universal Time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) (UTC) and does not account for translations to your specific timezone or take into consideration daylight savings time. For example: + +- 0 means 12am (midnight) UTC +- 12 means 12pm (afternoon) UTC +- 23 means 11pm UTC + +::: + +### Custom cron schedule + +To fully customize the scheduling of your job, choose the **Custom cron schedule** option and use the cron syntax. With this syntax, you can specify the minute, hour, day of the month, month, and day of the week, allowing you to set up complex schedules like running a job on the first Monday of each month. + + + + +Use tools such as [crontab.guru](https://crontab.guru/) to generate the correct cron syntax. This tool allows you to input cron snippets and returns their plain English translations. + +Refer to the following example snippets: + + +- `0 * * * *`: Every hour, at minute 0 +- `*/5 * * * *`: Every 5 minutes +- `5 4 * * *`: At exactly 4:05 AM UTC +- `30 */4 * * *`: At minute 30 past every 4th hour (e.g. 4:30AM, 8:30AM, 12:30PM, etc., all UTC) +- `0 0 */2 * *`: At midnight UTC every other day +- `0 0 * * 1`: At midnight UTC every Monday. + +## Related docs + +- [Artifacts](/docs/deploy/artifacts) +- [Job commands](/docs/deploy/job-commands) +- [Webhooks](/docs/deploy/webhooks) \ No newline at end of file diff --git a/website/docs/docs/deploy/deployment-overview.md b/website/docs/docs/deploy/deployment-overview.md index ccc01738f6e..5883ecaa3f1 100644 --- a/website/docs/docs/deploy/deployment-overview.md +++ b/website/docs/docs/deploy/deployment-overview.md @@ -29,21 +29,15 @@ Learn how to use dbt Cloud's features to help your team ship timely and quality icon="dbt-bit"/> -
    - -## dbt Cloud jobs - -

    - - -

    ## Monitor jobs and alerts @@ -77,7 +65,7 @@ Learn how to use dbt Cloud's features to help your team ship timely and quality icon="dbt-bit"/> diff --git a/website/docs/docs/deploy/deployment-tools.md b/website/docs/docs/deploy/deployment-tools.md index 26e9e4ea317..e642e4b95e2 100644 --- a/website/docs/docs/deploy/deployment-tools.md +++ b/website/docs/docs/deploy/deployment-tools.md @@ -4,7 +4,7 @@ id: "deployment-tools" sidebar_label: "Integrate with other tools" --- -Alongside [dbt Cloud](/docs/deploy/dbt-cloud-job), discover other ways to schedule and run your dbt jobs with the help of tools such as Airflow, Prefect, Dagster, automation server, Cron, and Azure Data Factory (ADF), +Alongside [dbt Cloud](/docs/deploy/jobs), discover other ways to schedule and run your dbt jobs with the help of tools such as Airflow, Prefect, Dagster, automation server, Cron, and Azure Data Factory (ADF), Build and install these tools to automate your data workflows, trigger dbt jobs (including those hosted on dbt Cloud), and enjoy a hassle-free experience, saving time and increasing efficiency. diff --git a/website/docs/docs/deploy/job-commands.md b/website/docs/docs/deploy/job-commands.md index acdc3a00228..ca26182fc7b 100644 --- a/website/docs/docs/deploy/job-commands.md +++ b/website/docs/docs/deploy/job-commands.md @@ -77,7 +77,6 @@ Job command failures can mean different things for different commands. Some comm ## Related docs - [Job creation best practices](https://discourse.getdbt.com/t/job-creation-best-practices-in-dbt-cloud-feat-my-moms-lasagna/2980) - [dbt Command reference](/reference/dbt-commands) -- [Job triggers](/docs/deploy/job-triggers) - [Job notifications](/docs/deploy/job-notifications) - [Source freshness](/docs/deploy/source-freshness) - [Build and view your docs](/docs/collaborate/build-and-view-your-docs) diff --git a/website/docs/docs/deploy/job-scheduler.md b/website/docs/docs/deploy/job-scheduler.md index 03eeb6fb377..8ade670f1cc 100644 --- a/website/docs/docs/deploy/job-scheduler.md +++ b/website/docs/docs/deploy/job-scheduler.md @@ -82,7 +82,7 @@ The scheduler prevents queue clog by canceling runs that aren't needed, ensuring -To prevent over-scheduling, users will need to take action by either refactoring the job so it runs faster or modifying its [schedule](/docs/deploy/job-triggers). +To prevent over-scheduling, users will need to take action by either refactoring the job so it runs faster or modifying its [schedule](/docs/deploy/deploy-jobs#schedule-days). ## Related docs - [dbt Cloud architecture](/docs/cloud/about-cloud/architecture#about-dbt-cloud-architecture) diff --git a/website/docs/docs/deploy/job-triggers.md b/website/docs/docs/deploy/job-triggers.md deleted file mode 100644 index cb7a1a48088..00000000000 --- a/website/docs/docs/deploy/job-triggers.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: "Job triggers" -id: "job-triggers" -description: "You can configure when and how dbt should run your job" ---- - -In dbt Cloud, you can use the options under **Triggers** to configure when and how dbt should [run your job](/docs/deploy/job-triggers#schedule-job): - -- **Schedule** tab — Use the **Run on schedule** toggle to configure your job to run on either [scheduled days](#schedule-days) or [custom cron-powered schedule](#custom-cron-schedule) -- **Continuous Integration (CI)** tab — Configure [continuous integration](/docs/deploy/continuous-integration) to run when someone opens a new pull request in your dbt repository -- **API** tab — Use the [API](/docs/dbt-cloud-apis/admin-cloud-api) to trigger a job or send events to other systems - - - -## Schedule jobs - -To schedule your job to run at specific days, times, and intervals: -1. Go to the specific job settings, click **Edit**, then go to the **Triggers** section -2. Go to the **Schedule** tab, and toggle **Run on schedule** -3. Use either the [scheduled days](#schedule-days) or the [custom cron-powered schedule](#custom-cron-schedule) method to customize your desired days, times, and intervals. - -### Schedule days - -To set your job's schedule, use the **Schedule Days** option to choose specific days of the week, and select customized hours or intervals. - -Under **Timing**, you can either use customizable hours for jobs that need to run frequently throughout the day or exact intervals for jobs that need to run at specific times: - -- **Every n hours** — Use this option to set how often your job runs, in hours. Enter a number between 1 and 23 to represent the interval between job runs. For example, if you set it to "every 2 hours", the job will run every 2 hours from midnight UTC. This option is useful if you need to run jobs multiple times per day at regular intervals. - -- **At exact intervals** — Use this option to set specific times when your job should run. You can enter a comma-separated list of hours (in UTC) when you want the job to run. For example, if you set it to `0,12,23,` the job will run at midnight, noon, and 11 PM UTC. This option is useful if you want your jobs to run at specific times of day and don't need them to run more frequently than once a day. - -:::info - -dbt Cloud uses [Coordinated Universal Time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) (UTC) and does not account for translations to your specific timezone or take into consideration daylight savings time. For example: - -- 0 means 12am (midnight) UTC -- 12 means 12pm (afternoon) UTC -- 23 means 11pm UTC - -::: - -### Custom cron schedule - -To fully customize the scheduling of your job, choose the **Custom cron schedule** option and use the "cron" syntax. With this syntax, you can specify the minute, hour, day of the month, month, and day of the week, allowing you to set up complex schedules like running a job on the first Monday of each month. - - - - -Use tools such as [crontab.guru](https://crontab.guru/) to generate the correct cron syntax. This tool allows you to input cron snippets and returns their plain English translations. - -Refer to the following example snippets: - - -- `0 * * * *`: Every hour, at minute 0 -- `*/5 * * * *`: Every 5 minutes -- `5 4 * * *`: At exactly 4:05 AM UTC -- `30 */4 * * *`: At minute 30 past every 4th hour (e.g. 4:30AM, 8:30AM, 12:30PM, etc., all UTC) -- `0 0 */2 * *`: At midnight UTC every other day -- `0 0 * * 1`: At midnight UTC every Monday. - - -## Related docs - -- [Artifacts](/docs/deploy/artifacts) -- [Build and view your docs with dbt Cloud](/docs/collaborate/build-and-view-your-docs) -- [Source freshness](/docs/deploy/source-freshness) -- [Job commands](/docs/deploy/job-commands) -- [Webhooks for your jobs](/docs/deploy/webhooks) \ No newline at end of file diff --git a/website/docs/docs/deploy/jobs.md b/website/docs/docs/deploy/jobs.md new file mode 100644 index 00000000000..b4eec18de12 --- /dev/null +++ b/website/docs/docs/deploy/jobs.md @@ -0,0 +1,21 @@ +--- +title: "Jobs in dbt Cloud" +sidebar_label: "Jobs" +description: "Learn about deploy jobs and continuous integration (CI) jobs in dbt Cloud and what their differences are." +tags: [scheduler] +--- + +In dbt Cloud, you can create and set up triggers for these jobs: +- [Deploy jobs](/docs/deploy/deploy-jobs) +- [Continuous integration (CI) jobs](/docs/deploy/continuous-integration) + +Below is a comparison table that describes how deploy jobs and CI jobs behave differently: + +| | Deploy Jobs | CI Jobs | +| --- | --- | --- | +| Purpose | Building production data assets | Building and testing new code before merging changes into production | +| Trigger types | Triggered by a schedule or by API | Triggered by a webhook from a commit to a PR or by API | +| Destination | Builds into a production database and schema | Builds into a staging database and ephemeral schema, lived for the lifetime of the PR | +| Execution Mode | Runs execute sequentially, so as to not have collisions on the underlying DAG. | Runs execute in parallel to promote team velocity. | +| Efficiency run savings | Over scheduled jobs are detected and unnecessary runs are canceled to avoid queue clog. | Run cancellation happens when an in-flight run becomes stale due to a new commit of the PR being pushed. | +| State comparison | Only sometimes needs to detect state | Almost always needs to compare state against the production environment to build on modified code and its dependents. | diff --git a/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md b/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md index 990e2825443..2f052ae47d2 100644 --- a/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md +++ b/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md @@ -35,11 +35,11 @@ Each dbt Cloud project can have multiple deployment environments, but only one d With your deployment environment set up, it's time to create a production job to run in your *prod* environment. -To deploy our data transformation workflows, we will utilize [dbt Cloud’s built-in job scheduler](/docs/deploy/dbt-cloud-job). The job scheduler is designed specifically to streamline your dbt project deployments and runs, ensuring that your data pipelines are easy to create, monitor, and modify efficiently. +To deploy our data transformation workflows, we will utilize [dbt Cloud’s built-in job scheduler](/docs/deploy/deploy-jobs). The job scheduler is designed specifically to streamline your dbt project deployments and runs, ensuring that your data pipelines are easy to create, monitor, and modify efficiently. Leveraging dbt Cloud's job scheduler allows data teams to own the entire transformation workflow. You don't need to learn and maintain additional tools for orchestration or rely on another team to schedule code written by your team. This end-to-end ownership simplifies the deployment process and accelerates the delivery of new data products. -Let’s [create a job](/docs/deploy/dbt-cloud-job#create-and-schedule-jobs) in dbt Cloud that will transform data in our Databricks *prod* catalog. +Let’s [create a job](/docs/deploy/deploy-jobs#create-and-schedule-jobs) in dbt Cloud that will transform data in our Databricks *prod* catalog. 1. Create a new job by clicking **Deploy** in the header, click **Jobs** and then **Create job**. 2. **Name** the job “Daily refresh”. @@ -58,7 +58,7 @@ Let’s [create a job](/docs/deploy/dbt-cloud-job#create-and-schedule-jobs) in d - dbt build is more efficient than issuing separate commands for dbt run and dbt test separately because it will run then test each model before continuing. - We are excluding source data because we already tested it in step 2. - The fail-fast flag will make dbt exit immediately if a single resource fails to build. If other models are in-progress when the first model fails, then dbt will terminate the connections for these still-running models. -5. Under **Triggers**, use the toggle to configure your job to [run on a schedule](/docs/deploy/job-triggers). You can enter specific days and timing or create a custom cron schedule. +5. Under **Triggers**, use the toggle to configure your job to [run on a schedule](/docs/deploy/deploy-jobs#schedule-days). You can enter specific days and timing or create a custom cron schedule. - If you want your dbt Cloud job scheduled by another orchestrator, like Databricks Workflows, see the [Advanced Considerations](#advanced-considerations) section below. This is just one example of an all-or-nothing command list designed to minimize wasted computing. The [job command list](/docs/deploy/job-commands) and [selectors](/reference/node-selection/syntax) provide a lot of flexibility on how your DAG will execute. You may want to design yours to continue running certain models if others fail. You may want to set up multiple jobs to refresh models at different frequencies. See our [Job Creation Best Practices discourse](https://discourse.getdbt.com/t/job-creation-best-practices-in-dbt-cloud-feat-my-moms-lasagna/2980) for more job design suggestions. @@ -93,7 +93,7 @@ With dbt tests and SlimCI, you can feel confident that your production data will Keeping a close eye on your dbt Cloud jobs is crucial for maintaining a robust and efficient data pipeline. By monitoring job performance and quickly identifying potential issues, you can ensure that your data transformations run smoothly. dbt Cloud provides three entry points to monitor the health of your project: run history, deployment monitor, and status tiles. -The [run history](/docs/deploy/dbt-cloud-job) dashboard in dbt Cloud provides a detailed view of all your project's job runs, offering various filters to help you focus on specific aspects. This is an excellent tool for developers who want to check recent runs, verify overnight results, or track the progress of running jobs. To access it, select **Run History** from the **Deploy** menu. +The [run history](/docs/deploy/run-visibility#run-history) dashboard in dbt Cloud provides a detailed view of all your project's job runs, offering various filters to help you focus on specific aspects. This is an excellent tool for developers who want to check recent runs, verify overnight results, or track the progress of running jobs. To access it, select **Run History** from the **Deploy** menu. The deployment monitor in dbt Cloud offers a higher-level view of your run history, enabling you to gauge the health of your data pipeline over an extended period of time. This feature includes information on run durations and success rates, allowing you to identify trends in job performance, such as increasing run times or more frequent failures. The deployment monitor also highlights jobs in progress, queued, and recent failures. To access the deployment monitor click on the dbt logo in the top left corner of the dbt Cloud UI. diff --git a/website/docs/guides/orchestration/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md b/website/docs/guides/orchestration/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md index 692106655ac..bb1045b3d2f 100644 --- a/website/docs/guides/orchestration/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md +++ b/website/docs/guides/orchestration/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md @@ -9,14 +9,14 @@ hoverSnippet: Learn how to use Databricks workflows to run dbt Cloud jobs Using Databricks workflows to call the dbt Cloud job API can be useful for several reasons: 1. **Integration with other ETL processes** — If you're already running other ETL processes in Databricks, you can use a Databricks workflow to trigger a dbt Cloud job after those processes are done. -2. **Utilizes dbt Cloud jobs features —** dbt Cloud gives the ability to monitor job progress, manage historical logs and documentation, optimize model timing, and much [more](/docs/deploy/dbt-cloud-job). +2. **Utilizes dbt Cloud jobs features —** dbt Cloud gives the ability to monitor job progress, manage historical logs and documentation, optimize model timing, and much [more](/docs/deploy/deploy-jobs). 3. [**Separation of concerns —**](https://en.wikipedia.org/wiki/Separation_of_concerns) Detailed logs for dbt jobs in the dbt Cloud environment can lead to more modularity and efficient debugging. By doing so, it becomes easier to isolate bugs quickly while still being able to see the overall status in Databricks. 4. **Custom job triggering —** Use a Databricks workflow to trigger dbt Cloud jobs based on custom conditions or logic that aren't natively supported by dbt Cloud's scheduling feature. This can give you more flexibility in terms of when and how your dbt Cloud jobs run. ## Prerequisites - Active [Teams or Enterprise dbt Cloud account](https://www.getdbt.com/pricing/) -- You must have a configured and existing [dbt Cloud job](/docs/deploy/dbt-cloud-job) +- You must have a configured and existing [dbt Cloud deploy job](/docs/deploy/deploy-jobs) - Active Databricks account with access to [Data Science and Engineering workspace](https://docs.databricks.com/workspace-index.html) and [Manage secrets](https://docs.databricks.com/security/secrets/index.html) - [Databricks CLI](https://docs.databricks.com/dev-tools/cli/index.html) - **Note**: You only need to set up your authentication. Once you have set up your Host and Token and are able to run `databricks workspace ls /Users/`, you can proceed with the rest of this guide. diff --git a/website/docs/quickstarts/bigquery-qs.md b/website/docs/quickstarts/bigquery-qs.md index 84e3b3ae545..7f7f9aa7655 100644 --- a/website/docs/quickstarts/bigquery-qs.md +++ b/website/docs/quickstarts/bigquery-qs.md @@ -33,8 +33,8 @@ You can check out [dbt Fundamentals](https://courses.getdbt.com/courses/fundamen ### Related content - Learn more with [dbt Courses](https://courses.getdbt.com/collections) -- [dbt Cloud CI job](/docs/deploy/continuous-integration) -- [Job triggers](/docs/deploy/job-triggers) +- [CI jobs](/docs/deploy/continuous-integration) +- [Deploy jobs](/docs/deploy/deploy-jobs) - [Job notifications](/docs/deploy/job-notifications) - [Source freshness](/docs/deploy/source-freshness) diff --git a/website/docs/quickstarts/databricks-qs.md b/website/docs/quickstarts/databricks-qs.md index 1222ef2a7d5..08334862517 100644 --- a/website/docs/quickstarts/databricks-qs.md +++ b/website/docs/quickstarts/databricks-qs.md @@ -30,8 +30,8 @@ You can check out [dbt Fundamentals](https://courses.getdbt.com/courses/fundamen ### Related content - Learn more with [dbt Courses](https://courses.getdbt.com/collections) -- [dbt Cloud CI job](/docs/deploy/continuous-integration) -- [Job triggers](/docs/deploy/job-triggers) +- [CI jobs](/docs/deploy/continuous-integration) +- [Deploy jobs](/docs/deploy/deploy-jobs) - [Job notifications](/docs/deploy/job-notifications) - [Source freshness](/docs/deploy/source-freshness) diff --git a/website/docs/quickstarts/redshift-qs.md b/website/docs/quickstarts/redshift-qs.md index fc7e178f163..67f66d6e275 100644 --- a/website/docs/quickstarts/redshift-qs.md +++ b/website/docs/quickstarts/redshift-qs.md @@ -31,8 +31,8 @@ You can check out [dbt Fundamentals](https://courses.getdbt.com/courses/fundamen ### Related content - Learn more with [dbt Courses](https://courses.getdbt.com/collections) -- [dbt Cloud CI job](/docs/deploy/continuous-integration) -- [Job triggers](/docs/deploy/job-triggers) +- [CI jobs](/docs/deploy/continuous-integration) +- [Deploy jobs](/docs/deploy/deploy-jobs) - [Job notifications](/docs/deploy/job-notifications) - [Source freshness](/docs/deploy/source-freshness) diff --git a/website/docs/quickstarts/snowflake-qs.md b/website/docs/quickstarts/snowflake-qs.md index 0561ea13410..33e253e8c15 100644 --- a/website/docs/quickstarts/snowflake-qs.md +++ b/website/docs/quickstarts/snowflake-qs.md @@ -35,8 +35,8 @@ You can also watch the [YouTube video on dbt and Snowflake](https://www.youtube. - Learn more with [dbt Courses](https://courses.getdbt.com/collections) - [How we configure Snowflake](https://blog.getdbt.com/how-we-configure-snowflake/) -- [dbt Cloud CI job](/docs/deploy/continuous-integration) -- [Job triggers](/docs/deploy/job-triggers) +- [CI jobs](/docs/deploy/continuous-integration) +- [Deploy jobs](/docs/deploy/deploy-jobs) - [Job notifications](/docs/deploy/job-notifications) - [Source freshness](/docs/deploy/source-freshness) diff --git a/website/sidebars.js b/website/sidebars.js index 1ffaea7af7f..c51903d31d8 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -331,16 +331,8 @@ const sidebarSettings = { items: [ "docs/deploy/job-scheduler", "docs/deploy/deploy-environments", - { - type: "category", - label: "dbt Cloud jobs", - link: { type: "doc", id: "docs/deploy/dbt-cloud-job" }, - items: [ - "docs/deploy/job-settings", - "docs/deploy/job-commands", - "docs/deploy/job-triggers", - ], - }, + "docs/deploy/jobs", + "docs/deploy/deploy-jobs", { type: "category", label: "Continuous integration", @@ -349,6 +341,7 @@ const sidebarSettings = { "docs/deploy/ci-jobs", ], }, + "docs/deploy/job-commands", { type: "category", label: "Monitor jobs and alerts", diff --git a/website/static/_redirects b/website/static/_redirects index ba9d00d37f6..aba7f20132b 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,3 +1,5 @@ +/docs/deploy/job-triggers /docs/deploy/deploy-jobs 301 + /docs/deploy/slim-ci-jobs /docs/deploy/ci-jobs 301 ## semantic layer From e023ce802f0a43cdf0aced15c52f46f3e906676e Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Wed, 9 Aug 2023 16:44:45 -0700 Subject: [PATCH 619/703] Update website/static/_redirects --- website/static/_redirects | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/static/_redirects b/website/static/_redirects index aba7f20132b..fe6cda820d4 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,5 +1,6 @@ /docs/deploy/job-triggers /docs/deploy/deploy-jobs 301 - +/docs/deploy/job-settings /docs/deploy/deploy-jobs 301 +/docs/deploy/dbt-cloud-job /docs/deploy/deploy-jobs 301 /docs/deploy/slim-ci-jobs /docs/deploy/ci-jobs 301 ## semantic layer From 1e74b197c8edc758957b40024a9cb963adbc127a Mon Sep 17 00:00:00 2001 From: rpourzand Date: Thu, 10 Aug 2023 00:39:45 -0700 Subject: [PATCH 620/703] Found another typo in the table and we had a duplicate query Typo on the where filter, and we also had two of the same query under the "WHERE" examples --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 1497dd61a63..f981537f530 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -138,7 +138,7 @@ To query metric values, here are the following parameters that are available: | `metrics` | The metric name as defined in your dbt metric configuration | `metrics=['revenue']` | Required | | `group_by` | Dimension names or entities to group by. We require a reference to the entity of the dimension (other than for the primary time dimension), which is pre-appended to the front of the dimension name with a double underscore. | `group_by=['user__country', 'metric_time']` | Optional | | `grain` | A parameter specific to any time dimension and changes the grain of the data from the default for the metric. | `group_by=[Dimension('metric_time')`
    `grain('week\|day\|month\|quarter\|year')]` | Optional | -| `where` | A where clause that allows you to filter on dimensions and entities using parameters - comes with `TimeDimension`, `Dimension`, and `Entity` objects. Granularity is required with `TimeDimension` | `"{{ where=Dimension('customer__country') = 'US')"` | Optional | +| `where` | A where clause that allows you to filter on dimensions and entities using parameters - comes with `TimeDimension`, `Dimension`, and `Entity` objects. Granularity is required with `TimeDimension` | `"{{ where=Dimension('customer__country') }} = 'US')"` | Optional | | `limit` | Limit the data returned | `limit=10` | Optional | |`order` | Order the data returned | `order_by=['-order_gross_profit']` (remove `-` for ascending order) | Optional | | `explain` | If true, returns generated SQL for the data platform but does not execute | `explain=True` | Optional | @@ -233,16 +233,6 @@ where="{{ TimeDimension('metric_time', 'MONTH') }} >= '2017-03-09' AND {{ Dimens }} ``` -Use the following example to query using a `where` filter: - -```bash -select * from {{ -semantic_layer.query(metrics=['food_order_amount', 'order_gross_profit'], -group_by=[Dimension('metric_time').grain('month'),'customer__customer_type'], -where="{{ TimeDimension('metric_time', 'MONTH') }} >= '2017-03-09' AND {{ Dimension('customer__customer_type' }} in ('new')") -}} -``` - ### Query with a limit and order_by Use the following example to query using a `limit` or `order_by` clauses: From e283fd09cb2ccabd2586dbba618d9d4b41c2f596 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 11:00:40 +0100 Subject: [PATCH 621/703] Update website/docs/docs/dbt-cloud-apis/discovery-querying.md --- website/docs/docs/dbt-cloud-apis/discovery-querying.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/discovery-querying.md b/website/docs/docs/dbt-cloud-apis/discovery-querying.md index 9791ee5af3d..40836203faa 100644 --- a/website/docs/docs/dbt-cloud-apis/discovery-querying.md +++ b/website/docs/docs/dbt-cloud-apis/discovery-querying.md @@ -64,7 +64,7 @@ There are several illustrative example queries on this page. For more examples, Discovery (GraphQL) API usage is subject to request rate and response size limits to maintain the performance and stability of the metadata platform and prevent abuse. -- Job-level endpoints are subject to query complexity limits. Nested nodes (like parents), code (like rawCode), and catalog columns are considered as most complex. Overly complex queries should be broken up into separate queries with only necessary fields included. dbt Labs recommends using the environment endpoint instead for most use cases to get the latest descriptive and result metadata for a dbt Cloud project. +Job-level endpoints are subject to query complexity limits. Nested nodes (like parents), code (like rawCode), and catalog columns are considered as most complex. Overly complex queries should be broken up into separate queries with only necessary fields included. dbt Labs recommends using the environment endpoint instead for most use cases to get the latest descriptive and result metadata for a dbt Cloud project. ## Retention limits You can use the Discovery API to query data from the previous three months. For example, if today was April 1st, you could query data back to January 1st. From 1ff6c3e66ba02c91b58d1d4d4249169667465af1 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 10 Aug 2023 13:11:47 +0100 Subject: [PATCH 622/703] add new eat section --- website/snippets/_cloud-environments-info.md | 45 ++++++++++++++++++ .../using-dbt-cloud/extended-attributes.jpg | Bin 0 -> 16315 bytes 2 files changed, 45 insertions(+) create mode 100644 website/static/img/docs/dbt-cloud/using-dbt-cloud/extended-attributes.jpg diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index d8ea7e3d799..a243a508011 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -42,3 +42,48 @@ By default, all environments will use the default branch in your repository (usu - **Deployment:** determines the branch is cloned during job executions for each environment. For more info, check out this [FAQ page on this topic](/faqs/Environments/custom-branch-settings)! + + +### Extended Attributes (Beta) + +:::important This feature is currently in beta + +Extended Attributes allows users to enter YAML attributes in their Environment settings. It's currently in beta and if you're interested in getting access to the beta, please contact us -- HOW CAN USES TRY THIS BETA? IF IT'S FEATURE FLAG, HOW DO THEY JOIN THE BETA? DO WE NEED TO ADD A FORM LINK? OR EMAIL? +::: + +Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. + +It enhances user control over environments (deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. + +Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials. It accepts any attributes accepted by a dbt adapter in its profiles.yml. However, it doesn't mask secret values, and we recommend avoiding setting secret values to prevent visibility in the text box and logs. + +
    + +The **Extended Attributes** text box must contain valid characters only. Any invalid characters will result in an error message. Invalid characters include: + +- `/` (forward slash) +- `\` (backslash) +- `$` (dollar sign) +- `!` (exclamation point) +- `@` (at sign) +- `#` (hash) (NEED CONFIRMATION) +- `+` (plus sign) +- `%` (percentage sign) + +If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the keys. For each individual key: + +- If the key exists in another source (such as your project settings), it will replace its value in the profile. +- If the key doesn't exist, it will add the key or value pair to the profile. + +The following code is an example of the types of attributes you can add to the **Extended Attributes** text box: + +```yaml +type: postgres +host: localhost +user: alice +password: +port: 5432 +dbname: jaffle_shop +schema: dbt_alice +threads: 4 +``` diff --git a/website/static/img/docs/dbt-cloud/using-dbt-cloud/extended-attributes.jpg b/website/static/img/docs/dbt-cloud/using-dbt-cloud/extended-attributes.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3b5929c3141b096c3893caa63339e5817667b876 GIT binary patch literal 16315 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 i%YO6w_FM|z+ Date: Thu, 10 Aug 2023 13:13:57 +0100 Subject: [PATCH 623/703] simplify --- website/snippets/_cloud-environments-info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index a243a508011..46c1288f1e8 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -53,7 +53,7 @@ Extended Attributes allows users to enter YAML attributes in their Environment s Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. -It enhances user control over environments (deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. +It provides users with more control over environments (deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials. It accepts any attributes accepted by a dbt adapter in its profiles.yml. However, it doesn't mask secret values, and we recommend avoiding setting secret values to prevent visibility in the text box and logs. From adaba7d5e99de1904792c0886a425b4fdf6ca8f1 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 10 Aug 2023 13:17:08 +0100 Subject: [PATCH 624/703] simplify lang --- website/snippets/_cloud-environments-info.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index 46c1288f1e8..36c8839f551 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -51,11 +51,11 @@ For more info, check out this [FAQ page on this topic](/faqs/Environments/custom Extended Attributes allows users to enter YAML attributes in their Environment settings. It's currently in beta and if you're interested in getting access to the beta, please contact us -- HOW CAN USES TRY THIS BETA? IF IT'S FEATURE FLAG, HOW DO THEY JOIN THE BETA? DO WE NEED TO ADD A FORM LINK? OR EMAIL? ::: -Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. +Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. It provides users with more control over environments (both deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. -It provides users with more control over environments (deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. +Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials. It accepts any attributes accepted by a dbt adapter in its `profiles.yml`. -Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials. It accepts any attributes accepted by a dbt adapter in its profiles.yml. However, it doesn't mask secret values, and we recommend avoiding setting secret values to prevent visibility in the text box and logs. +However, something to note is that it doesn't mask secret values. We recommend avoiding setting secret values to prevent visibility in the text box and logs.
    From 76b9b03870320b998ee283e0cec2d3639e86ebf7 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 13:21:34 +0100 Subject: [PATCH 625/703] Update website/snippets/_cloud-environments-info.md --- website/snippets/_cloud-environments-info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index 36c8839f551..20427475bea 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -48,7 +48,7 @@ For more info, check out this [FAQ page on this topic](/faqs/Environments/custom :::important This feature is currently in beta -Extended Attributes allows users to enter YAML attributes in their Environment settings. It's currently in beta and if you're interested in getting access to the beta, please contact us -- HOW CAN USES TRY THIS BETA? IF IT'S FEATURE FLAG, HOW DO THEY JOIN THE BETA? DO WE NEED TO ADD A FORM LINK? OR EMAIL? +Extended Attributes allow users to enter YAML attributes in their Environment settings. It's currently in beta and if you're interested in joining the beta, please contact us -- HOW CAN USES TRY THIS BETA? IF IT'S FEATURE FLAG, HOW DO THEY JOIN THE BETA? DO WE NEED TO ADD A FORM LINK? OR EMAIL? ::: Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. It provides users with more control over environments (both deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. From f4a742d33b8aea70970f6ba29681fdc6603fdcd8 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 10 Aug 2023 13:25:07 +0100 Subject: [PATCH 626/703] change to sentence --- website/snippets/_cloud-environments-info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index 20427475bea..b41dc056b91 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -44,7 +44,7 @@ By default, all environments will use the default branch in your repository (usu For more info, check out this [FAQ page on this topic](/faqs/Environments/custom-branch-settings)! -### Extended Attributes (Beta) +### Extended attributes (Beta) :::important This feature is currently in beta From 9bc111f6372ee1aa9ac5b88b36bb7658077a3858 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 10 Aug 2023 09:14:06 -0400 Subject: [PATCH 627/703] Update redshift-configs.md --- .../docs/reference/resource-configs/redshift-configs.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index b0c37dc2bac..2b54635ac05 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -109,9 +109,11 @@ models: The Redshift adapter supports [materialized views](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-overview.html) and refreshes them for every subsequent `dbt run` that you execute. For more information, see [Refresh Materialized Views](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-refresh.html) in the Redshift docs. Materialized views support the optional configuration `on_configuration_change` with the following values: -- `apply` (default) — attempts to update the existing database object if possible, avoiding a complete rebuild. The `auto_refresh` action can applied without the need to rebuild the materialized view. +- `apply` (default) — attempts to update the existing database object if possible, avoiding a complete rebuild. - `skip` — allows runs to continue while also providing a warning that the model was skipped -- `fail` — forces runs to fail if a change is detected in a materialized view +- `fail` — forces runs to fail if a change is detected in a materialized view + +Additionally, you can apply the `auto_refresh` configuration to have Redshift [automatically refresh](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-refresh.html) the materialized view for you. This action can applied without the need to rebuild the materialized view. You can create a materialized view by editing _one_ of these files: - the SQL file for your model @@ -125,6 +127,7 @@ The following examples create a materialized view: {{ config( materialized = 'materialized_view', + auto_refresh = false, on_configuration_change = 'apply', ) }} From e5ee954e1bb175434709ad338e589c70eedb10cb Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 15:15:53 +0100 Subject: [PATCH 628/703] add info on the 'change row display' settings in the ide adding this new feature per @StefanDBTLabs 's update --- .../cloud/dbt-cloud-ide/ide-user-interface.md | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index 63a4f9a0312..852f7202465 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -28,7 +28,7 @@ The IDE streamlines your workflow, and features a popular user interface layout 4. **File Explorer —** The File Explorer shows the filetree of your repository. You can: - Click on any file in the filetree to open the file in the File Editor. - Click and drag files between directories to move files. - - Right click a file to access the sub-menu options like duplicate file, copy file name, copy as `ref`, rename, delete. + - Right-click a file to access the sub-menu options like duplicate file, copy file name, copy as `ref`, rename, delete. - **Note**: To perform these actions, the user must not be in `read-only` mode, which generally happens when the user is viewing the default branch. - Use file indicators, located to the right of your files or folder name, to see when changes or actions were made: * Unsaved (•) — The IDE detects unsaved changes to your file/folder @@ -59,7 +59,7 @@ The IDE features some delightful tools and layouts to make it easier for you to - **Version Control Options menu —** Below the Git Actions button, the **Changes** section, which lists all file changes since the last commit. You can click on a change to open the Git Diff View to see the inline changes. You can also right-click any file and use the file-specific options in the Version Control Options menu. - + ## Additional editing features @@ -72,23 +72,25 @@ The IDE features some delightful tools and layouts to make it easier for you to - **Git Diff View —** Clicking on a file in the **Changes** section of the **Version Control Menu** will open the changed file with Git Diff view. The editor will show the previous version on the left and the in-line changes made on the right. -- **Markdown Preview console tab —** The Markdown Preview console tab shows a preview of your .md file's markdown code in your repository, and updates it automatically as you edit your code. +- **Markdown Preview console tab —** The Markdown Preview console tab shows a preview of your .md file's markdown code in your repository and updates it automatically as you edit your code. - **CSV Preview console tab —** The CSV Preview console tab displays the data from your CSV file in a table, which updates automatically as you edit the file in your seed directory. ## Console section + The console section, located below the File editor, includes various console tabs and buttons to help you with tasks such as previewing, compiling, building, and viewing the . Refer to the following sub-bullets for more details on the console tabs and buttons. -1. **Preview button —** When you click on the Preview button, it runs the SQL in the active file editor regardless of whether you have saved it or not, and sends the results to the Results console tab. - * To prevent the IDE from returning too much data and causing browser problems, a limit of 500 is automatically added to queries executed via the Preview Button. However, you can change this by adding `limit your_number` at the end of your SQL statement. For example, `SELECT * FROM` table `limit 100` will return up to 100 rows. Remember that you must write the `limit your_number` explicitly and cannot derive it from a macro. +1. **Preview button —** When you click on the Preview button, it runs the SQL in the active file editor regardless of whether you have saved it or not and sends the results to the Results console tab. + * To prevent the IDE from returning too much data and causing browser problems, there is a 500-row limit automatically set to queries executed using the **Preview Button**. You can modify this by adding `limit your_number` at the end of your SQL statement. For example, `SELECT * FROM` table `limit 100` will return up to 100 rows. Remember that you must write the `limit your_number` explicitly and cannot derive it from a macro. + * In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on **Change row display** next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows. * The IDE also supports `SELECT TOP #`, which specifies the number of records to return. 2. **Compile button —** The Compile button compiles the SQL code from the active File Editor, irrespective of its save status, and outputs it to the Compiled Code tab. -3. **Build button —** The build button allows users to quickly access dbt commands related to the active model in the File Editor. The available commands include dbt build, dbt test, and dbt run, with options to include only the current resource, the resource and its upstream dependencies, the resource and its downstream dependencies, or the resource with all dependencies. This menu is available for all executable nodes. +3. **Build button —** The build button allows users to quickly access dbt commands related to the active model in the File Editor. The available commands include dbt build, dbt test, and dbt run, with options to include only the current resource, the resource and its upstream dependencies, the resource, and its downstream dependencies, or the resource with all dependencies. This menu is available for all executable nodes. 3. **Format button —** The editor has a **Format** button that can reformat the contents of your files. For SQL files, it uses either `sqlfmt` or `sqlfluff`, and for Python files, it uses `black`. @@ -106,9 +108,10 @@ The console section, located below the File editor, includes various console tab ## Invocation history -The Invocation History Drawer stores information on dbt invocations in the IDE. When you invoke a command (like execute a dbt command such as `dbt run`), the associated logs are displayed in the Invocation History Drawer. -You can open the drawer multiple ways: +The Invocation History Drawer stores information on dbt invocations in the IDE. When you invoke a command (like executing a dbt command such as `dbt run`), the associated logs are displayed in the Invocation History Drawer. + +You can open the drawer in multiple ways: - Clicking the `^` icon next to the Command bar on the lower left of the page - Typing a dbt command and pressing enter - Or pressing Control-backtick (or Ctrl + `) @@ -117,15 +120,15 @@ You can open the drawer multiple ways: 1. **Invocation History list —** The left-hand panel of the Invocation History Drawer displays a list of previous invocations in the IDE, including the command, branch name, command status, and elapsed time. -2. **Invocation Summary —** The Invocation Summary, located above **System Logs**, displays information about a selected command from the Invocation History list , such as the command, its status (`Running` if it's still running), the git branch that was active during the command, and the time the command was invoked. +2. **Invocation Summary —** The Invocation Summary, located above **System Logs**, displays information about a selected command from the Invocation History list, such as the command, its status (`Running` if it's still running), the git branch that was active during the command, and the time the command was invoked. -3. **System Logs toggle —** The System Logs toggle, located under the Invocation Summary, allows the user to see the full stdout and debug logs for entirety of the invoked command. +3. **System Logs toggle —** The System Logs toggle, located under the Invocation Summary, allows the user to see the full stdout and debug logs for the entirety of the invoked command. -4. **Command Control button —** Use the Command Control button, located on the right-side, to control your invocation and cancel or rerun a selected run. +4. **Command Control button —** Use the Command Control button, located on the right side, to control your invocation and cancel or rerun a selected run. -5. **Node Summary tab —** Clicking on the Results Status Tabs will filter the Node Status List based on their corresponding status. The available statuses are Pass (successful invocation of a node), Warn (test executed with warning), Error (database error or test failure), Skip (nodes not run due to upstream error), and Queued (nodes that have not executed yet). +5. **Node Summary tab —** Clicking on the Results Status Tabs will filter the Node Status List based on their corresponding status. The available statuses are Pass (successful invocation of a node), Warn (test executed with a warning), Error (database error or test failure), Skip (nodes not run due to upstream error), and Queued (nodes that have not executed yet). 6. **Node result toggle —** After running a dbt command, information about each executed node can be found in a Node Result toggle, which includes a summary and debug logs. The Node Results List lists every node that was invoked during the command. @@ -135,12 +138,12 @@ You can open the drawer multiple ways: ## Modals and Menus Use menus and modals to interact with IDE and access useful options to help your development workflow. -- **Editor tab menu —** To interact with open editor tabs, right-click any tab to access the helpful options in the file tab menu. +- **Editor tab menu —** To interact with open editor tabs, right-click any tab to access the helpful options in the file tab menu. - **File Search —** You can easily search for and navigate between files using the File Navigation menu, which can be accessed by pressing Command-O or Control-O or clicking on the 🔍 icon in the File Explorer. -- **Global Command Palette—** The Global Command Palette provides helpful shortcuts to interact with the IDE, such as git actions, specialized dbt commands, compile, and preview actions, among others. To open the menu, use Command-P or Control-P. +- **Global Command Palette—** The Global Command Palette provides helpful shortcuts to interact with the IDE, such as git actions, specialized dbt commands, and compile, and preview actions, among others. To open the menu, use Command-P or Control-P. - **IDE Status modal —** The IDE Status modal shows the current error message and debug logs for the server. This also contains an option to restart the IDE. Open this by clicking on the IDE Status button. @@ -159,7 +162,7 @@ Use menus and modals to interact with IDE and access useful options to help your * Toggling between dark or light mode for a better viewing experience * Restarting the IDE - * Fully recloning your repository to refresh your git state and viewing status details + * Fully recloning your repository to refresh your git state and view status details * Viewing status details, including the IDE Status modal. From 60b7966feca776e2bc91d9bc1171e7238811c9ba Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 10 Aug 2023 10:38:38 -0400 Subject: [PATCH 629/703] Update website/docs/reference/resource-configs/redshift-configs.md --- website/docs/reference/resource-configs/redshift-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 2b54635ac05..06f20d62e39 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -110,7 +110,7 @@ The Redshift adapter supports [materialized views](https://docs.aws.amazon.com/r Materialized views support the optional configuration `on_configuration_change` with the following values: - `apply` (default) — attempts to update the existing database object if possible, avoiding a complete rebuild. -- `skip` — allows runs to continue while also providing a warning that the model was skipped +- `continue` — allows runs to continue while also providing a warning that the model was skipped - `fail` — forces runs to fail if a change is detected in a materialized view Additionally, you can apply the `auto_refresh` configuration to have Redshift [automatically refresh](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-refresh.html) the materialized view for you. This action can applied without the need to rebuild the materialized view. From a7d6b8a89a777a973634df81f540ab57065b23da Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 10 Aug 2023 10:40:14 -0400 Subject: [PATCH 630/703] Update website/docs/reference/resource-configs/redshift-configs.md --- website/docs/reference/resource-configs/redshift-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 06f20d62e39..ae67d67ad6a 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -110,7 +110,7 @@ The Redshift adapter supports [materialized views](https://docs.aws.amazon.com/r Materialized views support the optional configuration `on_configuration_change` with the following values: - `apply` (default) — attempts to update the existing database object if possible, avoiding a complete rebuild. -- `continue` — allows runs to continue while also providing a warning that the model was skipped +- `continue` — allows runs to continue while also providing a warning that the model was not executed - `fail` — forces runs to fail if a change is detected in a materialized view Additionally, you can apply the `auto_refresh` configuration to have Redshift [automatically refresh](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-refresh.html) the materialized view for you. This action can applied without the need to rebuild the materialized view. From 139c98ff37fc4402bc61e99ef71f5d1c7279e721 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 10 Aug 2023 11:08:12 -0400 Subject: [PATCH 631/703] Update website/docs/reference/resource-configs/redshift-configs.md --- website/docs/reference/resource-configs/redshift-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index ae67d67ad6a..1cf4f193cd2 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -127,7 +127,7 @@ The following examples create a materialized view: {{ config( materialized = 'materialized_view', - auto_refresh = false, + auto_refresh = False, on_configuration_change = 'apply', ) }} From a95906a1a07abc58db9db09f7533c68866bc5519 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 16:08:55 +0100 Subject: [PATCH 632/703] Update website/snippets/_version-callout.md --- website/snippets/_version-callout.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index 40afbcfa8bf..71142cea738 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -1,7 +1,9 @@ :::info Model versioning is different to a version tag -Take note that a [version tag](/reference/project-configs/version) (or `version`) is different to [`versions`](/reference/resource-properties/versions) or [Model versions](/docs/collaborate/govern/model-versions). A version tag refers to the compatibility of the dbt project with a specific version of dbt. A version tag isn't required for dbt v1.5 and higher. +Take note that [model versions](/docs/collaborate/govern/model-versions) are different from [dbt_project.yml versions](/reference/project-configs/version#dbt_projectyml-versions) and [.yml property file versions](/reference/project-configs/version#yml-property-file-versions). + +Model versions is a _feature_ that enables better governance and data model management by allowing you to track changes and updates to models over time. dbt_project.yml versions refer to the compatibility of the dbt project with a specific version of dbt. Version numbers within .yml property files inform how dbt parses those YAML files. The latter two are completely optional starting from version 1.5. Model versions and `versions` are _features_ that enable better governance and data model management by allowing you to track changes and updates to models over time. Model versions and `versions` are available in dbt v1.5 or higher. ::: From 89b141d0eb8feba50547aca89af650e72b2af09f Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 16:09:15 +0100 Subject: [PATCH 633/703] Update website/snippets/_version-callout.md --- website/snippets/_version-callout.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index 71142cea738..6194a023a56 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -5,5 +5,4 @@ Take note that [model versions](/docs/collaborate/govern/model-versions) are dif Model versions is a _feature_ that enables better governance and data model management by allowing you to track changes and updates to models over time. dbt_project.yml versions refer to the compatibility of the dbt project with a specific version of dbt. Version numbers within .yml property files inform how dbt parses those YAML files. The latter two are completely optional starting from version 1.5. -Model versions and `versions` are _features_ that enable better governance and data model management by allowing you to track changes and updates to models over time. Model versions and `versions` are available in dbt v1.5 or higher. ::: From 8a938e0f7780462bf8964840b8de68c14c8f1a66 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 16:10:07 +0100 Subject: [PATCH 634/703] Update website/snippets/_version-callout.md --- website/snippets/_version-callout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index 6194a023a56..ae6f0bc4383 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -3,6 +3,6 @@ Take note that [model versions](/docs/collaborate/govern/model-versions) are different from [dbt_project.yml versions](/reference/project-configs/version#dbt_projectyml-versions) and [.yml property file versions](/reference/project-configs/version#yml-property-file-versions). -Model versions is a _feature_ that enables better governance and data model management by allowing you to track changes and updates to models over time. dbt_project.yml versions refer to the compatibility of the dbt project with a specific version of dbt. Version numbers within .yml property files inform how dbt parses those YAML files. The latter two are completely optional starting from version 1.5. +Model versions is a _feature_ that enables better governance and data model management by allowing you to track changes and updates to models over time. dbt_project.yml versions refer to the compatibility of the dbt project with a specific version of dbt. Version numbers within .yml property files inform how dbt parses those YAML files. The latter two are completely optional starting from dbt v1.5. ::: From adf36b9d7e64da35b16e8805ba8000029a7805f5 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 16:12:03 +0100 Subject: [PATCH 635/703] Update website/snippets/_version-callout.md --- website/snippets/_version-callout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_version-callout.md b/website/snippets/_version-callout.md index ae6f0bc4383..45c183c2c0d 100644 --- a/website/snippets/_version-callout.md +++ b/website/snippets/_version-callout.md @@ -1,5 +1,5 @@ -:::info Model versioning is different to a version tag +:::info Model versions, dbt_project.yml versions, and .yml versions Take note that [model versions](/docs/collaborate/govern/model-versions) are different from [dbt_project.yml versions](/reference/project-configs/version#dbt_projectyml-versions) and [.yml property file versions](/reference/project-configs/version#yml-property-file-versions). From 8b05bd3a09d7663c4855c1500410bda3c0136043 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 16:13:43 +0100 Subject: [PATCH 636/703] Update model-versions.md --- website/docs/docs/collaborate/govern/model-versions.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index e21f963057f..37d8628c2eb 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -6,10 +6,13 @@ description: "Version models to help with lifecycle management" keyword: governance, model version, model versioning, dbt model versioning --- + + :::info New functionality This functionality is new in v1.5 — if you have thoughts, participate in [the discussion on GitHub](https://github.com/dbt-labs/dbt-core/discussions/6736)! ::: + import VersionsCallout from '/snippets/_version-callout.md'; @@ -21,7 +24,7 @@ Versioning APIs is a hard problem in software engineering. The root of the chall When sharing a final dbt model with other teams or systems, that model is operating like an API. When the producer of that model needs to make significant changes, how can they avoid breaking the queries of its users downstream? -Model versioning is a tool to tackle this problem, thoughtfully and head-on. The goal of is not to make the problem go away entirely, nor to pretend it's easier or simpler than it is. +Model versioning is a tool to tackle this problem, thoughtfully and head-on. The goal is not to make the problem go away entirely, nor to pretend it's easier or simpler than it is. ## Related documentation - [`versions`](/reference/resource-properties/versions) From d79ed6f7ae06fd442ba3bcc83c4ca2c2b4b792a5 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 16:33:30 +0100 Subject: [PATCH 637/703] Update model-versions.md --- website/docs/docs/collaborate/govern/model-versions.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index 37d8628c2eb..a4a30ee0db0 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -9,7 +9,9 @@ keyword: governance, model version, model versioning, dbt model versioning :::info New functionality + This functionality is new in v1.5 — if you have thoughts, participate in [the discussion on GitHub](https://github.com/dbt-labs/dbt-core/discussions/6736)! + ::: From 97858223c2bb9fd0deda2d33552df90eba512881 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 16:43:12 +0100 Subject: [PATCH 638/703] Update model-versions.md --- website/docs/docs/collaborate/govern/model-versions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index a4a30ee0db0..e47c5764af7 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -6,7 +6,7 @@ description: "Version models to help with lifecycle management" keyword: governance, model version, model versioning, dbt model versioning --- - + :::info New functionality From 74a370d1078d23349e9ce4352178a1c604499098 Mon Sep 17 00:00:00 2001 From: Drew McLean Date: Thu, 10 Aug 2023 12:30:06 -0400 Subject: [PATCH 639/703] Update set-up-sso-saml-2.0.md Remove the link to `Configuring SAML endpoints in AD` which points to a hash mark that doesn't exist and is confusing customers. --- website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md b/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md index d5a16e91792..22a8094553d 100644 --- a/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md +++ b/website/docs/docs/cloud/manage-access/set-up-sso-saml-2.0.md @@ -303,7 +303,7 @@ Follow these steps to set up single sign-on (SSO) with dbt Cloud: 5. Select **Integrate any other application you don't find in the gallery (Non-gallery)** as the application type. 6. Click **Create**. 7. You can find the new application by clicking **Enterprise applications** and selecting **All applications**. -8. Click the application you just created and follow the instructions for configuring it in [Configuring SAML endpoints in AD](#configuring-saml-endpoints-in-ad). +8. Click the application you just created. 9. Select **Single sign-on** under Manage in the left navigation. 10. Click **Set up single sign on** under Getting Started. 11. Click **SAML** in "Select a single sign-on method" section. From 638eb116b7fcc25b8e20a1ee5f0e673364a5b43a Mon Sep 17 00:00:00 2001 From: Will Stamatis <114952643+wlsdbt@users.noreply.github.com> Date: Thu, 10 Aug 2023 12:42:30 -0400 Subject: [PATCH 640/703] Update cumulative-metrics.md corrected "ration" to "ratio" --- website/docs/docs/build/cumulative-metrics.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index 3b4d2327e8a..5312d133d4d 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -14,7 +14,7 @@ This metric is common for calculating things like weekly active users, or month- | --------- | ----------- | ---- | | `name` | The name of the metric. | Required | | `description` | The description of the metric. | Optional | -| `type` | The type of the metric (cumulative, derived, ration, or simple). | Required | +| `type` | The type of the metric (cumulative, derived, ratio, or simple). | Required | | `label` | The value that will be displayed in downstream tools. | Required | | `type_params` | The type parameters of the metric. | Required | | `measure` | The measure you are referencing. | Required | From 14e3829e46f183fd12490e66475357b0e095a8a7 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 17:49:47 +0100 Subject: [PATCH 641/703] Update simple.md fix typos --- website/docs/docs/build/simple.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/simple.md b/website/docs/docs/build/simple.md index bebd7c4589a..7022ca9d007 100644 --- a/website/docs/docs/build/simple.md +++ b/website/docs/docs/build/simple.md @@ -6,7 +6,7 @@ sidebar_label: Simple tags: [Metrics, Semantic Layer] --- -Simple metrics are metrics that directly reference a single measure, without any additional measures involved. They are aggregations over a column in your data platform, and can be filtered by one or multiple dimensions. +Simple metrics are metrics that directly reference a single measure, without any additional measures involved. They are aggregations over a column in your data platform and can be filtered by one or multiple dimensions. The parameters, description, and type for simple metrics are: @@ -14,7 +14,7 @@ Simple metrics are metrics that directly reference a single measure, without any | --------- | ----------- | ---- | | `name` | The name of the metric. | Required | | `description` | The description of the metric. | Optional | -| `type` | The type of the metric (cumulative, derived, ration, or simple). | Required | +| `type` | The type of the metric (cumulative, derived, ratio, or simple). | Required | | `label` | The value that will be displayed in downstream tools. | Required | | `type_params` | The type parameters of the metric. | Required | | `measure` | The measure you're referencing. | Required | From 7fa71abe7b1695be7d773b6efcbab227e0805a65 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 17:50:36 +0100 Subject: [PATCH 642/703] Update derived-metrics.md --- website/docs/docs/build/derived-metrics.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/derived-metrics.md b/website/docs/docs/build/derived-metrics.md index 53d567f0867..375794cc5c8 100644 --- a/website/docs/docs/build/derived-metrics.md +++ b/website/docs/docs/build/derived-metrics.md @@ -14,7 +14,7 @@ In MetricFlow, derived metrics are metrics created by defining an expression usi | --------- | ----------- | ---- | | `name` | The name of the metric. | Required | | `description` | The description of the metric. | Optional | -| `type` | The type of the metric (cumulative, derived, ration, or simple). | Required | +| `type` | The type of the metric (cumulative, derived, ratio, or simple). | Required | | `label` | The value that will be displayed in downstream tools. | Required | | `type_params` | The type parameters of the metric. | Required | | `expr` | The derived expression. | Required | From 408d41d6dbe72840df48f1eb8e88568ce81a6b84 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 10 Aug 2023 17:51:02 +0100 Subject: [PATCH 643/703] Update ratio-metrics.md --- website/docs/docs/build/ratio-metrics.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/ratio-metrics.md b/website/docs/docs/build/ratio-metrics.md index d2640d09016..97efe0f55bf 100644 --- a/website/docs/docs/build/ratio-metrics.md +++ b/website/docs/docs/build/ratio-metrics.md @@ -14,7 +14,7 @@ Ratio allows you to create a ratio between two metrics. You simply specify a num | --------- | ----------- | ---- | | `name` | The name of the metric. | Required | | `description` | The description of the metric. | Optional | -| `type` | The type of the metric (cumulative, derived, ration, or simple). | Required | +| `type` | The type of the metric (cumulative, derived, ratio, or simple). | Required | | `label` | The value that will be displayed in downstream tools. | Required | | `type_params` | The type parameters of the metric. | Required | | `numerator` | The name of the metric used for the numerator, or structure of properties. | Required | From a2887246fb1ffe9546de3a02d4b736a8bde3c00a Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 10 Aug 2023 17:58:17 +0100 Subject: [PATCH 644/703] fix callout --- website/docs/docs/collaborate/govern/model-versions.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/collaborate/govern/model-versions.md b/website/docs/docs/collaborate/govern/model-versions.md index e47c5764af7..49ed65f9a36 100644 --- a/website/docs/docs/collaborate/govern/model-versions.md +++ b/website/docs/docs/collaborate/govern/model-versions.md @@ -6,12 +6,10 @@ description: "Version models to help with lifecycle management" keyword: governance, model version, model versioning, dbt model versioning --- - - -:::info New functionality + +:::info New functionality This functionality is new in v1.5 — if you have thoughts, participate in [the discussion on GitHub](https://github.com/dbt-labs/dbt-core/discussions/6736)! - ::: From 6c0e849ceae6a8647436495ba186e3a99b726e3c Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Thu, 10 Aug 2023 10:03:13 -0700 Subject: [PATCH 645/703] Fold in PM feedback --- website/docs/docs/deploy/jobs.md | 8 ++++++++ website/sidebars.js | 10 +++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/website/docs/docs/deploy/jobs.md b/website/docs/docs/deploy/jobs.md index b4eec18de12..1c86cc7047e 100644 --- a/website/docs/docs/deploy/jobs.md +++ b/website/docs/docs/deploy/jobs.md @@ -9,6 +9,14 @@ In dbt Cloud, you can create and set up triggers for these jobs: - [Deploy jobs](/docs/deploy/deploy-jobs) - [Continuous integration (CI) jobs](/docs/deploy/continuous-integration) +:::tip Join our beta + +dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs and CI jobs. For docs on deploy jobs, refer to [Create and schedule jobs (Beta version)](/docs/deploy/deploy-jobs?version=beta#create-and-schedule-jobs). For docs on CI jobs, refer to [Set up CI jobs (Beta version)](/docs/deploy/ci-jobs?version=beta#set-up-ci-jobs). + +If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). + +::: + Below is a comparison table that describes how deploy jobs and CI jobs behave differently: | | Deploy Jobs | CI Jobs | diff --git a/website/sidebars.js b/website/sidebars.js index c51903d31d8..a789f27ab2e 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -331,17 +331,17 @@ const sidebarSettings = { items: [ "docs/deploy/job-scheduler", "docs/deploy/deploy-environments", - "docs/deploy/jobs", - "docs/deploy/deploy-jobs", + "docs/deploy/continuous-integration", { type: "category", - label: "Continuous integration", - link: { type: "doc", id: "docs/deploy/continuous-integration" }, + label: "Jobs", + link: { type: "doc", id: "docs/deploy/jobs" }, items: [ + "docs/deploy/deploy-jobs", "docs/deploy/ci-jobs", + "docs/deploy/job-commands", ], }, - "docs/deploy/job-commands", { type: "category", label: "Monitor jobs and alerts", From 606aea5ec2007f454be4422f83e3f52c94913400 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Thu, 10 Aug 2023 10:07:30 -0700 Subject: [PATCH 646/703] Update website/docs/docs/deploy/deploy-jobs.md --- website/docs/docs/deploy/deploy-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/deploy-jobs.md b/website/docs/docs/deploy/deploy-jobs.md index 9f903dfe850..3d754beb609 100644 --- a/website/docs/docs/deploy/deploy-jobs.md +++ b/website/docs/docs/deploy/deploy-jobs.md @@ -147,5 +147,5 @@ Refer to the following example snippets: ## Related docs - [Artifacts](/docs/deploy/artifacts) -- [Job commands](/docs/deploy/job-commands) +- [Continuous integration (CI) jobs](/docs/deploy/ci-jobs) - [Webhooks](/docs/deploy/webhooks) \ No newline at end of file From cdc82e0eb3a42cbb748b958588f7b71b561d1828 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Thu, 10 Aug 2023 10:12:49 -0700 Subject: [PATCH 647/703] Fix warning about old redirect error --- website/static/_redirects | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/static/_redirects b/website/static/_redirects index a3833dd9888..ae726f816c4 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -151,7 +151,7 @@ docs/dbt-cloud/using-dbt-cloud/cloud-model-timing-tab /docs/deploy/dbt-cloud-job /docs/deploy/architecture /docs/cloud/about-cloud/architecture 301 /docs/deploy/single-tenant /docs/cloud/about-cloud/tenancy 301 /docs/deploy/multi-tenant /docs/cloud/about-cloud/tenancy 301 -/docs/cloud/manage-access/about-access 301 /docs/cloud/manage-access/about-user-access 301 +/docs/cloud/manage-access/about-access /docs/cloud/manage-access/about-user-access 301 /docs/collaborate/git/connect-github /docs/cloud/git/connect-github 301 /docs/collaborate/git/connect-gitlab /docs/cloud/git/connect-gitlab 301 /docs/collaborate/git/connect-azure-devops /docs/cloud/git/connect-azure-devops 301 From 92c62317fc32b1a8c9be3d2a76a32a916cda4afe Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Thu, 10 Aug 2023 11:25:46 -0700 Subject: [PATCH 648/703] Update website/static/_redirects reproduce warning. afterward fix again --- website/static/_redirects | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/static/_redirects b/website/static/_redirects index ae726f816c4..a3833dd9888 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -151,7 +151,7 @@ docs/dbt-cloud/using-dbt-cloud/cloud-model-timing-tab /docs/deploy/dbt-cloud-job /docs/deploy/architecture /docs/cloud/about-cloud/architecture 301 /docs/deploy/single-tenant /docs/cloud/about-cloud/tenancy 301 /docs/deploy/multi-tenant /docs/cloud/about-cloud/tenancy 301 -/docs/cloud/manage-access/about-access /docs/cloud/manage-access/about-user-access 301 +/docs/cloud/manage-access/about-access 301 /docs/cloud/manage-access/about-user-access 301 /docs/collaborate/git/connect-github /docs/cloud/git/connect-github 301 /docs/collaborate/git/connect-gitlab /docs/cloud/git/connect-gitlab 301 /docs/collaborate/git/connect-azure-devops /docs/cloud/git/connect-azure-devops 301 From a47cbf583fe75c4d8007552dae66c2346790a456 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Thu, 10 Aug 2023 11:47:44 -0700 Subject: [PATCH 649/703] Update website/docs/docs/deploy/jobs.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/deploy/jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/jobs.md b/website/docs/docs/deploy/jobs.md index 1c86cc7047e..28928008dc0 100644 --- a/website/docs/docs/deploy/jobs.md +++ b/website/docs/docs/deploy/jobs.md @@ -21,7 +21,7 @@ Below is a comparison table that describes how deploy jobs and CI jobs behave di | | Deploy Jobs | CI Jobs | | --- | --- | --- | -| Purpose | Building production data assets | Building and testing new code before merging changes into production | +| Purpose | Builds production data assets | Builds and tests new code before merging changes into production | | Trigger types | Triggered by a schedule or by API | Triggered by a webhook from a commit to a PR or by API | | Destination | Builds into a production database and schema | Builds into a staging database and ephemeral schema, lived for the lifetime of the PR | | Execution Mode | Runs execute sequentially, so as to not have collisions on the underlying DAG. | Runs execute in parallel to promote team velocity. | From f0c32980e589665f717b414d9ad9ec900d5a1586 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Thu, 10 Aug 2023 11:48:31 -0700 Subject: [PATCH 650/703] Update website/docs/docs/deploy/jobs.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/deploy/jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/jobs.md b/website/docs/docs/deploy/jobs.md index 28928008dc0..d66cdd87619 100644 --- a/website/docs/docs/deploy/jobs.md +++ b/website/docs/docs/deploy/jobs.md @@ -25,5 +25,5 @@ Below is a comparison table that describes how deploy jobs and CI jobs behave di | Trigger types | Triggered by a schedule or by API | Triggered by a webhook from a commit to a PR or by API | | Destination | Builds into a production database and schema | Builds into a staging database and ephemeral schema, lived for the lifetime of the PR | | Execution Mode | Runs execute sequentially, so as to not have collisions on the underlying DAG. | Runs execute in parallel to promote team velocity. | -| Efficiency run savings | Over scheduled jobs are detected and unnecessary runs are canceled to avoid queue clog. | Run cancellation happens when an in-flight run becomes stale due to a new commit of the PR being pushed. | +| Efficiency run savings | Detects over scheduled jobs and cancels unnecessary runs to avoid queue clog. | Cancels runs when an in-flight run becomes stale when a new commit is pushed to the pull request. | | State comparison | Only sometimes needs to detect state | Almost always needs to compare state against the production environment to build on modified code and its dependents. | From 51487c9db520564d6e63bdbfc48340f7844195aa Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Thu, 10 Aug 2023 11:54:38 -0700 Subject: [PATCH 651/703] Fix malformed redirect --- website/static/_redirects | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/static/_redirects b/website/static/_redirects index a3833dd9888..ae726f816c4 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -151,7 +151,7 @@ docs/dbt-cloud/using-dbt-cloud/cloud-model-timing-tab /docs/deploy/dbt-cloud-job /docs/deploy/architecture /docs/cloud/about-cloud/architecture 301 /docs/deploy/single-tenant /docs/cloud/about-cloud/tenancy 301 /docs/deploy/multi-tenant /docs/cloud/about-cloud/tenancy 301 -/docs/cloud/manage-access/about-access 301 /docs/cloud/manage-access/about-user-access 301 +/docs/cloud/manage-access/about-access /docs/cloud/manage-access/about-user-access 301 /docs/collaborate/git/connect-github /docs/cloud/git/connect-github 301 /docs/collaborate/git/connect-gitlab /docs/cloud/git/connect-gitlab 301 /docs/collaborate/git/connect-azure-devops /docs/cloud/git/connect-azure-devops 301 From 6c958e8941c746b9aed6e0d3949e5062eeb12b7d Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Fri, 11 Aug 2023 12:59:15 -0400 Subject: [PATCH 652/703] Apply suggestions from code review Co-authored-by: Grace Goheen <53586774+graciegoheen@users.noreply.github.com> --- website/docs/reference/resource-properties/constraints.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/reference/resource-properties/constraints.md b/website/docs/reference/resource-properties/constraints.md index de5b3ef7284..c84af0ab64d 100644 --- a/website/docs/reference/resource-properties/constraints.md +++ b/website/docs/reference/resource-properties/constraints.md @@ -378,10 +378,10 @@ select version: 2 models: - - name: double_nested_fields + - name: nested_column_constraints_example config: - contract: {enforced: true} - materialized: table + contract: + enforced: true columns: - name: a data_type: string From 84853128592217e5985b8223929da3727a1cdb13 Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Fri, 11 Aug 2023 17:08:33 -0700 Subject: [PATCH 653/703] Update 3-dbt-cloud-job-on-merge.md --- .../custom-cicd-pipelines/3-dbt-cloud-job-on-merge.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/guides/orchestration/custom-cicd-pipelines/3-dbt-cloud-job-on-merge.md b/website/docs/guides/orchestration/custom-cicd-pipelines/3-dbt-cloud-job-on-merge.md index d618f9eec64..d22d1d14284 100644 --- a/website/docs/guides/orchestration/custom-cicd-pipelines/3-dbt-cloud-job-on-merge.md +++ b/website/docs/guides/orchestration/custom-cicd-pipelines/3-dbt-cloud-job-on-merge.md @@ -1,11 +1,11 @@ --- -title: Run a dbt Cloud job on merge +title: Run a dbt Cloud job on merge id: 3-dbt-cloud-job-on-merge --- This job will take a bit more to setup, but is a good example of how to call the dbt Cloud API from a CI/CD pipeline. The concepts presented here can be generalized and used in whatever way best suits your use case. -The setup below shows how to call the dbt Cloud API to run a job every time there is a push to your main branch (The branch where pull requests are typically merged. Commonly referred to as the main, primary, or master branch, but can be named differently). +The setup below shows how to call the dbt Cloud API to run a job every time there's a push to your main branch (The branch where pull requests are typically merged. Commonly referred to as the main, primary, or master branch, but can be named differently). ### 1. Get your dbt Cloud API key From 19c94df98b48251cba7aeccb13f7b3c382a0ccfc Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Fri, 11 Aug 2023 21:23:17 -0400 Subject: [PATCH 654/703] Updating billing page --- website/docs/docs/cloud/billing.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md index 76b37560be3..b25ac4518b6 100644 --- a/website/docs/docs/cloud/billing.md +++ b/website/docs/docs/cloud/billing.md @@ -50,20 +50,25 @@ dbt Cloud offers several [plans](https://www.getdbt.com/pricing) with different ### Developer plan billing -Developer plans are free and include one Developer license and 5,000 models each month. Models are refreshed at the beginning of each calendar month. If you exceed 5,000 models, any subsequent runs will be canceled until models are refreshed or until you upgrade to a paid plan. The rest of the dbt Cloud platform is still accessible, and no work will be lost. +Developer plans are free and include one Developer license and 3,000 models each month. Models are refreshed at the beginning of each calendar month. If you exceed 3,000 models, any subsequent runs will be canceled until models are refreshed or until you upgrade to a paid plan. The rest of the dbt Cloud platform is still accessible, and no work will be lost. + +All included successful models built numbers above reflect our most current pricing and packaging. Based on your usage terms when you signed up for the Developer Plan, the included model entitlements may be different from what’s reflected above. + ### Team plan billing -Team customers pay monthly via credit card for seats and usage, and accounts include 20,000 models monthly. Seats are charged upfront at the beginning of the month. If you add seats during the month, seats will be prorated and charged on the same day. Seats removed during the month will be reflected on the next invoice and are not eligible for refunds. You can change the credit card information and the number of seats from the billings section anytime. Accounts will receive one monthly invoice that includes the upfront charge for the seats and the usage charged in arrears from the previous month. +Team customers pay monthly via credit card for seats and usage, and accounts include 15,000 models monthly. Seats are charged upfront at the beginning of the month. If you add seats during the month, seats will be prorated and charged on the same day. Seats removed during the month will be reflected on the next invoice and are not eligible for refunds. You can change the credit card information and the number of seats from the billings section anytime. Accounts will receive one monthly invoice that includes the upfront charge for the seats and the usage charged in arrears from the previous month. + +Usage is calculated and charged in arrears for the previous month. If you exceed 15,000 models in any month, you will be billed for additional usage on your next invoice. Additional use is billed at the rates on our [pricing page](https://www.getdbt.com/pricing). -Usage is calculated and charged in arrears for the previous month. If you exceed 20,000 models in any month, you will be billed for additional usage on your next invoice. Additional use is billed at the rates on our [pricing page](https://www.getdbt.com/pricing). +Included models that are not consumed do not roll over to future months. You can estimate your bill with a simple formula: -Included models that are not consumed do not roll over to future months. You can estimate your bill with a simple formula: +`($100 x number of developer seats) + ((models built - 15,000) x $0.01)` -`($100 x number of developer seats) + ((models built - 20,000) x $0.01)` +If you cancel your plan, the plan will remain active through the end of the current billing period and may continue to accrue usage. Please review the Managing usage section [#managing-usage] below to avoid further usage accruing. If your account has exceeded the 15,000 included successful models built during the month of cancellation, a usage invoice will be sent the following month. -If you cancel your plan, the plan will remain active through the end of the current billing period and may continue to accrue usage. Please review the Managing usage section [#managing-usage] below to avoid further usage accruing. If your account has exceeded the 20,000 included successful models built during the month of cancellation, a usage invoice will be sent the following month. +All included successful models built numbers above reflect our most current pricing and packaging. Based on your usage terms when you signed up for the Team Plan, the included model entitlements may be different from what’s reflected above. :::note Legacy pricing plans From 9c7b163843ffb2038c496e37bbc7a05408969042 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Fri, 11 Aug 2023 21:27:41 -0400 Subject: [PATCH 655/703] Removing paragraph --- website/docs/docs/cloud/billing.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md index b25ac4518b6..e271240e899 100644 --- a/website/docs/docs/cloud/billing.md +++ b/website/docs/docs/cloud/billing.md @@ -66,8 +66,6 @@ Included models that are not consumed do not roll over to future months. You can `($100 x number of developer seats) + ((models built - 15,000) x $0.01)` -If you cancel your plan, the plan will remain active through the end of the current billing period and may continue to accrue usage. Please review the Managing usage section [#managing-usage] below to avoid further usage accruing. If your account has exceeded the 15,000 included successful models built during the month of cancellation, a usage invoice will be sent the following month. - All included successful models built numbers above reflect our most current pricing and packaging. Based on your usage terms when you signed up for the Team Plan, the included model entitlements may be different from what’s reflected above. :::note Legacy pricing plans From d6dfd3c049cd25c206b66e2dc0cb29ba294b1315 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 09:15:30 -0400 Subject: [PATCH 656/703] Update website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index 852f7202465..af3750a8f74 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -84,7 +84,7 @@ The console section, located below the File editor, includes various console tab 1. **Preview button —** When you click on the Preview button, it runs the SQL in the active file editor regardless of whether you have saved it or not and sends the results to the Results console tab. - * To prevent the IDE from returning too much data and causing browser problems, there is a 500-row limit automatically set to queries executed using the **Preview Button**. You can modify this by adding `limit your_number` at the end of your SQL statement. For example, `SELECT * FROM` table `limit 100` will return up to 100 rows. Remember that you must write the `limit your_number` explicitly and cannot derive it from a macro. + * **500-row limit:** To prevent the IDE from returning too much data and causing browser problems, dbt automatically sets a 500-row limit when using the **Preview Button**. You can modify this by adding `limit your_number` at the end of your SQL statement. For example, `SELECT * FROM` table `limit 100` will return up to 100 rows. Remember that you must write the `limit your_number` explicitly and cannot derive it from a macro. * In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on **Change row display** next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows. * The IDE also supports `SELECT TOP #`, which specifies the number of records to return. From e226bac99271d3dbede248c7cd558f260163b5e4 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 09:16:16 -0400 Subject: [PATCH 657/703] Update website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index af3750a8f74..d98cf55d824 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -85,7 +85,7 @@ The console section, located below the File editor, includes various console tab 1. **Preview button —** When you click on the Preview button, it runs the SQL in the active file editor regardless of whether you have saved it or not and sends the results to the Results console tab. * **500-row limit:** To prevent the IDE from returning too much data and causing browser problems, dbt automatically sets a 500-row limit when using the **Preview Button**. You can modify this by adding `limit your_number` at the end of your SQL statement. For example, `SELECT * FROM` table `limit 100` will return up to 100 rows. Remember that you must write the `limit your_number` explicitly and cannot derive it from a macro. - * In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on **Change row display** next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows. + * **Change row limit default:** In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on **Change row display** next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows. * The IDE also supports `SELECT TOP #`, which specifies the number of records to return. 2. **Compile button —** The Compile button compiles the SQL code from the active File Editor, irrespective of its save status, and outputs it to the Compiled Code tab. From bef5892127d798e3824c48b4be3b2d26eeef0792 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 09:16:24 -0400 Subject: [PATCH 658/703] Update website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index d98cf55d824..9de31eb9f48 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -109,7 +109,7 @@ The console section, located below the File editor, includes various console tab ## Invocation history -The Invocation History Drawer stores information on dbt invocations in the IDE. When you invoke a command (like executing a dbt command such as `dbt run`), the associated logs are displayed in the Invocation History Drawer. +The Invocation History Drawer stores information on dbt invocations in the IDE. When you invoke a command, like executing a dbt command such as `dbt run`, the associated logs are displayed in the Invocation History Drawer. You can open the drawer in multiple ways: - Clicking the `^` icon next to the Command bar on the lower left of the page From f576ae69bab6d1679135995838079d1df1b60fda Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 09:16:29 -0400 Subject: [PATCH 659/703] Update website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index 9de31eb9f48..f3951ec2c7d 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -86,7 +86,7 @@ The console section, located below the File editor, includes various console tab 1. **Preview button —** When you click on the Preview button, it runs the SQL in the active file editor regardless of whether you have saved it or not and sends the results to the Results console tab. * **500-row limit:** To prevent the IDE from returning too much data and causing browser problems, dbt automatically sets a 500-row limit when using the **Preview Button**. You can modify this by adding `limit your_number` at the end of your SQL statement. For example, `SELECT * FROM` table `limit 100` will return up to 100 rows. Remember that you must write the `limit your_number` explicitly and cannot derive it from a macro. * **Change row limit default:** In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on **Change row display** next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows. - * The IDE also supports `SELECT TOP #`, which specifies the number of records to return. + * **Specify records returned:** The IDE also supports `SELECT TOP #`, which specifies the number of records to return. 2. **Compile button —** The Compile button compiles the SQL code from the active File Editor, irrespective of its save status, and outputs it to the Compiled Code tab. From 8209f3df0640babd471db5a208d7e8d6042371fb Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 09:17:01 -0400 Subject: [PATCH 660/703] Update website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md --- website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index f3951ec2c7d..5ca99cf1c5e 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -59,7 +59,7 @@ The IDE features some delightful tools and layouts to make it easier for you to - **Version Control Options menu —** Below the Git Actions button, the **Changes** section, which lists all file changes since the last commit. You can click on a change to open the Git Diff View to see the inline changes. You can also right-click any file and use the file-specific options in the Version Control Options menu. - + ## Additional editing features From c349de602d2f2d3554b95f338c72df31a2e6483f Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 14 Aug 2023 09:35:28 -0400 Subject: [PATCH 661/703] address leona's feedback --- .../docs/cloud/dbt-cloud-ide/ide-user-interface.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index 5ca99cf1c5e..4e053b1419c 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -84,9 +84,16 @@ The console section, located below the File editor, includes various console tab 1. **Preview button —** When you click on the Preview button, it runs the SQL in the active file editor regardless of whether you have saved it or not and sends the results to the Results console tab. - * **500-row limit:** To prevent the IDE from returning too much data and causing browser problems, dbt automatically sets a 500-row limit when using the **Preview Button**. You can modify this by adding `limit your_number` at the end of your SQL statement. For example, `SELECT * FROM` table `limit 100` will return up to 100 rows. Remember that you must write the `limit your_number` explicitly and cannot derive it from a macro. - * **Change row limit default:** In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on **Change row display** next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows. - * **Specify records returned:** The IDE also supports `SELECT TOP #`, which specifies the number of records to return. + +
    +Row limits in IDE +The dbt Cloud IDE returns default row limits, however, you can also specify the number of records returned. Refer to the following sub-bullets for more info:

    +
      +
    • 500-row limit: To prevent the IDE from returning too much data and causing browser problems, dbt automatically sets a 500-row limit when using the Preview Button. You can modify this by adding limit your_number at the end of your SQL statement. For example, SELECT * FROM table limit 100 will return up to 100 rows. Remember that you must write the limit your_number explicitly and cannot derive it from a macro.
    • +
    • Change row limit default: In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on Change row display next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows.
    • +
    • Specify records returned: The IDE also supports SELECT TOP #, which specifies the number of records to return.
    • +
    +
    2. **Compile button —** The Compile button compiles the SQL code from the active File Editor, irrespective of its save status, and outputs it to the Compiled Code tab. From c7a14c5fe9d7c778df898e20809ad43c43aaa40f Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 14 Aug 2023 09:36:26 -0400 Subject: [PATCH 662/703] add bold --- website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md index 4e053b1419c..0723df1b5ad 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/ide-user-interface.md @@ -90,7 +90,7 @@ The console section, located below the File editor, includes various console tab The dbt Cloud IDE returns default row limits, however, you can also specify the number of records returned. Refer to the following sub-bullets for more info:

    • 500-row limit: To prevent the IDE from returning too much data and causing browser problems, dbt automatically sets a 500-row limit when using the Preview Button. You can modify this by adding limit your_number at the end of your SQL statement. For example, SELECT * FROM table limit 100 will return up to 100 rows. Remember that you must write the limit your_number explicitly and cannot derive it from a macro.
    • -
    • Change row limit default: In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the **Results** tab when you run a query. To adjust the setting you can click on Change row display next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows.
    • +
    • Change row limit default: In dbt version 1.6 or higher, you have the ability to change the default limit of 500 rows shown in the Results tab when you run a query. To adjust the setting you can click on Change row display next to the displayed rows. Keep in mind that you can't set it higher than 10,000 rows. If you refresh the page or close your development session, the default limit will go back to 500 rows.
    • Specify records returned: The IDE also supports SELECT TOP #, which specifies the number of records to return.
    From fcb6b563936a7efa4c43ec161aac2cca1d777b28 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Mon, 14 Aug 2023 09:54:49 -0400 Subject: [PATCH 663/703] add links --- website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md index 6d8631a41e1..b9622acbeaf 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md @@ -54,7 +54,7 @@ To stay informed on IDE updates, read [dbt Cloud IDE release notes](/tags/ide), | **File state indicators** | Ability to see when changes or actions have been made to the file. The indicators **M, D, A,** and **•** appear to the right of your file or folder name and indicate the actions performed:

    - Unsaved **(•)** — The IDE detects unsaved changes to your file/folder
    - Modification **(M)** — The IDE detects a modification of existing files/folders
    - Added **(A)** — The IDE detects added files
    - Deleted **(D)** — The IDE detects deleted files. | **IDE version control** | The IDE version control section and git button allow you to apply the concept of [version control](/docs/collaborate/git/version-control-basics) to your project directly into the IDE.

    - Create or change branches
    - Commit or revert individual files by right-clicking the edited file
    - [Resolve merge conflicts](/docs/collaborate/git/merge-conflicts)
    - Execute git commands using the git button
    - Link to the repo directly by clicking the branch name | | **Project documentation** | Generate and view your [project documentation](/docs/collaborate/build-and-view-your-docs) for your dbt project in real-time. You can inspect and verify what your project's documentation will look like before you deploy your changes to production. | -| **Preview and Compile button** | You can run your code against your data platform by clicking the **Preview**. Use the **Compile** button in the IDE to generate executable SQL, which occurs locally within dbt. | +| **Preview and Compile button** | You can run your code against your data platform by clicking the [**Preview**](/docs/cloud/dbt-cloud-ide/ide-user-interface#console-section). Use the [**Compile**](/docs/cloud/dbt-cloud-ide/ide-user-interface#console-section) button in the IDE to generate executable SQL, which occurs locally within dbt. | | **Build, test, and run button** | Build, test, and run your project with a button click or by using the Cloud IDE command bar. | **Command bar** | You can enter and run commands from the command bar at the bottom of the IDE. Use the [rich model selection syntax](/reference/node-selection/syntax) to execute [dbt commands](/reference/dbt-commands) directly within dbt Cloud. You can also view the history, status, and logs of previous runs by clicking History on the left of the bar. | **Drag and drop** | Drag and drop files located in the file explorer, and use the file breadcrumb on the top of the IDE for quick, linear navigation. Access adjacent files in the same file by right-clicking on the breadcrumb file. From 986cae241bcdda6634bf2a25cd351ea9e3706d10 Mon Sep 17 00:00:00 2001 From: Ernesto Ongaro Date: Mon, 14 Aug 2023 16:33:56 +0100 Subject: [PATCH 664/703] Clarify flags --- website/docs/reference/commands/compile.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index a9821c0ff12..cf04ddff2d1 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -67,8 +67,8 @@ select * from renamed
    The command accesses the data platform to cache-related metadata, and to run introspective queries. Use the flags: -- `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. -- `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. +- `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. This is a `dbt` flag. +- `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. This is a `dbt compile` flag. ### FAQs From 02d69282be7d9641f3327f8783359f8ec2c13eff Mon Sep 17 00:00:00 2001 From: Ernesto Ongaro Date: Mon, 14 Aug 2023 16:46:50 +0100 Subject: [PATCH 665/703] Update website/docs/reference/commands/compile.md Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> --- website/docs/reference/commands/compile.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index cf04ddff2d1..2616b8b4e9a 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -68,7 +68,7 @@ select * from renamed The command accesses the data platform to cache-related metadata, and to run introspective queries. Use the flags: - `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. This is a `dbt` flag. -- `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. This is a `dbt compile` flag. +- `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. This is a `dbt compile` flag, which means you need to add `dbt compile` as a prefix: `dbt compile --no-introspect`. ### FAQs From 4c8d7143ee9a13e5b81e42922425539ac7ea4b31 Mon Sep 17 00:00:00 2001 From: Ernesto Ongaro Date: Mon, 14 Aug 2023 16:46:57 +0100 Subject: [PATCH 666/703] Update website/docs/reference/commands/compile.md Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> --- website/docs/reference/commands/compile.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index 2616b8b4e9a..60fe05d85e1 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -67,7 +67,7 @@ select * from renamed The command accesses the data platform to cache-related metadata, and to run introspective queries. Use the flags: -- `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. This is a `dbt` flag. +- `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. This is a `dbt` flag, which means you need to add `dbt` as a prefix: `dbt --no-populate-cache`. - `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. This is a `dbt compile` flag, which means you need to add `dbt compile` as a prefix: `dbt compile --no-introspect`. From 49e89454ea2c0c7cfff5f0aeecfd1ecae551651d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 12:01:27 -0400 Subject: [PATCH 667/703] Update website/docs/reference/commands/compile.md --- website/docs/reference/commands/compile.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index 60fe05d85e1..76b49c6a7ee 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -67,7 +67,7 @@ select * from renamed The command accesses the data platform to cache-related metadata, and to run introspective queries. Use the flags: -- `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. This is a `dbt` flag, which means you need to add `dbt` as a prefix: `dbt --no-populate-cache`. +- `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. This is a `dbt` flag, which means you need to add `dbt` as a prefix. For example: `dbt --no-populate-cache`. - `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. This is a `dbt compile` flag, which means you need to add `dbt compile` as a prefix: `dbt compile --no-introspect`. From db5c8d8e5e8900accf51d416654cc32e1f6b9cd1 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 12:01:43 -0400 Subject: [PATCH 668/703] Update website/docs/reference/commands/compile.md --- website/docs/reference/commands/compile.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/commands/compile.md b/website/docs/reference/commands/compile.md index 76b49c6a7ee..ed403d2af32 100644 --- a/website/docs/reference/commands/compile.md +++ b/website/docs/reference/commands/compile.md @@ -68,7 +68,7 @@ select * from renamed The command accesses the data platform to cache-related metadata, and to run introspective queries. Use the flags: - `--no-populate-cache` to disable the initial cache population. If metadata is needed, it will be a cache miss, requiring dbt to run the metadata query. This is a `dbt` flag, which means you need to add `dbt` as a prefix. For example: `dbt --no-populate-cache`. -- `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. This is a `dbt compile` flag, which means you need to add `dbt compile` as a prefix: `dbt compile --no-introspect`. +- `--no-introspect` to disable [introspective queries](/faqs/warehouse/db-connection-dbt-compile#introspective-queries). dbt will raise an error if a model's definition requires running one. This is a `dbt compile` flag, which means you need to add `dbt compile` as a prefix. For example:`dbt compile --no-introspect`. ### FAQs From a9345d864fabf94a28fd594b9f28f58c06480616 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 14:01:44 -0400 Subject: [PATCH 669/703] Update website/snippets/_cloud-environments-info.md --- website/snippets/_cloud-environments-info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index b41dc056b91..32032aa6a40 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -48,7 +48,7 @@ For more info, check out this [FAQ page on this topic](/faqs/Environments/custom :::important This feature is currently in beta -Extended Attributes allow users to enter YAML attributes in their Environment settings. It's currently in beta and if you're interested in joining the beta, please contact us -- HOW CAN USES TRY THIS BETA? IF IT'S FEATURE FLAG, HOW DO THEY JOIN THE BETA? DO WE NEED TO ADD A FORM LINK? OR EMAIL? +Extended Attributes is currently in beta for select users and is subject to change. ::: Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. It provides users with more control over environments (both deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. From 3e8f3372390b781faee2c0bcb6f3bba2c2f53fff Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 14:02:50 -0400 Subject: [PATCH 670/703] Update website/snippets/_cloud-environments-info.md --- website/snippets/_cloud-environments-info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index 32032aa6a40..d0f986705ce 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -70,7 +70,7 @@ The **Extended Attributes** text box must contain valid characters only. Any inv - `+` (plus sign) - `%` (percentage sign) -If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the keys. For each individual key: +If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the profiles.yml attributes. For each individual attribute: - If the key exists in another source (such as your project settings), it will replace its value in the profile. - If the key doesn't exist, it will add the key or value pair to the profile. From 9d827da7fcb6dec55310baf19f28589bcf1f9a19 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 14 Aug 2023 14:03:51 -0400 Subject: [PATCH 671/703] Update _cloud-environments-info.md --- website/snippets/_cloud-environments-info.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index d0f986705ce..83bcce11836 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -72,8 +72,8 @@ The **Extended Attributes** text box must contain valid characters only. Any inv If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the profiles.yml attributes. For each individual attribute: -- If the key exists in another source (such as your project settings), it will replace its value in the profile. -- If the key doesn't exist, it will add the key or value pair to the profile. +- If the attribute exists in another source (such as your project settings), it will replace its value in the profile. +- If the attribute doesn't exist, it will add the attribute or value pair to the profile. The following code is an example of the types of attributes you can add to the **Extended Attributes** text box: @@ -81,7 +81,6 @@ The following code is an example of the types of attributes you can add to the * type: postgres host: localhost user: alice -password: port: 5432 dbname: jaffle_shop schema: dbt_alice From 83b132185eacefa7951131f233171a6eef38af93 Mon Sep 17 00:00:00 2001 From: Jay Allen <44067410+ujmediaservices@users.noreply.github.com> Date: Mon, 14 Aug 2023 19:33:01 -0700 Subject: [PATCH 672/703] Removing dangling sentence "Or" had nothing after it. I just removed it rather than add a new use case. --- website/docs/docs/collaborate/govern/model-access.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/collaborate/govern/model-access.md b/website/docs/docs/collaborate/govern/model-access.md index 970f25ef87f..64b70416a2f 100644 --- a/website/docs/docs/collaborate/govern/model-access.md +++ b/website/docs/docs/collaborate/govern/model-access.md @@ -29,7 +29,7 @@ The two concepts will be closely related, as we develop multi-project collaborat ## Groups -Models can be grouped under a common designation with a shared owner. For example, you could group together all models owned by a particular team, related to modeling a specific data source (`github`), or +Models can be grouped under a common designation with a shared owner. For example, you could group together all models owned by a particular team, or related to modeling a specific data source (`github`). Why define model `groups`? There are two reasons: - It turns implicit relationships into an explicit grouping, with a defined owner. By thinking about the interface boundaries _between_ groups, you can have a cleaner (less entangled) DAG. In the future, those interface boundaries could be appropriate as the interfaces between separate projects. From 927820b5be0d7bb7b145fc186d9571f7e0c4bd5d Mon Sep 17 00:00:00 2001 From: Joel Labes Date: Tue, 15 Aug 2023 14:34:39 +1200 Subject: [PATCH 673/703] Remove "new in 0.9.0" callout --- website/docs/reference/dbt-jinja-functions/ref.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/website/docs/reference/dbt-jinja-functions/ref.md b/website/docs/reference/dbt-jinja-functions/ref.md index c500bb934ab..5d8475550b1 100644 --- a/website/docs/reference/dbt-jinja-functions/ref.md +++ b/website/docs/reference/dbt-jinja-functions/ref.md @@ -29,11 +29,7 @@ from {{ref('model_a')}} `ref()` is, under the hood, actually doing two important things. First, it is interpolating the schema into your model file to allow you to change your deployment schema via configuration. Second, it is using these references between models to automatically build the dependency graph. This will enable dbt to deploy models in the correct order when using `dbt run`. -:::info New in 0.9.0 - -The `{{ ref }}` function returns a `Relation` object that has the same `table`, `schema`, and `name` attributes at the [{{ this }}](/reference/dbt-jinja-functions/this) variable. - -::: +The `{{ ref }}` function returns a `Relation` object that has the same `table`, `schema`, and `name` attributes as the [{{ this }}](/reference/dbt-jinja-functions/this) variable. ## Advanced ref usage From 0932277536a1c3bccece84cbccd909f00c8143dd Mon Sep 17 00:00:00 2001 From: Jennifer Berk Date: Mon, 14 Aug 2023 22:41:06 -0400 Subject: [PATCH 674/703] Fix revenue example indentation and defaults syntax on about-metricflow.md Fixes the "revenue example" semantic model code indentation and defaults syntax on About MetricFlow. Also adds a comment at the start of the second semantic model and makes it follow the same description-model-defaults order as the first semantic model, to make it easier for a new user to understand. --- website/docs/docs/build/about-metricflow.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index 154e40d515d..02031bd0e55 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -147,18 +147,18 @@ semantic_models: type: time type_params: time_granularity: day - - name: customers - defaults: null - agg_time_dimension: first_ordered_at - description: > - Customer dimension table. The grain of the table is one row per - customer. - model: ref('customers') # The name of the dbt model and schema + - name: customers #The name of the second semantic model + description: > + Customer dimension table. The grain of the table is one row per + customer. + model: ref('customers') #The name of the dbt model and schema + defaults: + agg_time_dimension: first_ordered_at entities: #Entities. These usually correspond to keys in the table. - name: customer type: primary expr: customer_id - dimensions: + dimensions: #Dimensions,either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. - name: is_new_customer type: categorical expr: case when first_ordered_at is not null then true else false end From 72ff189eadf0d352b29b37e7662122eebe97b4f6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 08:41:59 -0400 Subject: [PATCH 675/703] Update website/docs/docs/build/about-metricflow.md --- website/docs/docs/build/about-metricflow.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index 02031bd0e55..ede185a5e39 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -158,7 +158,7 @@ semantic_models: - name: customer type: primary expr: customer_id - dimensions: #Dimensions,either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: # Dimensions are either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. - name: is_new_customer type: categorical expr: case when first_ordered_at is not null then true else false end From f5fc3e4e472e06e7c31791043dcb38fc1b854369 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 08:47:13 -0400 Subject: [PATCH 676/703] Update about-metricflow.md fix hashes --- website/docs/docs/build/about-metricflow.md | 32 ++++++++++----------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index ede185a5e39..b1a22b9072c 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -70,7 +70,7 @@ MetricFlow supports different metric types: In the upcoming sections, we'll show how data practitioners currently calculate metrics and compare it to how MetricFlow makes defining metrics easier and more flexible. -The following example data is based off the Jaffle Shop repo. You can view the complete [dbt project](https://github.com/dbt-labs/jaffle-sl-template). The tables we're using in our example model are: +The following example data is based on the Jaffle Shop repo. You can view the complete [dbt project](https://github.com/dbt-labs/jaffle-sl-template). The tables we're using in our example model are: - `orders` is a production data platform export that has been cleaned up and organized for analytical consumption - `customers` is a partially denormalized table in this case with a column derived from the orders table through some upstream process @@ -91,7 +91,7 @@ Next, we'll compare how data practitioners currently calculate metrics with mult -The following example displays how data practitioners typically would calculate the order_total metric aggregated. It's also likely that analysts are asked for more details on a metric, like how much revenue came from new customers. +The following example displays how data practitioners typically would calculate the `order_total` metric aggregated. It's also likely that analysts are asked for more details on a metric, like how much revenue came from new customers. Using the following query creates a situation where multiple analysts working on the same data, each using their own query method — this can lead to confusion, inconsistencies, and a headache for data management. @@ -121,44 +121,44 @@ In the following three example tabs, use MetricFlow to define a semantic model t In this example, a measure named `order_total` is defined based on the order_total column in the `orders` table. -The time dimension `metric_time` provides daily granularity and can be aggregated to weekly or monthly time periods. Additionally, a categorical dimension called `is_new_customer` is specified in the `customers` semantic model. +The time dimension `metric_time` provides daily granularity and can be aggregated into weekly or monthly time periods. Additionally, a categorical dimension called `is_new_customer` is specified in the `customers` semantic model. ```yaml semantic_models: - - name: orders #The name of the semantic model + - name: orders # The name of the semantic model description: | - Model containing order data. The grain of the table is the order id. + A model containing order data. The grain of the table is the order id. model: ref('orders') #The name of the dbt model and schema defaults: agg_time_dimension: metric_time - entities: #Entities. These usually correspond to keys in the table.table. + entities: # Entities, which usually correspond to keys in the table. - name: order_id type: primary - name: customer type: foreign expr: customer_id - measures: #Measures. These are the aggregations on the columns in the table. + measures: # Measures, which are the aggregations on the columns in the table. - name: order_total agg: sum - dimensions: #Dimensions,either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: # Dimensions are either categorical or time. They add additional context to metrics and the typical querying pattern is Metric by Dimension. - name: metric_time expr: cast(ordered_at as date) type: time type_params: time_granularity: day - - name: customers #The name of the second semantic model + - name: customers # The name of the second semantic model description: > Customer dimension table. The grain of the table is one row per customer. model: ref('customers') #The name of the dbt model and schema defaults: agg_time_dimension: first_ordered_at - entities: #Entities. These usually correspond to keys in the table. + entities: # Entities, which usually correspond to keys in the table. - name: customer type: primary expr: customer_id - dimensions: # Dimensions are either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: # Dimensions are either categorical or time. They add additional context to metrics and the typical querying pattern is Metric by Dimension. - name: is_new_customer type: categorical expr: case when first_ordered_at is not null then true else false end @@ -178,20 +178,20 @@ Similarly, you could then add additional dimensions like `is_food_order` to your semantic_models: - name: orders description: | - Model containing order data. The grain of the table is the order id. + A model containing order data. The grain of the table is the order id. model: ref('orders') #The name of the dbt model and schema defaults: agg_time_dimension: metric_time - entities: #Entities. These usually correspond to keys in the table.table. + entities: # Entities, which usually correspond to keys in the table - name: order_id type: primary - name: customer type: foreign expr: customer_id - measures: #Measures. These are the aggregations on the columns in the table. + measures: # Measures, which are the aggregations on the columns in the table. - name: order_total agg: sum - dimensions: #Dimensions,either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: # Dimensions are either categorical or time. They add additional context to metrics and the typical querying pattern is Metric by Dimension. - name: metric_time expr: cast(ordered_at as date) type: time @@ -265,7 +265,7 @@ metrics:
    How does the Semantic Layer handle joins?
    -
    MetricFlow builds joins based on the types of keys and parameters that are passed to entities. To better understand how joins are constructed see our documentations on join types.

    Rather than capturing arbitrary join logic, MetricFlow captures the types of each identifier and then helps the user to navigate to appropriate joins. This allows us to avoid the construction of fan out and chasm joins as well as generate legible SQL.
    +
    MetricFlow builds joins based on the types of keys and parameters that are passed to entities. To better understand how joins are constructed see our documentation on join types.

    Rather than capturing arbitrary join logic, MetricFlow captures the types of each identifier and then helps the user to navigate to appropriate joins. This allows us to avoid the construction of fan out and chasm joins as well as generate legible SQL.
    From 4d2e05add0822fe56a19cafd0bf24563ac6bf511 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 08:49:01 -0400 Subject: [PATCH 677/703] Update website/docs/reference/dbt-jinja-functions/ref.md --- website/docs/reference/dbt-jinja-functions/ref.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/dbt-jinja-functions/ref.md b/website/docs/reference/dbt-jinja-functions/ref.md index 5d8475550b1..b9b14bed42a 100644 --- a/website/docs/reference/dbt-jinja-functions/ref.md +++ b/website/docs/reference/dbt-jinja-functions/ref.md @@ -29,7 +29,7 @@ from {{ref('model_a')}} `ref()` is, under the hood, actually doing two important things. First, it is interpolating the schema into your model file to allow you to change your deployment schema via configuration. Second, it is using these references between models to automatically build the dependency graph. This will enable dbt to deploy models in the correct order when using `dbt run`. -The `{{ ref }}` function returns a `Relation` object that has the same `table`, `schema`, and `name` attributes as the [{{ this }}](/reference/dbt-jinja-functions/this) variable. +The `{{ ref }}` function returns a `Relation` object that has the same `table`, `schema`, and `name` attributes as the [{{ this }} variable](/reference/dbt-jinja-functions/this). ## Advanced ref usage From 4a190d59597a01b1bdbcacbd4902420566bc6901 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 09:27:12 -0400 Subject: [PATCH 678/703] remove callout removing callout as eng fixed the bad ux where users had to delete a job first before deleting an environment. now a user can delete an environment, and any associated jobs will also automatically get deleted. --- .../faqs/Environments/delete-environment-job.md | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/website/docs/faqs/Environments/delete-environment-job.md b/website/docs/faqs/Environments/delete-environment-job.md index b649769f070..ce09490ac00 100644 --- a/website/docs/faqs/Environments/delete-environment-job.md +++ b/website/docs/faqs/Environments/delete-environment-job.md @@ -8,15 +8,6 @@ id: delete-environment-job To delete an environment or job in dbt Cloud, you must have a `developer` [license](/docs/cloud/manage-access/seats-and-users) and have the necessary [access permissions](/docs/cloud/manage-access/about-user-access). -:::info 📌 Delete a job first before deleting environment - -Deleting an environment doesn't automatically delete its associated job(s). If you delete an environment first without deleting the job, you won't be able to delete the job since it's without an environment. - -To completely delete your environment, you _must_: -1. First delete all jobs associated with that environment, -2. Then, delete the environment. -::: - **Delete a job** To delete a job or multiple jobs in dbt Cloud: @@ -33,7 +24,7 @@ To delete a job or multiple jobs in dbt Cloud: 5. Confirm your action in the **Confirm Delete** pop-up by clicking **Confirm Delete** in the bottom right to delete the job immediately. This action cannot be undone. However, you can create a new job with the same information if the deletion was made in error. -Refresh the page, and the deleted job should now be gone. If you want to delete multiple jobs, you'll need to perform these steps for each individual job. +Refresh the page, and the deleted job should now be gone. If you want to delete multiple jobs, you'll need to perform these steps for each job. **Delete an environment** @@ -54,4 +45,4 @@ To delete an environment in dbt Cloud: Refresh your page, and the deleted environment should now be gone. If you want to delete multiple environments, you'll need to perform these steps to delete each one. -If you're having any issues, feel free to [contact us](mailto:support@getdbt.com) for additional help. \ No newline at end of file +If you're having any issues, feel free to [contact us](mailto:support@getdbt.com) for additional help. From fcbb3bc66e0c7d77721981333f14c3f34b2e6fb0 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 09:35:42 -0400 Subject: [PATCH 679/703] Update delete-environment-job.md --- website/docs/faqs/Environments/delete-environment-job.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/faqs/Environments/delete-environment-job.md b/website/docs/faqs/Environments/delete-environment-job.md index ce09490ac00..1f4b8c343a9 100644 --- a/website/docs/faqs/Environments/delete-environment-job.md +++ b/website/docs/faqs/Environments/delete-environment-job.md @@ -8,7 +8,7 @@ id: delete-environment-job To delete an environment or job in dbt Cloud, you must have a `developer` [license](/docs/cloud/manage-access/seats-and-users) and have the necessary [access permissions](/docs/cloud/manage-access/about-user-access). -**Delete a job** +## Delete a job To delete a job or multiple jobs in dbt Cloud: @@ -26,7 +26,7 @@ To delete a job or multiple jobs in dbt Cloud: Refresh the page, and the deleted job should now be gone. If you want to delete multiple jobs, you'll need to perform these steps for each job. -**Delete an environment** +## Delete an environment To delete an environment in dbt Cloud: From b70c0dbc46bb4b1d77bee5e60c8ceb60135fc92b Mon Sep 17 00:00:00 2001 From: Charlie Hahn Date: Tue, 15 Aug 2023 09:29:42 -0400 Subject: [PATCH 680/703] Update custom-schemas.md Update grammar from "overriding" to "override" --- website/docs/docs/build/custom-schemas.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/custom-schemas.md b/website/docs/docs/build/custom-schemas.md index b8dbb9a0846..b5f29ce76a2 100644 --- a/website/docs/docs/build/custom-schemas.md +++ b/website/docs/docs/build/custom-schemas.md @@ -103,7 +103,7 @@ To modify how dbt generates schema names, you should add a macro named `generate If you're modifying how dbt generates schema names, don't just replace ```{{ default_schema }}_{{ custom_schema_name | trim }}``` with ```{{ custom_schema_name | trim }}``` in the ```generate_schema_name``` macro. -Removing ```{{ default_schema }}``` causes developers to overriding each other's models when custom schemas are defined. This can also cause issues during development and continuous integration (CI). +Removing ```{{ default_schema }}``` causes developers to override each other's models when custom schemas are defined. This can also cause issues during development and continuous integration (CI). ❌ The following code block is an example of what your code _should not_ look like: ```sql From 4dded1de6ef92b32df019eacda605ea79b5b0e2c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 09:40:36 -0400 Subject: [PATCH 681/703] Update website/docs/docs/build/custom-schemas.md --- website/docs/docs/build/custom-schemas.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/custom-schemas.md b/website/docs/docs/build/custom-schemas.md index b5f29ce76a2..d8a319f40de 100644 --- a/website/docs/docs/build/custom-schemas.md +++ b/website/docs/docs/build/custom-schemas.md @@ -103,7 +103,7 @@ To modify how dbt generates schema names, you should add a macro named `generate If you're modifying how dbt generates schema names, don't just replace ```{{ default_schema }}_{{ custom_schema_name | trim }}``` with ```{{ custom_schema_name | trim }}``` in the ```generate_schema_name``` macro. -Removing ```{{ default_schema }}``` causes developers to override each other's models when custom schemas are defined. This can also cause issues during development and continuous integration (CI). +If you remove ```{{ default_schema }}```, it causes developers to override each other's models if they create their own custom schemas. This can also cause issues during development and continuous integration (CI). ❌ The following code block is an example of what your code _should not_ look like: ```sql From 34bb5eec8e64ba0e8925858d331458024999d033 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 10:00:36 -0400 Subject: [PATCH 682/703] adding migration guide link this pr adds the migration guide link to the 1.6 migration guide. Closes #3921 --- .../docs/guides/migration/versions/01-upgrading-to-v1.6.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index ea231ce7f9a..d13f3bf2344 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -22,13 +22,13 @@ dbt Labs is committed to providing backward compatibility for all versions 1.x, ### Behavior changes - dbt Core v1.6 does not support Python 3.7, which reached End Of Life on June 23. Support Python versions are 3.8, 3.9, 3.10, and 3.11. -- As part of the Semantic layer re-launch (in beta), the spec for `metrics` has changed significantly. Migration guide coming soon: https://github.com/dbt-labs/docs.getdbt.com/pull/3705 +- As part of the [dbt Semantic layer](/docs/use-dbt-semantic-layer/dbt-sl) re-launch (in beta), the spec for `metrics` has changed significantly. Refer to the [migration guide](/guides/migration/sl-migration) for more info on how to migrate to the re-launched dbt Semantic Layer. - The manifest schema version is now v10. - dbt Labs is ending support for Homebrew installation of dbt-core and adapters. See [the discussion](https://github.com/dbt-labs/dbt-core/discussions/8277) for more details. ### For consumers of dbt artifacts (metadata) -The [manifest](/reference/artifacts/manifest-json) schema version has updated to `v10`. Specific changes: +The [manifest](/reference/artifacts/manifest-json) schema version has been updated to `v10`. Specific changes: - Addition of `semantic_models` and changes to `metrics` attributes - Addition of `deprecation_date` as a model property - Addition of `on_configuration_change` as default node configuration (to support materialized views) From d7f8042618e97799fcc3868d222f81f593f08dee Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 10:23:01 -0400 Subject: [PATCH 683/703] Update redshift-setup.md --- website/docs/docs/core/connect-data-platform/redshift-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index 344e1f51639..175d5f6a715 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -85,7 +85,7 @@ Click on one of these authentication methods for further details on how to confi -The following table contains the parameters for database (password-based) connection method. +The following table contains the parameters for the database (password-based) connection method. | Profile field | Example | Description | From 3d087498a3be2255a7280af2445a42d108183f67 Mon Sep 17 00:00:00 2001 From: Isabela Sobral <35778239+belasobral93@users.noreply.github.com> Date: Tue, 15 Aug 2023 11:43:15 -0500 Subject: [PATCH 684/703] Update deployment-tools.md adjusting docs link to take you to dbt cloud docs for astronome --- website/docs/docs/deploy/deployment-tools.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/deployment-tools.md b/website/docs/docs/deploy/deployment-tools.md index e642e4b95e2..b707d131e6b 100644 --- a/website/docs/docs/deploy/deployment-tools.md +++ b/website/docs/docs/deploy/deployment-tools.md @@ -30,7 +30,7 @@ Invoking dbt Core jobs through the [BashOperator](https://registry.astronomer.io -For more details on both of these methods, including example implementations, check out [this guide](https://www.astronomer.io/guides/airflow-dbt). +For more details on both of these methods, including example implementations, check out [this guide](https://www.astronomer.io/guides/airflow-dbt](https://docs.astronomer.io/learn/airflow-dbt-cloud). ## Azure Data Factory From 768ac19f34e96e4bf4f91c4cfe1df32e2bb51f28 Mon Sep 17 00:00:00 2001 From: Isabela Sobral <35778239+belasobral93@users.noreply.github.com> Date: Tue, 15 Aug 2023 11:45:42 -0500 Subject: [PATCH 685/703] Update deployment-tools.md updating broken link for airflow's dbt cloud provider --- website/docs/docs/deploy/deployment-tools.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/deployment-tools.md b/website/docs/docs/deploy/deployment-tools.md index e642e4b95e2..990474d9c97 100644 --- a/website/docs/docs/deploy/deployment-tools.md +++ b/website/docs/docs/deploy/deployment-tools.md @@ -16,7 +16,7 @@ If your organization is using [Airflow](https://airflow.apache.org/), there are -Installing the [dbt Cloud Provider](https://registry.astronomer.io/providers/dbt-cloud) to orchestrate dbt Cloud jobs. This package contains multiple Hooks, Operators, and Sensors to complete various actions within dbt Cloud. +Installing the [dbt Cloud Provider](https://registry.astronomer.io/providers/dbt-cloud](https://airflow.apache.org/docs/apache-airflow-providers-dbt-cloud/stable/index.html) to orchestrate dbt Cloud jobs. This package contains multiple Hooks, Operators, and Sensors to complete various actions within dbt Cloud. From d3c5cab8a3e84459baec2d424bc4fec4b28d5d1f Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 14:19:02 -0400 Subject: [PATCH 686/703] Update website/docs/docs/deploy/deployment-tools.md --- website/docs/docs/deploy/deployment-tools.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/deployment-tools.md b/website/docs/docs/deploy/deployment-tools.md index b707d131e6b..d171a86a3a2 100644 --- a/website/docs/docs/deploy/deployment-tools.md +++ b/website/docs/docs/deploy/deployment-tools.md @@ -30,7 +30,7 @@ Invoking dbt Core jobs through the [BashOperator](https://registry.astronomer.io -For more details on both of these methods, including example implementations, check out [this guide](https://www.astronomer.io/guides/airflow-dbt](https://docs.astronomer.io/learn/airflow-dbt-cloud). +For more details on both of these methods, including example implementations, check out [this guide](https://docs.astronomer.io/learn/airflow-dbt-cloud). ## Azure Data Factory From fb4ce8cafd287b41e7f2759552c3ab30d2a2126c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 15 Aug 2023 15:14:40 -0400 Subject: [PATCH 687/703] Update website/docs/docs/deploy/deployment-tools.md --- website/docs/docs/deploy/deployment-tools.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/deployment-tools.md b/website/docs/docs/deploy/deployment-tools.md index c41894ce6e9..b9ab14e1c0c 100644 --- a/website/docs/docs/deploy/deployment-tools.md +++ b/website/docs/docs/deploy/deployment-tools.md @@ -16,7 +16,7 @@ If your organization is using [Airflow](https://airflow.apache.org/), there are -Installing the [dbt Cloud Provider](https://registry.astronomer.io/providers/dbt-cloud](https://airflow.apache.org/docs/apache-airflow-providers-dbt-cloud/stable/index.html) to orchestrate dbt Cloud jobs. This package contains multiple Hooks, Operators, and Sensors to complete various actions within dbt Cloud. +Installing the [dbt Cloud Provider](https://airflow.apache.org/docs/apache-airflow-providers-dbt-cloud/stable/index.html) to orchestrate dbt Cloud jobs. This package contains multiple Hooks, Operators, and Sensors to complete various actions within dbt Cloud. From 795d743f5741cc8f84e49e283998d644a9c97e76 Mon Sep 17 00:00:00 2001 From: "Eddo W. Hintoso" Date: Tue, 15 Aug 2023 12:37:10 -0700 Subject: [PATCH 688/703] Discovery API: update docs (#3894) ## What are you changing in this pull request and why? I'm updating the docs of Discovery API because we have breaking changes to the API and we need to update the docs to better reflect the current state of our API, since the docs point to legacy endpoints we plan to deprecate soon. - [x] update use case queries to use bigints and new apis - [x] update other queries to use bigints and new apis - [x] docs parity with legacy vs new endpoints - [x] fix bug where schemas and types weren't retrieved properly - [x] update or remove screenshots (we're keeping it) - [ ] verify that Python code works (no bandwidth -- if it breaks it breaks, not the most urgent for getting docs out) Some common mistakes I found while going through each query and executing it to make sure it's valid. - Fields were `snake_case` when they should be `camelCase` - Typos in filters and fields - Nested nodes were not updated so `... on` syntaxes were invalid - Querying non-nested-allowed fields of a nested node, like `children`, `tests`, etc. ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [x] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." (Below might be a separate PR, but leaving it for now) Adding new pages (delete if not applicable): - [x] Add page to `website/sidebars.js` - [x] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --------- Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Co-authored-by: Ly Nguyen Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- contributing/single-sourcing-content.md | 44 +- .../docs/dbt-cloud-apis/discovery-querying.md | 175 +-- .../discovery-use-cases-and-examples.md | 1206 +++++++++-------- ...nvironment-applied-modelHistoricalRuns.mdx | 50 + .../schema-discovery-environment.mdx | 64 +- .../schema-discovery-exposure.mdx | 19 +- .../schema-discovery-exposures.mdx | 19 +- .../schema-discovery-job-exposure.mdx | 64 + .../schema-discovery-job-exposures.mdx | 65 + .../schema-discovery-job-metric.mdx | 58 + .../schema-discovery-job-metrics.mdx | 60 + .../schema-discovery-job-model.mdx | 91 ++ .../schema-discovery-job-models.mdx | 59 + .../schema-discovery-job-seed.mdx | 42 + .../schema-discovery-job-seeds.mdx | 40 + .../schema-discovery-job-snapshots.mdx | 49 + .../schema-discovery-job-source.mdx | 52 + .../schema-discovery-job-sources.mdx | 65 + .../schema-discovery-job-test.mdx | 43 + .../schema-discovery-job-tests.mdx | 43 + .../dbt-cloud-apis/schema-discovery-job.mdx | 62 + .../schema-discovery-metric.mdx | 17 +- .../schema-discovery-metrics.mdx | 19 +- .../dbt-cloud-apis/schema-discovery-model.mdx | 26 +- .../schema-discovery-modelByEnv.mdx | 22 +- .../schema-discovery-models.mdx | 24 +- .../dbt-cloud-apis/schema-discovery-seed.mdx | 18 +- .../dbt-cloud-apis/schema-discovery-seeds.mdx | 17 +- .../schema-discovery-snapshots.mdx | 20 +- .../schema-discovery-source.mdx | 18 +- .../schema-discovery-sources.mdx | 24 +- .../dbt-cloud-apis/schema-discovery-test.mdx | 17 +- .../dbt-cloud-apis/schema-discovery-tests.mdx | 17 +- website/docs/docs/dbt-cloud-apis/schema.jsx | 238 +++- website/sidebars.js | 48 +- .../_discovery_api_job_deprecation_notice.md | 7 + 36 files changed, 2043 insertions(+), 859 deletions(-) create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-environment-applied-modelHistoricalRuns.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposure.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposures.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-metric.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-metrics.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-model.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-models.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-seed.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-seeds.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-snapshots.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-source.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-sources.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-test.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job-tests.mdx create mode 100644 website/docs/docs/dbt-cloud-apis/schema-discovery-job.mdx create mode 100644 website/snippets/_discovery_api_job_deprecation_notice.md diff --git a/contributing/single-sourcing-content.md b/contributing/single-sourcing-content.md index ca27372e5bc..5b87d494c94 100644 --- a/contributing/single-sourcing-content.md +++ b/contributing/single-sourcing-content.md @@ -15,9 +15,9 @@ Versions are managed in the `versions` array located in the `website/dbt-version ### Adding a new version -To add a new version to the site, a new object must be added to the `versions` array in the same format as existing versions. This object holds two properties: **version** and **EOLDate (See End of Life Dates below)**. +To add a new version to the site, a new object must be added to the `versions` array in the same format as existing versions. This object holds two properties: **version** and **EOLDate (See End of Life Dates below)**. -Example Version: +Example Version: ```jsx exports.versions = [ @@ -36,7 +36,7 @@ The **EOLDate** property determines when a version is no longer supported. A ver When a documentation page is viewed, the **EOLDate** property for the active version is compared to today’s date. If the current version has reached or is nearing the end of support, a banner will show atop the page, notifying the visitor of the end-of-life status. -Two different versions of the banner will show depending on the end-of-life date: +Two different versions of the banner will show depending on the end-of-life date: - When the version is within 3 months of the **EOLDate.** - When the version has passed the **EOLDate.** @@ -76,7 +76,7 @@ exports.versionedPages = [ ## Versioning blocks of content -The **VersionBlock** component provides the ability to version a specific piece of content on a docs page. +The **VersionBlock** component provides the ability to version a specific piece of content on a docs page. This component can be added directly to a markdown file in a similar way as other components (FAQ, File, Lightbox). @@ -99,7 +99,7 @@ Both properties can be used together to set a range where the content should sho ### Example for versioning entire pages -On the [Docs Defer page](https://docs.getdbt.com/reference/node-selection/defer), tabs are used to show different versions of a piece of code. **v0.21.0 and later** shows `--select`, while **v-.20.x and earlier** changes this to `--models`. +On the [Docs Defer page](https://docs.getdbt.com/reference/node-selection/defer), tabs are used to show different versions of a piece of code. **v0.21.0 and later** shows `--select`, while **v-.20.x and earlier** changes this to `--models`. ![oldway](https://user-images.githubusercontent.com/3880403/163254165-dea23266-2eea-4e65-b3f0-c7b6d3e51fc3.png) @@ -149,7 +149,7 @@ Using a global variable requires two steps: exports.dbtVariables = { dbtCore: { name: "dbt Core" - } + } } ``` @@ -198,13 +198,13 @@ In the above example, the **dbtCloud** property has a default name of “dbt Clo ### Global variables example -The global `` component can be used inline, for example: +The global `` component can be used inline, for example: ```markdown This piece of markdown content explains why is awesome. ``` -However, a Var component cannot start a new line of content. Fortunately, a workaround exists to use the Var component at the beginning of a line of content. +However, a Var component cannot start a new line of content. Fortunately, a workaround exists to use the Var component at the beginning of a line of content. To use the component at the beginning of a sentence, add a non-breaking space character before the component: @@ -231,7 +231,7 @@ A partial file allows you to reuse content throughout the docs. Here are the ste 2. Go back to the docs file that will pull content from the partial file. 3. Add the following import file: `import ComponentName from '/snippets/_this-is-your-partial-file-name.md';` * You must always add an import file in that format. Note you can name `ComponentName` (a partial component) can be whatever makes sense for your purpose. - * `.md` needs to be added to the end of the filename. + * `.md` needs to be added to the end of the filename. 4. To use the partial component, go to the next line and add ``. This fetches the reusable content in the partial file * Note `anyname` can be whatever makes sense for your purpose. @@ -258,15 +258,15 @@ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam fermentum portti ```markdown Docs content here. -`import SetUpPages from '/snippets/_partial-name.md';` - - +import SetUpPages from '/snippets/_partial-name.md'; + + Docs content here. ``` - `import SetUpPages from '/snippets/_partial-name.md';` — A partial file that will be imported by other files -- `` — A component that imports content from the partial file. You can also use it to pass in data into the partial using props (See 'How to use props to pass different content on multiple pages?' below). +- `` — A component that imports content from the partial file. You can also use it to pass in data into the partial using props (See 'How to use props to pass different content on multiple pages?' below). 4. This will then render the content of the docs in the partial file. @@ -276,32 +276,32 @@ Docs content here.
    How to use props to pass different content on multiple pages?
    - + You can add props on the component only if you want to pass in data from the component into the partial file. This is useful for using the same partial component on multiple docs pages and displaying different values for each. For example, if we wanted to use a partial on multiple pages and pass in a different 'feature' for each docs page, you can write it as: -``` +```markdown import SetUpPages from '/snippets/_available-enterprise-only.md'; - -` + + ``` - + Then in the `/snippets/_available-enterprise-only.md file`, you can display that feature prop with: - + >This feature: `{props.feature}` other content etc... This will then translate to: - + >This feature: A really cool feature other content etc... In this example, the component ` ### Snippets -The Snippet component allows for content to be reusable throughout the Docs. This is very similar to the existing FAQ component. Using partial files, which is a built-in Docusaurus feature, is recommended over snippets. +The Snippet component allows for content to be reusable throughout the Docs. This is very similar to the existing FAQ component. Using partial files, which is a built-in Docusaurus feature, is recommended over snippets. Creating and using a snippet requires two steps: diff --git a/website/docs/docs/dbt-cloud-apis/discovery-querying.md b/website/docs/docs/dbt-cloud-apis/discovery-querying.md index 40836203faa..eaa30c36dfb 100644 --- a/website/docs/docs/dbt-cloud-apis/discovery-querying.md +++ b/website/docs/docs/dbt-cloud-apis/discovery-querying.md @@ -1,14 +1,14 @@ --- title: "Query the Discovery API" id: "discovery-querying" -sidebar_label: "Query the Discovery API" +sidebar_label: "Query the Discovery API" --- -The Discovery API supports ad-hoc queries and integrations.. If you are new to the API, read the [Discovery API overview](/docs/dbt-cloud-apis/discovery-api) for an introduction. +The Discovery API supports ad-hoc queries and integrations. If you are new to the API, refer to [About the Discovery API](/docs/dbt-cloud-apis/discovery-api) for an introduction. -Use the Discovery API to evaluate data pipeline health and project state across runs or at a moment in time. dbt Labs provide a [GraphQL explorer](https://metadata.cloud.getdbt.com/graphql) for this API, enabling you to run queries and browse the schema. +Use the Discovery API to evaluate data pipeline health and project state across runs or at a moment in time. dbt Labs provide a [GraphQL explorer](https://metadata.cloud.getdbt.com/graphql) for this API, enabling you to run queries and browse the schema. -Since GraphQL describes the data in the API, the schema displayed in the GraphQL explorer accurately represents the graph and fields available to query. +Since GraphQL describes the data in the API, the schema displayed in the GraphQL explorer accurately represents the graph and fields available to query. @@ -16,17 +16,17 @@ Since GraphQL describes the data in the API, the schema displayed in the GraphQL Currently, authorization of requests takes place [using a service token](/docs/dbt-cloud-apis/service-tokens). dbt Cloud admin users can generate a Metadata Only service token that is authorized to execute a specific query against the Discovery API. -Once you've created a token, you can use it in the Authorization header of requests to the dbt Cloud Discovery API. Be sure to include the Token prefix in the Authorization header, or the request will fail with a `401 Unauthorized` error. Note that `Bearer` can be used instead of `Token` in the Authorization header. Both syntaxes are equivalent. +Once you've created a token, you can use it in the Authorization header of requests to the dbt Cloud Discovery API. Be sure to include the Token prefix in the Authorization header, or the request will fail with a `401 Unauthorized` error. Note that `Bearer` can be used instead of `Token` in the Authorization header. Both syntaxes are equivalent. -## Access the Discovery API +## Access the Discovery API 1. Create a [service account token](/docs/dbt-cloud-apis/service-tokens) to authorize requests. dbt Cloud Admin users can generate a _Metadata Only_ service token, which can be used to execute a specific query against the Discovery API to authorize requests. -2. Find your API URL using the endpoint `https://metadata.{YOUR_ACCESS_URL}/graphql`. +2. Find your API URL using the endpoint `https://metadata.{YOUR_ACCESS_URL}/graphql`. * Replace `{YOUR_ACCESS_URL}` with the appropriate [Access URL](/docs/cloud/about-cloud/regions-ip-addresses) for your region and plan. For example, if your multi-tenant region is North America, your endpoint is `https://metadata.cloud.getdbt.com/graphql`. If your multi-tenant region is EMEA, your endpoint is `https://metadata.emea.dbt.com/graphql`. -3. For specific query points, refer to the [schema documentation](/docs/dbt-cloud-apis/discovery-schema-model). +3. For specific query points, refer to the [schema documentation](/docs/dbt-cloud-apis/discovery-schema-model). ## Run queries using HTTP requests @@ -36,7 +36,7 @@ You can run queries by sending a `POST` request to the `https://metadata.YOUR_AC * `YOUR_TOKEN` in the Authorization header with your actual API token. Be sure to include the Token prefix. * `QUERY_BODY` with a GraphQL query, for example `{ "query": "" }` * `VARIABLES` with a dictionary of your GraphQL query variables, such as a job ID or a filter. -* `ENDPOINT` with the endpoint you're querying, such as environment. +* `ENDPOINT` with the endpoint you're querying, such as environment. ```shell curl 'https://metadata.YOUR_ACCESS_URL/graphql' \ @@ -48,10 +48,13 @@ You can run queries by sending a `POST` request to the `https://metadata.YOUR_AC Python example: -```py -response = requests.post('YOUR_ACCESS_URL', -headers={"authorization": "Bearer "+YOUR_TOKEN, "content-type": "application/json"}, -json={"query": QUERY_BODY, "variables": VARIABLES}) +```python +response = requests.post( + 'YOUR_ACCESS_URL', + headers={"authorization": "Bearer "+YOUR_TOKEN, "content-type": "application/json"}, + json={"query": QUERY_BODY, "variables": VARIABLES} +) + metadata = response.json()['data'][ENDPOINT] ``` @@ -71,66 +74,74 @@ You can use the Discovery API to query data from the previous three months. For ## Run queries with the GraphQL explorer -You can run ad-hoc queries directly in the [GraphQL API explorer](https://metadata.cloud.getdbt.com/graphql) and use the document explorer on the left-hand side, where you can see all possible nodes and fields. +You can run ad-hoc queries directly in the [GraphQL API explorer](https://metadata.cloud.getdbt.com/graphql) and use the document explorer on the left-hand side to see all possible nodes and fields. + +Refer to the [Apollo explorer documentation](https://www.apollographql.com/docs/graphos/explorer/explorer) for setup and authorization info. + +1. Access the [GraphQL API explorer](https://metadata.cloud.getdbt.com/graphql) and select fields you want to query. -Refer to the [Apollo explorer documentation](https://www.apollographql.com/docs/graphos/explorer/explorer) for setup and authorization info. +2. Select **Variables** at the bottom of the explorer and replace any `null` fields with your unique values. -1. Access the [GraphQL API explorer](https://metadata.cloud.getdbt.com/graphql) and select fields you'd like query. +3. [Authenticate](https://www.apollographql.com/docs/graphos/explorer/connecting-authenticating#authentication) using Bearer auth with `YOUR_TOKEN`. Select **Headers** at the bottom of the explorer and select **+New header**. -2. Go to **Variables** at the bottom of the explorer and replace any `null` fields with your unique values. +4. Select **Authorization** in the **header key** dropdown list and enter your Bearer auth token in the **value** field. Remember to include the Token prefix. Your header key should be in this format: `{"Authorization": "Bearer }`. -3. [Authenticate](https://www.apollographql.com/docs/graphos/explorer/connecting-authenticating#authentication) via Bearer auth with `YOUR_TOKEN`. Go to **Headers** at the bottom of the explorer and select **+New header**. + + -4. Select **Authorization** in the **header key** drop-down list and enter your Bearer auth token in the **value** field. Remember to include the Token prefix. Your header key should look like this `{"Authorization": "Bearer }`.
    -5. Run your query by pressing the blue query button in the top-right of the Operation editor (to the right of the query). You should see a successful query response on the right side of the explorer. +1. Run your query by clicking the blue query button in the top right of the **Operation** editor (to the right of the query). You should see a successful query response on the right side of the explorer. + + + ### Fragments -Use the [`..on`](https://www.apollographql.com/docs/react/data/fragments/) notation to query across lineage and retrieve results from specific node types. +Use the [`... on`](https://www.apollographql.com/docs/react/data/fragments/) notation to query across lineage and retrieve results from specific node types. ```graphql - -environment(id: $environmentId) { - applied { - models(first: $first,filter:{uniqueIds:"MODEL.PROJECT.MODEL_NAME"}) { - edges { - node { - name - ancestors(types:[Model, Source, Seed, Snapshot]) { - ... on ModelAppliedStateNode { - name - resourceType - materializedType - executionInfo { - executeCompletedAt +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models(first: $first, filter: { uniqueIds: "MODEL.PROJECT.MODEL_NAME" }) { + edges { + node { + name + ancestors(types: [Model, Source, Seed, Snapshot]) { + ... on ModelAppliedStateNestedNode { + name + resourceType + materializedType + executionInfo { + executeCompletedAt + } } - } - ... on SourceAppliedStateNode { - sourceName - name - resourceType - freshness { - maxLoadedAt + ... on SourceAppliedStateNestedNode { + sourceName + name + resourceType + freshness { + maxLoadedAt + } } - } - ... on SnapshotAppliedStateNode { - name - resourceType - executionInfo { - executeCompletedAt + ... on SnapshotAppliedStateNestedNode { + name + resourceType + executionInfo { + executeCompletedAt + } } - } - ... on SeedAppliedStateNode { - name - resourceType - executionInfo { - executeCompletedAt + ... on SeedAppliedStateNestedNode { + name + resourceType + executionInfo { + executeCompletedAt + } } } } @@ -139,56 +150,59 @@ environment(id: $environmentId) { } } } - ``` ### Pagination -Querying large datasets can impact performance on multiple functions in the API pipeline. Pagination eases the burden by returning smaller data sets one page at a time. This is useful for returning a particular portion of the dataset or the entire dataset piece-by-piece to enhance performance. dbt Cloud utilizes cursor-based pagination, which makes it easy to return pages of constantly changing data. +Querying large datasets can impact performance on multiple functions in the API pipeline. Pagination eases the burden by returning smaller data sets one page at a time. This is useful for returning a particular portion of the dataset or the entire dataset piece-by-piece to enhance performance. dbt Cloud utilizes cursor-based pagination, which makes it easy to return pages of constantly changing data. -Use the `PageInfo` object to return information about the page. The following fields are available: +Use the `PageInfo` object to return information about the page. The available fields are: -- `startCursor` string type - corresponds to the first `node` in the `edge`. -- `endCursor` string type - corresponds to the last `node` in the `edge`. -- `hasNextPage` boolean type - whether there are more `nodes` after the returned results. -- `hasPreviousPage` boolean type - whether `nodes` exist before the returned results. +- `startCursor` string type — Corresponds to the first `node` in the `edge`. +- `endCursor` string type — Corresponds to the last `node` in the `edge`. +- `hasNextPage` boolean type — Whether or not there are more `nodes` after the returned results. There are connection variables available when making the query: -- `first` integer type - will return the first 'n' `nodes` for each page, up to 500. -- `after` string type sets the cursor to retrieve `nodes` after. It's best practice to set the `after` variable with the object ID defined in the `endcursor` of the previous page. +- `first` integer type — Returns the first n `nodes` for each page, up to 500. +- `after` string type — Sets the cursor to retrieve `nodes` after. It's best practice to set the `after` variable with the object ID defined in the `endCursor` of the previous page. + +Below is an example that returns the `first` 500 models `after` the specified Object ID in the variables. The `PageInfo` object returns where the object ID where the cursor starts, where it ends, and whether there is a next page. -The following example shows that we're returning the `first` 500 models `after` the specified Object ID in the variables. The `PageInfo` object will return where the object ID where the cursor starts, where it ends, and whether there is a next page. + + -Here is a code example of the `PageInfo` object: +Below is a code example of the `PageInfo` object: ```graphql pageInfo { - startCursor - endCursor - hasNextPage - } - totalCount # Total number of pages - + startCursor + endCursor + hasNextPage +} +totalCount # Total number of records across all pages ``` ### Filters -Filtering helps to narrow down the results of an API query. Want to query and return only models and tests that are failing? Or find models that are taking too long to run? You can fetch execution details such as [`executionTime`](/docs/dbt-cloud-apis/discovery-schema-models#fields), [`runElapsedTime`](/docs/dbt-cloud-apis/discovery-schema-models#fields), or [`status`](/docs/dbt-cloud-apis/discovery-schema-models#fields). This helps data teams monitor the performance of their models, identify bottlenecks, and optimize the overall data pipeline. +Filtering helps to narrow down the results of an API query. If you want to query and return only models and tests that are failing or find models that are taking too long to run, you can fetch execution details such as [`executionTime`](/docs/dbt-cloud-apis/discovery-schema-models#fields), [`runElapsedTime`](/docs/dbt-cloud-apis/discovery-schema-models#fields), or [`status`](/docs/dbt-cloud-apis/discovery-schema-models#fields). This helps data teams monitor the performance of their models, identify bottlenecks, and optimize the overall data pipeline. -In the following example, we can see that we're filtering results to models that have succeeded on their `lastRunStatus`: +Below is an example that filters for results of models that have succeeded on their `lastRunStatus`: -Here is a code example that filters for models that have an error on their last run and tests that have failed: +Below is an example that filters for models that have an error on their last run and tests that have failed: -```graphql + + -environment(id: $environmentId) { +```graphql +query ModelsAndTests($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { applied { - models(first: $first, filter: {lastRunStatus:error}) { + models(first: $first, filter: { lastRunStatus: error }) { edges { node { name @@ -198,7 +212,7 @@ environment(id: $environmentId) { } } } - tests(first: $first, filter: {status:"fail"}) { + tests(first: $first, filter: { status: "fail" }) { edges { node { name @@ -207,9 +221,10 @@ environment(id: $environmentId) { } } } - } + } + } + } } - ``` ## Related content diff --git a/website/docs/docs/dbt-cloud-apis/discovery-use-cases-and-examples.md b/website/docs/docs/dbt-cloud-apis/discovery-use-cases-and-examples.md index 030688d9aeb..8efb1ec0d37 100644 --- a/website/docs/docs/dbt-cloud-apis/discovery-use-cases-and-examples.md +++ b/website/docs/docs/dbt-cloud-apis/discovery-use-cases-and-examples.md @@ -3,9 +3,9 @@ title: "Use cases and examples for the Discovery API" sidebar_label: "Uses and examples" --- -With the Discovery API, you can query the metadata in dbt Cloud to learn more about your dbt deployments and the data it generates to analyze them and make improvements. +With the Discovery API, you can query the metadata in dbt Cloud to learn more about your dbt deployments and the data it generates to analyze them and make improvements. -You can use the API in a variety of ways to get answers to your business questions. Below describes some of the uses of the API and is meant to give you an idea of the questions this API can help you answer. +You can use the API in a variety of ways to get answers to your business questions. Below describes some of the uses of the API and is meant to give you an idea of the questions this API can help you answer. | Use Case | Outcome | Example Questions | | --- | --- | --- | @@ -17,13 +17,13 @@ You can use the API in a variety of ways to get answers to your business questio ## Performance -You can use the Discovery API to identify inefficiencies in pipeline execution to reduce infrastructure costs and improve timeliness. Below are example questions and queries you can run. +You can use the Discovery API to identify inefficiencies in pipeline execution to reduce infrastructure costs and improve timeliness. Below are example questions and queries you can run. For performance use cases, people typically query the historical or latest applied state across any part of the DAG (for example, models) using the `environment`, `modelByEnvironment`, or job-level endpoints. ### How long did each model take to run? -It’s helpful to understand how long it takes to build models (tables) and tests to execute during a dbt run. Longer model build times result in higher infrastructure costs and fresh data arriving later to stakeholders. Analyses like these can be in observability tools or ad-hoc queries, like in a notebook. +It’s helpful to understand how long it takes to build models (tables) and tests to execute during a dbt run. Longer model build times result in higher infrastructure costs and fresh data arriving later to stakeholders. Analyses like these can be in observability tools or ad-hoc queries, like in a notebook. @@ -35,33 +35,42 @@ Data teams can monitor the performance of their models, identify bottlenecks, an 1. Use latest state environment-level API to get a list of all executed models and their execution time. Then, sort the models by `executionTime` in descending order. ```graphql -query Query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - models(first: $first) { - edges { - node { - name - uniqueId - materializedType - executionInfo { - lastSuccessRunId - executionTime - executeStartedAt - } - } - } +query AppliedModels($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models(first: $first) { + edges { + node { + name + uniqueId + materializedType + executionInfo { + lastSuccessRunId + executionTime + executeStartedAt } + } } + } } + } } ``` -2. Get the most recent 20 run results for the longest running model. Review the results of the model across runs, or you can go to the job/run or commit itself to investigate further. +2. Get the most recent 20 run results for the longest running model. Review the results of the model across runs or you can go to the job/run or commit itself to investigate further. ```graphql -query($environmentId: Int!, $uniqueId: String!, $lastRunCount: Int!) { - modelByEnvironment(environmentId: $environmentId, uniqueId: $uniqueId, lastRunCount: $lastRunCount) { +query ModelHistoricalRuns( + $environmentId: BigInt! + $uniqueId: String + $lastRunCount: Int +) { + environment(id: $environmentId) { + applied { + modelHistoricalRuns( + uniqueId: $uniqueId + lastRunCount: $lastRunCount + ) { name runId runElapsedTime @@ -70,12 +79,15 @@ query($environmentId: Int!, $uniqueId: String!, $lastRunCount: Int!) { executeStartedAt executeCompletedAt status + } } + } } ``` 3. Use the query results to plot a graph of the longest running model’s historical run time and execution time trends. + ```python # Import libraries import os @@ -88,11 +100,11 @@ auth_token = *[SERVICE_TOKEN_HERE]* # Query the API def query_discovery_api(auth_token, gql_query, variables): - response = requests.post('https://metadata.cloud.getdbt.com/graphql', + response = requests.post('https://metadata.cloud.getdbt.com/graphql', headers={"authorization": "Bearer "+auth_token, "content-type": "application/json"}, json={"query": gql_query, "variables": variables}) data = response.json()['data'] - + return data # Get the latest run metadata for all models @@ -120,7 +132,7 @@ variables_query_two = { } # Get the historical run metadata for the longest running model -model_historical_metadata = query_discovery_api(auth_token, query_two, variables_query_two)['modelByEnvironment'] +model_historical_metadata = query_discovery_api(auth_token, query_two, variables_query_two)['environment']['applied']['modelHistoricalRuns'] # Convert to dataframe model_df = pd.DataFrame(model_historical_metadata) @@ -143,7 +155,8 @@ plt.plot(model_df['executeStartedAt'], model_df['executionTime']) plt.title(model_df['name'].iloc[0]+" Execution Time") plt.show() ``` -Plotting examples: + +Plotting examples: @@ -152,70 +165,91 @@ Plotting examples:
    -### What’s the latest state of each model? +### What’s the latest state of each model? The Discovery API provides information about the applied state of models and how they arrived in that state. You can retrieve the status information from the most recent run and most recent successful run (execution) from the `environment` endpoint and dive into historical runs using job-based and `modelByEnvironment` endpoints.
    Example query -The API returns full identifier information (`database.schema.alias`) and the `executionInfo` for both the most recent run and most recent successful run from the database: - - - ```graphql - query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - models(first: $first) { - edges { - node { - uniqueId - compiledCode - database - schema - alias - materializedType - executionInfo { - executeCompletedAt - lastJobDefinitionId - lastRunGeneratedAt - lastRunId - lastRunStatus - lastRunError - lastSuccessJobDefinitionId - runGeneratedAt - lastSuccessRunId - } - } - } - } - } - } - } - ``` +The API returns full identifier information (`database.schema.alias`) and the `executionInfo` for both the most recent run and most recent successful run from the database: + +```graphql +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models(first: $first) { + edges { + node { + uniqueId + compiledCode + database + schema + alias + materializedType + executionInfo { + executeCompletedAt + lastJobDefinitionId + lastRunGeneratedAt + lastRunId + lastRunStatus + lastRunError + lastSuccessJobDefinitionId + runGeneratedAt + lastSuccessRunId + } + } + } + } + } + } +} +```
    ### What happened with my job run? -You can query the metadata at the job level to review results for specific runs. This is helpful for historical analysis of deployment performance or optimizing particular jobs. +You can query the metadata at the job level to review results for specific runs. This is helpful for historical analysis of deployment performance or optimizing particular jobs. + +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + +
    Example query +Deprecated example: ```graphql -query($jobId: Int!, $runId: Int!){ - models(jobId: $jobId, runId: $runId) { - name - status - tests { - name - status - } - } +query ($jobId: Int!, $runId: Int!) { + models(jobId: $jobId, runId: $runId) { + name + status + tests { + name + status + } + } +} +``` + +New example: + +```graphql +query ($jobId: BigInt!, $runId: BigInt!) { + job(id: $jobId, runId: $runId) { + models { + name + status + tests { + name + status + } + } + } } ``` - +
    ### What’s changed since the last run? @@ -228,41 +262,47 @@ With the API, you can compare the `rawCode` between the definition and applied s ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - models(first: $first, filter: {uniqueIds:"MODEL.PROJECT.MODEL_NAME"}) { - edges { - node { - rawCode - ancestors(types: [Source]){ - ...on SourceAppliedStateNode { - freshness { - maxLoadedAt - } - } - } - executionInfo { - runGeneratedAt - executeCompletedAt - } - materializedType - } - } - } - } - definition { - models(first: $first, filter: {uniqueIds:"MODEL.PROJECT.MODEL_NAME"}) { - edges { - node { - rawCode - runGeneratedAt - materializedType - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models( + first: $first + filter: { uniqueIds: "MODEL.PROJECT.MODEL_NAME" } + ) { + edges { + node { + rawCode + ancestors(types: [Source]) { + ... on SourceAppliedStateNestedNode { + freshness { + maxLoadedAt + } + } + } + executionInfo { + runGeneratedAt + executeCompletedAt + } + materializedType + } + } + } + } + definition { + models( + first: $first + filter: { uniqueIds: "MODEL.PROJECT.MODEL_NAME" } + ) { + edges { + node { + rawCode + runGeneratedAt + materializedType + } + } + } + } + } } ``` @@ -270,45 +310,46 @@ query($environmentId: Int!, $first: Int!){ ## Quality -You can use the Discovery API to monitor data source freshness and test results to diagnose and resolve issues and drive trust in data. When used with [webhooks](/docs/deploy/webhooks), can also help with detecting, investigating, and alerting issues. Below lists example questions the API can help you answer. Below are example questions and queries you can run. +You can use the Discovery API to monitor data source freshness and test results to diagnose and resolve issues and drive trust in data. When used with [webhooks](/docs/deploy/webhooks), can also help with detecting, investigating, and alerting issues. Below lists example questions the API can help you answer. Below are example questions and queries you can run. -For quality use cases, people typically query the historical or latest applied state, often in the upstream part of the DAG (for example, sources), using the `environment` or `modelByEnvironment` endpoints. +For quality use cases, people typically query the historical or latest applied state, often in the upstream part of the DAG (for example, sources), using the `environment` or `environment { applied { modelHistoricalRuns } }` endpoints. ### Which models and tests failed to run? + By filtering on the latest status, you can get lists of models that failed to build and tests that failed during their most recent execution. This is helpful when diagnosing issues with the deployment that result in delayed or incorrect data.
    Example query with code -1. Get the latest run results across all jobs in the environment and return only the models and tests that errored/failed. +1. Get the latest run results across all jobs in the environment and return only the models and tests that errored/failed. ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - models(first: $first, filter: {lastRunStatus:error}) { - edges { - node { - name - executionInfo { - lastRunId - } - } - } - } - tests(first: $first, filter: {status:"fail"}) { - edges { - node { - name - executionInfo { - lastRunId - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models(first: $first, filter: { lastRunStatus: error }) { + edges { + node { + name + executionInfo { + lastRunId + } + } + } + } + tests(first: $first, filter: { status: "fail" }) { + edges { + node { + name + executionInfo { + lastRunId + } + } + } + } + } + } } ``` @@ -316,14 +357,18 @@ query($environmentId: Int!, $first: Int!){ ```graphql -query($environmentId: Int!, $uniqueId: String!, $lastRunCount: Int) { - modelByEnvironment(environmentId: $environmentId, uniqueId: $uniqueId, lastRunCount: $lastRunCount) { - name - executeStartedAt - status - tests { - name - status +query ($environmentId: BigInt!, $uniqueId: String!, $lastRunCount: Int) { + environment(id: $environmentId) { + applied { + modelHistoricalRuns(uniqueId: $uniqueId, lastRunCount: $lastRunCount) { + name + executeStartedAt + status + tests { + name + status + } + } } } } @@ -337,63 +382,67 @@ query($environmentId: Int!, $uniqueId: String!, $lastRunCount: Int) { ### When was the data my model uses last refreshed? -You can get the metadata on the latest execution for a particular model or across all models in your project. For instance, investigate when each model or snapshot that's feeding into a given model was last executed or the source or seed was last loaded to gauge the _freshness_ of the data. +You can get the metadata on the latest execution for a particular model or across all models in your project. For instance, investigate when each model or snapshot that's feeding into a given model was last executed or the source or seed was last loaded to gauge the _freshness_ of the data.
    Example query with code ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - models(first: $first,filter:{uniqueIds:"MODEL.PROJECT.MODEL_NAME"}) { - edges { - node { - name - ancestors(types:[Model, Source, Seed, Snapshot]) { - ... on ModelAppliedStateNode { - name - resourceType - materializedType - executionInfo { - executeCompletedAt - } - } - ... on SourceAppliedStateNode { - sourceName - name - resourceType - freshness { - maxLoadedAt - } - } - ... on SnapshotAppliedStateNode { - name - resourceType - executionInfo { - executeCompletedAt - } - } - ... on SeedAppliedStateNode { - name - resourceType - executionInfo { - executeCompletedAt - } - } - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models( + first: $first + filter: { uniqueIds: "MODEL.PROJECT.MODEL_NAME" } + ) { + edges { + node { + name + ancestors(types: [Model, Source, Seed, Snapshot]) { + ... on ModelAppliedStateNestedNode { + name + resourceType + materializedType + executionInfo { + executeCompletedAt + } + } + ... on SourceAppliedStateNestedNode { + sourceName + name + resourceType + freshness { + maxLoadedAt + } + } + ... on SnapshotAppliedStateNestedNode { + name + resourceType + executionInfo { + executeCompletedAt + } + } + ... on SeedAppliedStateNestedNode { + name + resourceType + executionInfo { + executeCompletedAt + } + } + } + } + } + } + } + } } ``` + ```python # Extract graph nodes from response -def extract_nodes(data): +def extract_nodes(data): models = [] sources = [] groups = [] @@ -422,9 +471,9 @@ def create_freshness_graph(models_df, sources_df): if model["executionInfo"]["executeCompletedAt"] is not None: model_freshness = current_time - pd.Timestamp(model["executionInfo"]["executeCompletedAt"]) for ancestor in model["ancestors"]: - if ancestor["resourceType"] == "SourceAppliedStateNode": + if ancestor["resourceType"] == "SourceAppliedStateNestedNode": ancestor_freshness = current_time - pd.Timestamp(ancestor["freshness"]['maxLoadedAt']) - elif ancestor["resourceType"] == "ModelAppliedStateNode": + elif ancestor["resourceType"] == "ModelAppliedStateNestedNode": ancestor_freshness = current_time - pd.Timestamp(ancestor["executionInfo"]["executeCompletedAt"]) if ancestor_freshness > max_freshness: @@ -437,11 +486,11 @@ def create_freshness_graph(models_df, sources_df): for _, model in models_df.iterrows(): for parent in model["parents"]: G.add_edge(parent["uniqueId"], model["uniqueId"]) - + return G ``` -Graph example: +Graph example: @@ -450,7 +499,7 @@ Graph example: ### Are my data sources fresh? -Checking [source freshness](/docs/build/sources#snapshotting-source-data-freshness) allows you to ensure that sources loaded and used in your dbt project are compliant with expectations. The API provides the latest metadata about source loading and information about the freshness check criteria. +Checking [source freshness](/docs/build/sources#snapshotting-source-data-freshness) allows you to ensure that sources loaded and used in your dbt project are compliant with expectations. The API provides the latest metadata about source loading and information about the freshness check criteria. @@ -458,47 +507,49 @@ Checking [source freshness](/docs/build/sources#snapshotting-source-data-freshne Example query ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - sources(first: $first, filters:{freshnessChecked:true, database:"production"}) { - edges { - node { - sourceName - name - identifier - loader - freshness { - freshnessJobDefinitionId - freshnessRunId - freshnessRunGeneratedAt - freshnessStatus - freshnessChecked - maxLoadedAt - maxLoadedAtTimeAgoInS - snapshottedAt - criteria { - errorAfter { - count - period - } - warnAfter { - count - period - } - } - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + sources( + first: $first + filter: { freshnessChecked: true, database: "production" } + ) { + edges { + node { + sourceName + name + identifier + loader + freshness { + freshnessJobDefinitionId + freshnessRunId + freshnessRunGeneratedAt + freshnessStatus + freshnessChecked + maxLoadedAt + maxLoadedAtTimeAgoInS + snapshottedAt + criteria { + errorAfter { + count + period + } + warnAfter { + count + period + } + } + } + } + } + } + } + } } ```
    - ### What’s the test coverage and status? [Tests](https://docs.getdbt.com/docs/build/tests) are an important way to ensure that your stakeholders are reviewing high-quality data. You can execute tests during a dbt Cloud run. The Discovery API provides complete test results for a given environment or job, which it represents as the `children` of a given node that’s been tested (for example, a `model`). @@ -506,32 +557,32 @@ query($environmentId: Int!, $first: Int!){
    Example query -For the following example, the `parents` are the nodes (code) that's being tested and `executionInfo` describes the latest test results: +For the following example, the `parents` are the nodes (code) that's being tested and `executionInfo` describes the latest test results: ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - tests(first: $first) { - edges { - node { - name - columnName - parents { - name - resourceType - } - executionInfo { - lastRunStatus - lastRunError - executeCompletedAt - executionTime - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + tests(first: $first) { + edges { + node { + name + columnName + parents { + name + resourceType + } + executionInfo { + lastRunStatus + lastRunError + executeCompletedAt + executionTime + } + } + } + } + } + } } ``` @@ -541,44 +592,41 @@ query($environmentId: Int!, $first: Int!){ ### How is this model contracted and versioned? -To enforce the shape of a model's definition, you can define contracts on models and their columns. You can also specify model versions to keep track of discrete stages in its evolution and use the appropriate one. +To enforce the shape of a model's definition, you can define contracts on models and their columns. You can also specify model versions to keep track of discrete stages in its evolution and use the appropriate one. + +
    Example query ```graphql -query{ - environment(id:123) { - definition { - models(first:100, filter:{access:public}) { - edges { - nodes { - name - latest_version - contract_enforced - constraints{ - name - type - expression - columns - } - catalog { - columns { - name - type - constraints { - name - type - expression - } - } - } - } - } - } - } - } +query { + environment(id: 123) { + applied { + models(first: 100, filter: { access: public }) { + edges { + node { + name + latestVersion + contractEnforced + constraints { + name + type + expression + columns + } + catalog { + columns { + name + type + } + } + } + } + } + } + } } ``` @@ -594,42 +642,50 @@ For discovery use cases, people typically query the latest applied or definition ### What does this dataset and its columns mean? -Query the Discovery API to map a table/view in the data platform to the model in the dbt project; then, retrieve metadata about its meaning, including descriptive metadata from its YAML file and catalog information from its YAML file and the schema. - +Query the Discovery API to map a table/view in the data platform to the model in the dbt project; then, retrieve metadata about its meaning, including descriptive metadata from its YAML file and catalog information from its YAML file and the schema.
    Example query ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - models(first: $first, filter: {database:"analytics", schema:"prod", identifier:"customers"}) { - edges { - node { - name - description - tags - meta - catalog { - columns { - name - description - type - } - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models( + first: $first + filter: { + database: "analytics" + schema: "prod" + identifier: "customers" + } + ) { + edges { + node { + name + description + tags + meta + catalog { + columns { + name + description + type + } + } + } + } + } + } + } } ```
    + + -### Which metrics are available? +### Which metrics are available? -Metric definitions are coming soon to the Discovery API with dbt v1.6. You’ll be able to query metrics using the dbt Semantic Layer, use them for documentation purposes (like for a data catalog), and calculate aggregations (like in a BI tool that doesn’t query the SL). +You can define and query metrics using the [dbt Semantic Layer](/docs/build/about-metricflow), use them for documentation purposes (like for a data catalog), and calculate aggregations (like in a BI tool that doesn’t query the SL). To learn more, refer to [Get started with MetricFlow](/docs/build/sl-getting-started).
    Example query ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - definition { - metrics(first: $first) { - edges { - node { - name - description - type - formula - filter - tags - parents { - name - resourceType - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + definition { + metrics(first: $first) { + edges { + node { + name + description + type + formula + filter + tags + parents { + name + resourceType + } + } + } + } + } + } } ``` @@ -912,7 +952,7 @@ query($environmentId: Int!, $first: Int!){ -## Governance +## Governance You can use the Discovery API to audit data development and facilitate collaboration within and between teams. @@ -923,95 +963,98 @@ For governance use cases, people tend to query the latest definition state, ofte You can define and surface the groups each model is associated with. Groups contain information like owner. This can help you identify which team owns certain models and who to contact about them.
    -Example query +Example query ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - model(first: $first, filter:{uniqueIds:["MODEL.PROJECT.NAME"]}) { - edges { - node { - name - description - resourceType - access - group - } - } - } - } - definition { - groups(first: $first) { - edges { - node { - name - resourceType - models { - name - } - owner_name - owner_email - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models(first: $first, filter: { uniqueIds: ["MODEL.PROJECT.NAME"] }) { + edges { + node { + name + description + resourceType + access + group + } + } + } + } + definition { + groups(first: $first) { + edges { + node { + name + resourceType + models { + name + } + ownerName + ownerEmail + } + } + } + } + } } ```
    ### Who can use this model? -You can enable users the ability to specify the level of access for a given model. In the future, public models will function like APIs to unify project lineage and enable reuse of models using cross-project refs. +You can enable people the ability to specify the level of access for a given model. In the future, public models will function like APIs to unify project lineage and enable reuse of models using cross-project refs.
    -Example query +Example query ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - definition { - models(first: $first) { - edges { - node { - name - access - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + definition { + models(first: $first) { + edges { + node { + name + access + } + } + } + } + } } +``` --- -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - definition { - models(first: $first, filters:{access:public}) { - edges { - node { - name - } - } - } - } - } + +```graphql +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + definition { + models(first: $first, filter: { access: public }) { + edges { + node { + name + } + } + } + } + } } ```
    -## Development +## Development You can use the Discovery API to understand dataset changes and usage and gauge impacts to inform project definition. Below are example questions and queries you can run. For development use cases, people typically query the historical or latest definition or applied state across any part of the DAG using the `environment` endpoint. ### How is this model or metric used in downstream tools? -[Exposures](/docs/build/exposures) provide a method to define how a model or metric is actually used in dashboards and other analytics tools and use cases. You can query an exposure’s definition to see how project nodes are used and query its upstream lineage results to understand the state of the data used in it, which powers use cases like a freshness and quality status tile. +[Exposures](/docs/build/exposures) provide a method to define how a model or metric is actually used in dashboards and other analytics tools and use cases. You can query an exposure’s definition to see how project nodes are used and query its upstream lineage results to understand the state of the data used in it, which powers use cases like a freshness and quality status tile. @@ -1019,47 +1062,41 @@ For development use cases, people typically query the historical or latest defin
    Example query -This example reviews an exposure and the models used in it, including when they were last executed and their test results: +Below is an example that reviews an exposure and the models used in it including when they were last executed. ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - exposures(first: $first) { - edges { - node { - name - description - owner_name - url - parents { - name - resourceType - ... on ModelAppliedStateNode { - executionInfo { - executeCompletedAt - lastRunStatus - } - tests { - executionInfo { - executeCompletedAt - lastRunStatus - } - } - } - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + exposures(first: $first) { + edges { + node { + name + description + ownerName + url + parents { + name + resourceType + ... on ModelAppliedStateNestedNode { + executionInfo { + executeCompletedAt + lastRunStatus + } + } + } + } + } + } + } + } } ```
    -### How has this model changed over time? -The Discovery API provides historical information about any resource in your project. For instance, you can view how a model has evolved over time (across recent runs) given changes to its shape and contents. +### How has this model changed over time? +The Discovery API provides historical information about any resource in your project. For instance, you can view how a model has evolved over time (across recent runs) given changes to its shape and contents.
    Example query @@ -1067,54 +1104,69 @@ The Discovery API provides historical information about any resource in your pro Review the differences in `compiledCode` or `columns` between runs or plot the “Approximate Size” and “Row Count” `stats` over time: ```graphql -query(environmentId: Int!, uniqueId: String!, lastRunCount: Int!, withCatalog: Boolean!){ - modelByEnvironment(environmentId: $environmentId, uniqueId: $uniqueId, lastRunCount: $lastRunCount, withCatalog: $withCatalog) { - name - compiledCode - columns { - name - } - stats { - label - value - } - } +query ( + $environmentId: BigInt! + $uniqueId: String! + $lastRunCount: Int! + $withCatalog: Boolean! +) { + environment(id: $environmentId) { + applied { + modelHistoricalRuns( + uniqueId: $uniqueId + lastRunCount: $lastRunCount + withCatalog: $withCatalog + ) { + name + compiledCode + columns { + name + } + stats { + label + value + } + } + } + } } ```
    ### Which nodes depend on this data source? + dbt lineage begins with data sources. For a given source, you can look at which nodes are its children then iterate downstream to get the full list of dependencies. +Currently, querying beyond 1 generation (defined as a direct parent-to-child) is not supported. To see the grandchildren of a node, you need to make two queries: one to get the node and its children, and another to get the children nodes and their children.
    Example query ```graphql -query($environmentId: Int!, $first: Int!){ - environment(id: $environmentId) { - applied { - sources(first: $first, filter:{uniqueIds:["SOURCE_NAME.TABLE_NAME"]}) { - edges { - node { - loader - children { - uniqueId - resourceType - ... on ModelAppliedStateNode { - database - schema - alias - children { - uniqueId - } - } - } - } - } - } - } - } +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + sources( + first: $first + filter: { uniqueIds: ["SOURCE_NAME.TABLE_NAME"] } + ) { + edges { + node { + loader + children { + uniqueId + resourceType + ... on ModelAppliedStateNestedNode { + database + schema + alias + } + } + } + } + } + } + } } ```
    diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-environment-applied-modelHistoricalRuns.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-environment-applied-modelHistoricalRuns.mdx new file mode 100644 index 00000000000..d1463f9e9b7 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-environment-applied-modelHistoricalRuns.mdx @@ -0,0 +1,50 @@ +--- +title: "Model Historical Runs object schema" +sidebar_label: "Model historical runs" +id: "discovery-schema-environment-applied-modelHistoricalRuns" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The model historical runs object allows you to query information about a model's run history. + +The [Example query](#example-query) illustrates a few fields you can query with the `modelHistoricalRuns` object. Refer to [Fields](#fields) to view the entire schema, which provides all possible fields you can query. + +### Arguments + +When querying for `modelHistoricalRuns`, you can use the following arguments: + + + +### Example query + +You can use the `environmentId` and the model's `uniqueId` to return the model and its execution time for the last 20 times it was run, regardless of which job ran it. + +```graphql +query { + environment(id: 834) { + applied { + modelHistoricalRuns( + uniqueId: "model.marketing.customers" + lastRunCount: 20 + ) { + runId # Get historical results for a particular model + runGeneratedAt + executionTime # View build time across runs + status + tests { + name + status + executeCompletedAt + } # View test results across runs + } + } + } +} +``` + +### Fields + +When querying for `modelHistoricalRuns`, you can use the following fields: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx index 41fd5555c3f..a82bba6576d 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-environment.mdx @@ -4,28 +4,34 @@ sidebar_label: "Environment" id: "discovery-schema-environment" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; -This environment object allows you to query information about a particular model based on `environmentId`. +The environment object allows you to query information about a particular model based on `environmentId`. -The [example query](#example-query) illustrates a few fields you can query in this `environment` object. Refer to [Fields](#fields) to see the entire schema, which provides all possible fields you can query. +The [Example queries](#example-queries) illustrate a few fields you can query with this `environment` object. Refer to [Fields](#fields) to view the entire schema, which provides all possible fields you can query. ### Arguments When querying for `environment`, you can use the following arguments. - + +:::caution -### Example Query +dbt Labs is making changes to the Discovery API. These changes will take effect on August 15, 2023. -You can use your production environment's `id`: +The data type `Int` for `id` is being deprecated and will be replaced with `BigInt`. When the time comes, you will need to update your API call accordingly to avoid errors. +::: + +### Example queries + +You can use your production environment's `id`: ```graphql query Example { - environment(id: 834){ # Get the latest state of the production environment + environment(id: 834){ # Get the latest state of the production environment applied { # The state of an executed node as it exists as an object in the database models(first: 100){ # Pagination to ensure manageable response for large projects edges { node { @@ -34,8 +40,8 @@ query Example { executionInfo {executeCompletedAt, executionTime}, # Metadata from when the model was built tests {name, executionInfo{lastRunStatus, lastRunError}}, # Latest test results catalog {columns {name, description, type}, stats {label, value}}, # Catalog info - ancestors(types:[Source]) {name, ...on SourceAppliedStateNode {freshness{maxLoadedAt, freshnessStatus}}}, # Source freshness } - children {name, resourceType}}} # Immediate dependencies in lineage + ancestors(types:[Source]) {name, ...on SourceAppliedStateNode {freshness{maxLoadedAt, freshnessStatus}}}, # Source freshness } + children {name, resourceType}}} # Immediate dependencies in lineage totalCount } # Number of models in the project } definition { # The logical state of a given project node given its most recent manifest generated @@ -48,12 +54,50 @@ query Example { } ``` +With the deprecation of the data type `Int` for `id`, below is an example of replacing it with `BigInt`: + +```graphql +query ($environmentId: BigInt!, $first: Int!) { + environment(id: $environmentId) { + applied { + models(first: $first) { + edges { + node { + uniqueId + executionInfo { + lastRunId + } + } + } + } + } + } +} + +``` + +With the deprecation of `modelByEnvironment`, below is an example of replacing it with `environment`: + +```graphql +query ($environmentId: BigInt!, $uniqueId: String) { + environment(id: $environmentId) { + applied { + modelHistoricalRuns(uniqueId: $uniqueId) { + uniqueId + executionTime + executeCompletedAt + } + } + } +} +``` + ### Fields When querying an `environment`, you can use the following fields. -When querying the `applied` field of `environment`, you can use the following fields. +When querying the `applied` field of `environment`, you can use the following fields. When querying the `definition` field of `environment`, you can use the following fields. diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-exposure.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-exposure.mdx index d74f12223c5..aa1d27fd83c 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-exposure.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-exposure.mdx @@ -4,22 +4,25 @@ sidebar_label: "Exposure" id: "discovery-schema-exposure" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; -The exposure object allows you to query information about a particular exposure. You can learn more about exposures [here](/docs/build/exposures). +The exposure object allows you to query information about a particular exposure. To learn more, refer to [Add Exposures to your DAG](/docs/build/exposures). + +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + ### Arguments -When querying for an `exposure`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for an `exposure`, the following arguments are available. If you don't include a `runId`, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema of this exposure object. +Below we show some illustrative example queries and outline the schema of the exposure object. -### Example Queries -#### Exposure information +### Example query -The example query below queries information about an exposure, including the owner's name and email, the url, and information about parent sources and parent models. +The example below queries information about an exposure including the owner's name and email, the URL, and information about parent sources and parent models. ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-exposures.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-exposures.mdx index 5e3dcdd45a9..ba539c87dc8 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-exposures.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-exposures.mdx @@ -4,22 +4,25 @@ sidebar_label: "Exposures" id: "discovery-schema-exposures" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; -The exposures object allows you to query information about all exposures in a given job. You can learn more about exposures [here](/docs/build/exposures). +The exposures object allows you to query information about all exposures in a given job. To learn more, refer to [Add Exposures to your DAG](/docs/build/exposures). + +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + ### Arguments -When querying for `exposures`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for `exposures`, the following arguments are available. If you don't include a `runId`, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema of this exposures object. +Below we show some illustrative example queries and outline the schema of the exposures object. -### Example Queries -#### Exposures information +### Example query -The example query below queries information about all exposures in a given job, including, for each exposure, the owner's name and email, the url, and information about parent sources and parent models. +The example below queries information about all exposures in a given job including the owner's name and email, the URL, and information about parent sources and parent models for each exposure. ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposure.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposure.mdx new file mode 100644 index 00000000000..58855659d05 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposure.mdx @@ -0,0 +1,64 @@ +--- +title: "Exposure object schema" +sidebar_label: "Exposure" +id: "discovery-schema-job-exposure" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The exposure object allows you to query information about a particular exposure. To learn more, refer to [Add Exposures to your DAG](/docs/build/exposures). + +### Arguments + +When querying for an `exposure`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the exposure object. + +### Example query + +The example below queries information about an exposure including the owner's name and email, the URL, and information about parent sources and parent models. + +```graphql +{ + job(id: 123) { + exposure(name: "my_awesome_exposure") { + runId + projectId + name + uniqueId + resourceType + ownerName + url + ownerEmail + parentsSources { + uniqueId + sourceName + name + state + maxLoadedAt + criteria { + warnAfter { + period + count + } + errorAfter { + period + count + } + } + maxLoadedAtTimeAgoInS + } + parentsModels { + uniqueId + } + } + } +} +``` + +### Fields +When querying for an `exposure`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposures.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposures.mdx new file mode 100644 index 00000000000..b4fe027e324 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-exposures.mdx @@ -0,0 +1,65 @@ +--- +title: "Exposures object schema" +sidebar_label: "Exposures" +id: "discovery-schema-job-exposures" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The exposures object allows you to query information about all exposures in a given job. To learn more, refer to [Add Exposures to your DAG](/docs/build/exposures). + + +### Arguments + +When querying for `exposures`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the exposures object. + +### Example query + +The example below queries information about all exposures in a given job including the owner's name and email, the URL, and information about parent sources and parent models for each exposure. + +```graphql +{ + job(id: 123) { + exposures(jobId: 123) { + runId + projectId + name + uniqueId + resourceType + ownerName + url + ownerEmail + parentsSources { + uniqueId + sourceName + name + state + maxLoadedAt + criteria { + warnAfter { + period + count + } + errorAfter { + period + count + } + } + maxLoadedAtTimeAgoInS + } + parentsModels { + uniqueId + } + } + } +} +``` + +### Fields +When querying for `exposures`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-metric.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-metric.mdx new file mode 100644 index 00000000000..1f1f490d62f --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-metric.mdx @@ -0,0 +1,58 @@ +--- +title: "Metric object schema" +sidebar_label: "Metric" +id: "discovery-schema-job-metric" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The metric object allows you to query information about [metrics](/docs/build/metrics). + +### Arguments + +When querying for a `metric`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the metric object. + +### Example query + +The example query below outputs information about a metric. You can also add any field from the model endpoint (the example simply selects name). This includes schema, database, uniqueId, columns, and more. For details, refer to [Model object schema](/docs/dbt-cloud-apis/discovery-schema-model). + + +```graphql +{ + job(id: 123) { + metric(uniqueId: "metric.jaffle_shop.new_customers") { + uniqueId + name + packageName + tags + label + runId + description + type + sql + timestamp + timeGrains + dimensions + meta + resourceType + filters { + field + operator + value + } + model { + name + } + } + } +} +``` + +### Fields +When querying for a `metric`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-metrics.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-metrics.mdx new file mode 100644 index 00000000000..174dd5b676a --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-metrics.mdx @@ -0,0 +1,60 @@ +--- +title: "Metrics object schema" +sidebar_label: "Metrics" +id: "discovery-schema-job-metrics" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The metrics object allows you to query information about [metrics](/docs/build/metrics). + + +### Arguments + +When querying for `metrics`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the metrics object. + +### Example query + +The example query returns information about all metrics for the given job. + +```graphql +{ + job(id: 123) { + metrics { + uniqueId + name + packageName + tags + label + runId + description + type + sql + timestamp + timeGrains + dimensions + meta + resourceType + filters { + field + operator + value + } + model { + name + } + } + } +} +``` + +### Fields +The metrics object can access the _same fields_ as the [metric node](/docs/dbt-cloud-apis/discovery-schema-job-metric). The difference is that the metrics object can output a list so instead of querying for fields for one specific metric, you can query for those parameters for all metrics in a run. + +When querying for `metrics`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-model.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-model.mdx new file mode 100644 index 00000000000..abd1ca1b1d6 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-model.mdx @@ -0,0 +1,91 @@ +--- +title: "Model object schema" +sidebar_label: "Model" +id: "discovery-schema-job-model" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The model object allows you to query information about a particular model in a given job. + +### Arguments + +When querying for a `model`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the model object. + +### Example query for finding parent models and sources + +The example query below uses the `parentsModels` and `parentsSources` fields to fetch information about a model’s parent models and parent sources. The jobID and uniqueID fields are placeholders that you will need to replace with your own values. + +```graphql +{ + job(id: 123) { + model(uniqueId: "model.jaffle_shop.dim_user") { + parentsModels { + runId + uniqueId + executionTime + } + parentsSources { + runId + uniqueId + state + } + } + } +} + +``` + +### Example query for model timing + +The example query below could be useful if you want to understand information around execution timing on a given model (start, end, completion). + +```graphql +{ + job(id: 123) { + model(uniqueId: "model.jaffle_shop.dim_user") { + runId + projectId + name + uniqueId + resourceType + executeStartedAt + executeCompletedAt + executionTime + } + } +} +``` + +### Example query for column-level information + +You can use the following example query to understand more about the columns of a given model. This query will only work if the job has generated documentation; that is, it will work with the command `dbt docs generate`. + +```graphql +{ + job(id: 123) { + model(uniqueId: "model.jaffle_shop.dim_user") { + columns { + name + index + type + comment + description + tags + meta + } + } + } +} +``` + + +### Fields + +When querying for a `model`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-models.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-models.mdx new file mode 100644 index 00000000000..ee512f3cd97 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-models.mdx @@ -0,0 +1,59 @@ +--- +title: "Models object schema" +sidebar_label: "Models" +id: "discovery-schema-job-models" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + + +The models object allows you to query information about all models in a given job. + +### Arguments + +When querying for `models`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the models object. + +### Example queries +The database, schema, and identifier arguments are all optional. This means that with this endpoint you can: + +- Find a specific model by providing `..` +- Find all of the models in a database and/or schema by providing `` and/or `` + +#### Find models by their database, schema, and identifier +The example query below finds a model by its unique database, schema, and identifier. + +```graphql +{ + job(id: 123) { + models(database:"analytics", schema: "analytics", identifier:"dim_customers") { + uniqueId + } + } +} +``` + +#### Find models by their schema +The example query below finds all models in this schema and their respective execution times. + +```graphql +{ + job(id: 123) { + models(schema: "analytics") { + uniqueId + executionTime + } + } +} +``` + + +### Fields +The models object can access the _same fields_ as the [Model node](/docs/dbt-cloud-apis/discovery-schema-job-model). The difference is that the models object can output a list so instead of querying for fields for one specific model, you can query for those parameters for all models within a jobID, database, and so on. + +When querying for `models`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-seed.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-seed.mdx new file mode 100644 index 00000000000..924e3e87e91 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-seed.mdx @@ -0,0 +1,42 @@ +--- +title: "Seed object schema" +sidebar_label: "Seed" +id: "discovery-schema-job-seed" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The seed object allows you to query information about a particular seed in a given job. + +### Arguments + +When querying for a `seed`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the seed object. + +### Example query + +The example query below pulls relevant information about a given seed. For instance, you can view the load time. + +```graphql +{ + job(id: 123) { + seed(uniqueId: "seed.jaffle_shop.raw_customers") { + database + schema + uniqueId + name + status + error + } + } +} +``` + +### Fields + +When querying for a `seed`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-seeds.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-seeds.mdx new file mode 100644 index 00000000000..6ed45216e5f --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-seeds.mdx @@ -0,0 +1,40 @@ +--- +title: "Seeds object schema" +sidebar_label: "Seeds" +id: "discovery-schema-job-seeds" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The seeds object allows you to query information about all seeds in a given job. + +### Arguments + +When querying for `seeds`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the seeds object. + +### Example query + +The example query below pulls relevant information about all seeds in a given job. For instance, you can view load times. + +```graphql +{ + job(id: 123) { + seeds { + uniqueId + name + executionTime + status + } + } +} +``` + +### Fields + +When querying for `seeds`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-snapshots.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-snapshots.mdx new file mode 100644 index 00000000000..a57163e0554 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-snapshots.mdx @@ -0,0 +1,49 @@ +--- +title: "Snapshots object schema" +sidebar_label: "Snapshots" +id: "discovery-schema-job-snapshots" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The snapshots object allows you to query information about all snapshots in a given job. + +### Arguments + +When querying for `snapshots`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the snapshots object. + +### Example query + +The database, schema, and identifier arguments are optional. This means that with this endpoint you can: + +- Find a specific snapshot by providing `..` +- Find all of the snapshots in a database and/or schema by providing `` and/or `` + +#### Find snapshots information for a job + +The example query returns information about all snapshots in this job. + +```graphql +{ + job(id: 123) { + snapshots { + uniqueId + name + executionTime + environmentId + executeStartedAt + executeCompletedAt + } + } +} +``` + +### Fields + +When querying for `snapshots`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-source.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-source.mdx new file mode 100644 index 00000000000..972e929f4cd --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-source.mdx @@ -0,0 +1,52 @@ +--- +title: "Source object schema" +sidebar_label: "Source" +id: "discovery-schema-job-source" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The source object allows you to query information about a particular source in a given job. + +### Arguments + +When querying for a `source`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the source object. + +### Example query + +The query below pulls relevant information about a given source. For instance, you can view the load time and the state (pass, fail, error) of that source. + +```graphql +{ + job(id: 123) { + source(uniqueId: "source.jaffle_shop.snowplow.event") { + uniqueId + sourceName + name + state + maxLoadedAt + criteria { + warnAfter { + period + count + } + errorAfter { + period + count + } + } + maxLoadedAtTimeAgoInS + } + } +} +``` + +### Fields + +When querying for a `source`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-sources.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-sources.mdx new file mode 100644 index 00000000000..97f717d269a --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-sources.mdx @@ -0,0 +1,65 @@ +--- +title: "Sources object schema" +sidebar_label: "Sources" +id: "discovery-schema-job-sources" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The sources object allows you to query information about all sources in a given job. + +### Arguments + +When querying for `sources`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema of the sources object. + +### Example queries + +The database, schema, and identifier arguments are optional. This means that with this endpoint you can: + +- Find a specific source by providing `..` +- Find all of the sources in a database and/or schema by providing `` and/or `` + +#### Finding sources by their database, schema, and identifier + +The example query below finds a source by its unique database, schema, and identifier. + +```graphql +{ + job(id: 123) { + sources( + database: "analytics" + schema: "analytics" + identifier: "dim_customers" + ) { + uniqueId + } + } +} +``` + +#### Finding sources by their schema + +The example query below finds all sources in this schema and their respective states (pass, error, fail). + +```graphql +{ + job(id: 123) { + sources(schema: "analytics") { + uniqueId + state + } + } +} +``` + +### Fields + +The sources object can access the _same fields_ as the [source node](/docs/dbt-cloud-apis/discovery-schema-job-source). The difference is that the sources object can output a list so instead of querying for fields for one specific source, you can query for those parameters for all sources within a jobID, database, and so on. + +When querying for `sources`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-test.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-test.mdx new file mode 100644 index 00000000000..c52aa49ab93 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-test.mdx @@ -0,0 +1,43 @@ +--- +title: "Test object schema" +sidebar_label: "Test" +id: "discovery-schema-job-test" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The test object allows you to query information about a particular test. + +### Arguments + +When querying for a `test`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the test object. + +### Example query + +The example query below outputs information about a test including the state of the test result. In order of severity, the result can be one of these: "error", "fail", "warn", or "pass". + +```graphql +{ + job(id: 123) { + test(uniqueId: "test.internal_analytics.not_null_metrics_id") { + runId + accountId + projectId + uniqueId + name + columnName + state + } + } +} +``` + +### Fields + +When querying for a `test`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job-tests.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-tests.mdx new file mode 100644 index 00000000000..efcef674c55 --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job-tests.mdx @@ -0,0 +1,43 @@ +--- +title: "Tests object schema" +sidebar_label: "Tests" +id: "discovery-schema-job-tests" +--- + +import { NodeArgsTable, SchemaTable } from "./schema"; + +The tests object allows you to query information about all tests in a given job. + +### Arguments + +When querying for `tests`, the following arguments are available. + + + +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the tests object. + +### Example query + +The example query below finds all tests in this job and includes information about those tests. + +```graphql +{ + job(id: 123) { + tests { + runId + accountId + projectId + uniqueId + name + columnName + state + } + } +} +``` + +### Fields + +When querying for `tests`, the following fields are available: + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-job.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-job.mdx new file mode 100644 index 00000000000..bb30786e19d --- /dev/null +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-job.mdx @@ -0,0 +1,62 @@ +--- +title: "Job object schema" +sidebar_label: "Job" +id: "discovery-schema-job" +--- + +import { QueryArgsTable, SchemaTable } from "./schema"; + +The job object allows you to query information about a particular model based on `jobId` and, optionally, a `runId`. + +If you don't provide a `runId`, the API returns information on the latest runId of a job. + +The [example query](#example-query) illustrates a few fields you can query in this `job` object. Refer to [Fields](#fields) to see the entire schema, which provides all possible fields you can query. + +### Arguments + +When querying for `job`, you can use the following arguments. + + + + +### Example Query + +You can use your production job's `id`. + +```graphql +query JobQueryExample { + # Provide runId for looking at specific run, otherwise it defaults to latest run + job(id: 940) { + # Get all models from this job's latest run + models(schema: "analytics") { + uniqueId + executionTime + } + + # Or query a single node + source(uniqueId: "source.jaffle_shop.snowplow.event") { + uniqueId + sourceName + name + state + maxLoadedAt + criteria { + warnAfter { + period + count + } + errorAfter { + period + count + } + } + maxLoadedAtTimeAgoInS + } + } +} +``` + +### Fields +When querying an `job`, you can use the following fields. + + diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-metric.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-metric.mdx index 2280c6f7802..aee04ba2cce 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-metric.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-metric.mdx @@ -4,22 +4,25 @@ sidebar_label: "Metric" id: "discovery-schema-metric" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The metric object allows you to query information about [metrics](/docs/build/metrics). +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for a `metric`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for a `metric`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema (all possible fields you can query) of this metric object. +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the metric object. -### Example Queries -#### Metric information +### Example query -The example query below outputs information about a metric. Note that you can also add any field from the Model endpoint -- here we are simply selecting name. This includes schema, database, uniqueId, columns and more -- find documentation [here](/docs/dbt-cloud-apis/discovery-schema-model). +The example query below outputs information about a metric. You can also add any field from the model endpoint (the example simply selects name). This includes schema, database, uniqueId, columns, and more. For details, refer to [Model object schema](/docs/dbt-cloud-apis/discovery-schema-model). ```graphql diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-metrics.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-metrics.mdx index 5242eb717dc..30d8d68b365 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-metrics.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-metrics.mdx @@ -4,22 +4,25 @@ sidebar_label: "Metrics" id: "discovery-schema-metrics" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The metrics object allows you to query information about [metrics](/docs/build/metrics). +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for `metrics`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for `metrics`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema (all possible fields you can query) of this metrics object. +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the metrics object. -### Example Queries -#### Metrics information +### Example query -The example query returns information about all metrics in this job. +The example query returns information about all metrics for the given job. ```graphql { @@ -52,7 +55,7 @@ The example query returns information about all metrics in this job. ``` ### Fields -metrics has access to the *same fields* as the [metric node](/docs/dbt-cloud-apis/discovery-schema-metric). The difference is that metrics can output a list, so instead of querying for fields for one specific metric, you can query for those parameters for all metrics in a run. +The metrics object can access the _same fields_ as the [metric node](/docs/dbt-cloud-apis/discovery-schema-metric). The difference is that the metrics object can output a list so instead of querying for fields for one specific metric, you can query for those parameters for all metrics in a run. When querying for `metrics`, the following fields are available: diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-model.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-model.mdx index 3fb43edaded..7206fb9a51c 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-model.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-model.mdx @@ -4,22 +4,25 @@ sidebar_label: "Model" id: "discovery-schema-model" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The model object allows you to query information about a particular model in a given job. +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for a `model`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for a `model`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema (all possible fields you can query) of this model object. +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the model object. -### Example Queries -#### Finding parent models and sources +### Example query for finding parent models and sources -The example query below uses the `parentsModels` and `parentsSources` fields to fetch information about a model’s parent models and parent sources. Note that we put a placeholder jobID and uniqueID, which you will have to replace. +The example query below uses the `parentsModels` and `parentsSources` fields to fetch information about a model’s parent models and parent sources. The jobID and uniqueID fields are placeholders that you will need to replace with your own values. ```graphql { @@ -38,9 +41,9 @@ The example query below uses the `parentsModels` and `parentsSources` fields to } ``` -#### Model Timing +### Example query for model timing -The example query below could be useful if we wanted to understand information around execution timing on a given model (start, end, completion). +The example query below could be useful if you wanted to understand information around execution timing on a given model (start, end, completion). ```graphql { @@ -57,9 +60,10 @@ The example query below could be useful if we wanted to understand information a } ``` -#### Column-level information +### Example query for column-level information + +You can use the following example query to understand more about the columns of a given model. This query will only work if the job has generated documentation; that is, it will work with the command `dbt docs generate`. -You can use the following example query to understand more about the columns of a given model. Note that this will only work if the job has generated documentation. For example it will work with the command `dbt docs generate`. ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx index 078d2512256..dade3d32d8a 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-modelByEnv.mdx @@ -4,24 +4,34 @@ sidebar_label: "Model by environment" id: "discovery-schema-modelByEnv" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; - +:::caution + +dbt Labs is making changes to the Discovery API. These changes will take effect on August 15, 2023. + +The model by environment object is being deprecated and will be replaced with `environment { applied { modelHistoricalRuns } }`. When the time comes, you will need to update your API calls accordingly to avoid errors. Refer to the +[Environment object schema](/docs/dbt-cloud-apis/discovery-schema-environment) for details. +::: This model by environment object allows you to query information about a particular model based on `environmentId`. -The [example query](#example-query) illustrates a few fields you can query in this `modelByEnvironment` object. Refer to [Fields](#fields) to see the entire schema, which provides all possible fields you can query. +The [Example query](#example-query) illustrates a few fields you can query in the `modelByEnvironment` object. Refer to [Fields](#fields) to see the entire schema, which provides all possible fields you can query. + +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + ### Arguments When querying for `modelByEnvironment`, you can use the following arguments. - + -### Example Query +### Example query -You can use the `environment_id` and `model_unique_id` to return the model and its execution time for the last 20 times it was run, regardless of which job ran it. +You can use the `environmentId` and the model's `uniqueId` to return the model and its execution time for the last 20 times it was run, regardless of which job ran it. ```graphql diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-models.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-models.mdx index a3215eee039..f813d6a9ccf 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-models.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-models.mdx @@ -4,25 +4,29 @@ sidebar_label: "Models" id: "discovery-schema-models" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The models object allows you to query information about all models in a given job. +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for `models`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for `models`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema of this models object. +Below we show some illustrative example queries and outline the schema of the models object. -### Example Queries -As we noted above, database, schema, and identifier are all optional arguments. This means that with this endpoint, you can: +### Example queries +The database, schema, and identifier arguments are optional. This means that with this endpoint you can: - Find a specific model by providing `..` - Find all of the models in a database and/or schema by providing `` and/or `` -#### Finding models by their database, schema, and identifier +#### Find models by their database, schema, and identifier The example query below finds a model by its unique database, schema, and identifier. ```graphql @@ -33,8 +37,8 @@ The example query below finds a model by its unique database, schema, and identi } ``` -#### Finding models by their schema -The example query below finds all models in this schema, and their respective execution times. +#### Find models by their schema +The example query below finds all models in this schema and their respective execution times. ```graphql { @@ -47,7 +51,7 @@ The example query below finds all models in this schema, and their respective ex ### Fields -Models has access to the *same fields* as the [Model node](/docs/dbt-cloud-apis/discovery-schema-model). The difference is that Models can output a list, so instead of querying for fields for one specific model, you can query for those parameters for all models within a jobID, database, etc. +The models object can access the _same fields_ as the [Model node](/docs/dbt-cloud-apis/discovery-schema-model). The difference is that the models object can output a list so instead of querying for fields for one specific model, you can query for those parameters for all models within a jobID, database, and so on. When querying for `models`, the following fields are available: diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-seed.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-seed.mdx index 1047545a8be..110f417769b 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-seed.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-seed.mdx @@ -4,23 +4,25 @@ sidebar_label: "Seed" id: "discovery-schema-seed" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The seed object allows you to query information about a particular seed in a given job. -### Arguments +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + -When querying for a `seed`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +### Arguments - +When querying for a `seed`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: -Below we show some illustrative example queries and outline the schema of this seed object. + -### Example Queries +Below we show some illustrative example queries and outline the schema of the seed object. -#### Seed information +### Example query -The query below pulls relevant information about a given seed. For example, we could see the load time. +The query below pulls relevant information about a given seed. For instance, you can view the load time. ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-seeds.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-seeds.mdx index 2cee2b8aa3f..c0a45664e38 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-seeds.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-seeds.mdx @@ -4,22 +4,25 @@ sidebar_label: "Seeds" id: "discovery-schema-seeds" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The seeds object allows you to query information about a all seeds in a given job. +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for `seeds`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for `seeds`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema of this seeds object. +Below we show some illustrative example queries and outline the schema of the seeds object. -### Example Queries -#### Seeds information +### Example query -The query below pulls relevant information about all seeds in a given job. For example, we could see the load times. +The query below pulls relevant information about all seeds in a given job. For instance, you can view load times. ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-snapshots.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-snapshots.mdx index b3f7071319f..4d2316cfc6a 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-snapshots.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-snapshots.mdx @@ -4,24 +4,28 @@ sidebar_label: "Snapshots" id: "discovery-schema-snapshots" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The snapshots object allows you to query information about all snapshots in a given job. +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for `snapshots`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for `snapshots`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema of this snapshots object. +Below we show some illustrative example queries and outline the schema of the snapshots object. -### Example Query -As we noted above, database, schema, and identifier are all optional arguments. This means that with this endpoint, you can: +### Example query +The database, schema, and identifier arguments are optional. This means that with this endpoint you can: - Find a specific snapshot by providing `..` - Find all of the snapshots in a database and/or schema by providing `` and/or `` -#### Finding snapshots information for a job +#### Find snapshots information for a job The example query returns information about all snapshots in this job. ```graphql @@ -39,7 +43,7 @@ The example query returns information about all snapshots in this job. ``` ### Fields -Snapshots has access to the *same fields* as the [Snapshot node](/docs/dbt-cloud-apis/discovery-schema-snapshots). The difference is that Snapshots can output a list, so instead of querying for fields for one specific snapshot, you can query for those parameters for all snapshots within a jobID, database, etc. +The snapshots object can access the _same fields_ as the [Snapshot node](/docs/dbt-cloud-apis/discovery-schema-snapshots). The difference is that the snapshots object can output a list so instead of querying for fields for one specific snapshot, you can query for those parameters for all snapshots within a jobID, database, and so on. When querying for `snapshots`, the following fields are available: diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-source.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-source.mdx index 87d776282fe..3d632a035e3 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-source.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-source.mdx @@ -4,23 +4,25 @@ sidebar_label: "Source" id: "discovery-schema-source" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The source object allows you to query information about a particular source in a given job. -### Arguments +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + -When querying for a `source`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +### Arguments - +When querying for a `source`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: -Below we show some illustrative example queries and outline the schema of this source object. + -### Example Queries +Below we show some illustrative example queries and outline the schema of the source object. -#### Source information +### Example query -The query below pulls relevant information about a given source. For example, we could see the load time and the state (“pass”, “fail”, “error”) of that source. +The example query below pulls relevant information about a given source. For instance, you can view the load time and the state (pass, fail, error) of that source. ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-sources.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-sources.mdx index a719c5caf92..591f8e0307c 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-sources.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-sources.mdx @@ -4,25 +4,29 @@ sidebar_label: "Sources" id: "discovery-schema-sources" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The sources object allows you to query information about all sources in a given job. +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for `sources`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for `sources`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema of this sources object. +Below we show some illustrative example queries and outline the schema of the sources object. -### Example Queries -As we noted above, database, schema, and identifier are all optional arguments. This means that with this endpoint, you can: +### Example queries +The database, schema, and identifier arguments are optional. This means that with this endpoint you can: - Find a specific source by providing `..` - Find all of the sources in a database and/or schema by providing `` and/or `` -#### Finding sources by their database, schema, and identifier +#### Find sources by their database, schema, and identifier The example query below finds a source by its unique database, schema, and identifier. ```graphql @@ -33,8 +37,8 @@ The example query below finds a source by its unique database, schema, and ident } ``` -#### Finding sources by their schema -The example query below finds all sources in this schema, and their respective states (pass, error, fail). +#### Find sources by their schema +The example query below finds all sources in this schema and their respective states (pass, error, fail). ```graphql { @@ -46,7 +50,7 @@ The example query below finds all sources in this schema, and their respective s ``` ### Fields -Sources has access to the *same fields* as the [Source node](/docs/dbt-cloud-apis/discovery-schema-source). The difference is that Sources can output a list, so instead of querying for fields for one specific source, you can query for those parameters for all sources within a jobID, database, etc. +The sources object can access the _same fields_ as the [Source node](/docs/dbt-cloud-apis/discovery-schema-source). The difference is that the sources object can output a list so instead of querying for fields for one specific source, you can query for those parameters for all sources within a jobID, database, and so on. When querying for `sources`, the following fields are available: diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-test.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-test.mdx index 2ee915d27c7..ea22a81fc8e 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-test.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-test.mdx @@ -4,22 +4,25 @@ sidebar_label: "Test" id: "discovery-schema-test" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The test object allows you to query information about a particular test. +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for a `test`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for a `test`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema (all possible fields you can query) of this test object. +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the test object. -### Example Queries -#### Test result +### Example query -The example query below outputs information about a test, including the state of the test result. This can be one of, in order of severity, "error", "fail", "warn", "pass." +The example query below outputs information about a test including the state of the test result. In order of severity, the result can be one of these: "error", "fail", "warn", or "pass". ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema-discovery-tests.mdx b/website/docs/docs/dbt-cloud-apis/schema-discovery-tests.mdx index 7f087c85fee..250a73cea5d 100644 --- a/website/docs/docs/dbt-cloud-apis/schema-discovery-tests.mdx +++ b/website/docs/docs/dbt-cloud-apis/schema-discovery-tests.mdx @@ -4,23 +4,26 @@ sidebar_label: "Tests" id: "discovery-schema-tests" --- -import { ArgsTable, SchemaTable } from "./schema"; +import { QueryArgsTable, SchemaTable } from "./schema"; The tests object allows you to query information about all tests in a given job. +import DiscoveryApiJobDeprecationNotice from '/snippets/_discovery_api_job_deprecation_notice.md'; + + + ### Arguments -When querying for `tests`, the following arguments are available. Note that if you do not include a runId, it will default to the most recent run of the specified job: +When querying for `tests`, the following arguments are available. If you don't include a runId, the API defaults to the most recent run of the specified job: - + -Below we show some illustrative example queries and outline the schema (all possible fields you can query) of this tests object. +Below we show some illustrative example queries and outline the schema (all possible fields you can query) of the tests object. -### Example Queries -#### Tests result +### Example query -The example query below finds all tests in this job, and includes information about those tests. +The example query below finds all tests in this job and includes information about those tests. ```graphql { diff --git a/website/docs/docs/dbt-cloud-apis/schema.jsx b/website/docs/docs/dbt-cloud-apis/schema.jsx index 8b9bbc358f0..ea6660251f6 100644 --- a/website/docs/docs/dbt-cloud-apis/schema.jsx +++ b/website/docs/docs/dbt-cloud-apis/schema.jsx @@ -1,6 +1,52 @@ -import React, { setState } from "react"; +import React from "react"; import { useState, useEffect } from 'react' -const queriesQuery = `{ + +const getTypeString = (typeStructure) => { + // Helper function to represent GraphQL type + if (!typeStructure) return '' + + if (typeStructure.kind === 'NON_NULL') { + return `${getTypeString(typeStructure.ofType)}!`; + } else if (typeStructure.kind === 'LIST') { + return `[${getTypeString(typeStructure.ofType)}]`; + } else if (['OBJECT', 'SCALAR', 'ENUM'].includes(typeStructure.kind)) { + return `${typeStructure.name}${getTypeString(typeStructure.ofType)}`; + } else { + return ''; + } +} + +export const ArgsTable = ({ data, name }) => { + return ( + + + + + + + + + + + {data.fields.find(d => d.name === name).args.map(function ({ name, description, type }) { + return ( + + + + + + + ) + })} + +
    FieldTypeRequired?Description
    {name}{getTypeString(type)}{type.kind === 'NON_NULL' ? `Yes` : `No`}{description || `No description provided`}
    + ) +} + +const metadataUrl = 'https://metadata.cloud.getdbt.com/graphql' +const metadataBetaUrl = 'https://metadata.cloud.getdbt.com/beta/graphql' + +const queryArgsQuery = `{ __schema { queryType { fields { @@ -18,23 +64,22 @@ const queriesQuery = `{ name description kind - ofType { name description } + ofType { kind name description } } } } } } }` -const metadataUrl = 'https://metadata.cloud.getdbt.com/graphql' -const metadataBetaUrl = 'https://metadata.cloud.getdbt.com/beta/graphql' -export const ArgsTable = ({ queryName, useBetaAPI }) => { + +export const QueryArgsTable = ({ queryName, useBetaAPI }) => { const [data, setData] = useState(null) useEffect(() => { const fetchData = () => { fetch(useBetaAPI ? metadataBetaUrl : metadataUrl, { method: "POST", headers: { "Content-Type": "application/json" }, - body: JSON.stringify({ query: queriesQuery }), + body: JSON.stringify({ query: queryArgsQuery }), }) .then((result) => result.json()) .then((data) => setData(data)) @@ -45,33 +90,89 @@ export const ArgsTable = ({ queryName, useBetaAPI }) => { return

    Fetching data...

    } return ( - - - - - - - - - - - {data.data.__schema.queryType.fields.find(d => d.name === queryName).args.map(function ({ name, description, type }) { - return ( - - - {type.ofType ? - : - + + ) +} + +export const NodeArgsTable = ({ parent, name, useBetaAPI }) => { + const [data, setData] = useState(null) + useEffect(() => { + const fetchData = () => { + fetch(useBetaAPI ? metadataBetaUrl : metadataUrl, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ + query: ` + query { + __type(name: "${parent}") { + ...FullType + } + } + + fragment FullType on __Type { + kind + fields(includeDeprecated: true) { + name + description + args { + name + description + defaultValue + type { + ...TypeRef + } } - - - - ) - })} - -
    FieldTypeRequired?Description
    {name}{type.ofType.name}{type.name}{type.kind === 'NON_NULL' ? `Yes` : `No`}{description || `No description provided`}
    + } + } + + # get several levels + fragment TypeRef on __Type { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + } + } + } + } + } + } + } + } + `}) + }) + .then((result) => result.json()) + .then((data) => setData(data)) + } + fetchData() + }, []) + if (!data) { + return

    Fetching data...

    + } + return ( + ) } + export const SchemaTable = ({ nodeName, useBetaAPI }) => { const [data, setData] = useState(null) useEffect(() => { @@ -80,27 +181,60 @@ export const SchemaTable = ({ nodeName, useBetaAPI }) => { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ - query: `{ - __type(name: "${nodeName}") { - fields { + query: ` + query { + __type(name: "${nodeName}") { + ...FullType + } + } + + fragment FullType on __Type { + kind + name + description + fields(includeDeprecated: true) { name description - type { - name - description - kind - ofType { - name - description - ofType { - name - description - } - } + type { + ...TypeRef } } } - }`}), + + # get several levels + fragment TypeRef on __Type { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + ofType { + kind + name + } + } + } + } + } + } + } + } + `}), }) .then((result) => result.json()) .then((data) => setData(data)) @@ -124,13 +258,7 @@ export const SchemaTable = ({ nodeName, useBetaAPI }) => { return ( {name} - {type.kind === 'LIST' ? - [{type.ofType.ofType ? type.ofType.ofType.name : type.ofType.name}] : - (type.ofType ? - {type.ofType.name} : - {type.name} - ) - } + {getTypeString(type)} {description} ) @@ -138,4 +266,4 @@ export const SchemaTable = ({ nodeName, useBetaAPI }) => { ) -} \ No newline at end of file +} diff --git a/website/sidebars.js b/website/sidebars.js index a789f27ab2e..e319f4d49bf 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -457,7 +457,51 @@ const sidebarSettings = { type: "category", label: "Schema", items: [ - "docs/dbt-cloud-apis/discovery-schema-environment", + { + type: "category", + label: "Job", + link: { type: "doc", id: "docs/dbt-cloud-apis/discovery-schema-job" }, + items: [ + "docs/dbt-cloud-apis/discovery-schema-job-model", + "docs/dbt-cloud-apis/discovery-schema-job-models", + "docs/dbt-cloud-apis/discovery-schema-job-metric", + "docs/dbt-cloud-apis/discovery-schema-job-metrics", + "docs/dbt-cloud-apis/discovery-schema-job-source", + "docs/dbt-cloud-apis/discovery-schema-job-sources", + "docs/dbt-cloud-apis/discovery-schema-job-seed", + "docs/dbt-cloud-apis/discovery-schema-job-seeds", + // "docs/dbt-cloud-apis/discovery-schema-job-snapshot", + "docs/dbt-cloud-apis/discovery-schema-job-snapshots", + "docs/dbt-cloud-apis/discovery-schema-job-test", + "docs/dbt-cloud-apis/discovery-schema-job-tests", + "docs/dbt-cloud-apis/discovery-schema-job-exposure", + "docs/dbt-cloud-apis/discovery-schema-job-exposures", + // "docs/dbt-cloud-apis/discovery-schema-job-macro", + // "docs/dbt-cloud-apis/discovery-schema-job-macros", + ], + }, + { + type: "category", + label: "Environment", + link: { type: "doc", id: "docs/dbt-cloud-apis/discovery-schema-environment" }, + items: [ + { + type: "category", + label: "Applied", + items: [ + "docs/dbt-cloud-apis/discovery-schema-environment-applied-modelHistoricalRuns", + ], + }, + // Uncomment to add Definition subpage, but need to make items non-empty + // { + // type: "category", + // label: "Definition", + // items: [ + // // insert pages here + // ], + // }, + ], + }, "docs/dbt-cloud-apis/discovery-schema-model", "docs/dbt-cloud-apis/discovery-schema-models", "docs/dbt-cloud-apis/discovery-schema-modelByEnv", @@ -932,7 +976,7 @@ const sidebarSettings = { "guides/orchestration/airflow-and-dbt-cloud/3-running-airflow-and-dbt-cloud", "guides/orchestration/airflow-and-dbt-cloud/4-airflow-and-dbt-cloud-faqs", ], - }, + }, { type: "category", label: "Set up Continuous Integration", diff --git a/website/snippets/_discovery_api_job_deprecation_notice.md b/website/snippets/_discovery_api_job_deprecation_notice.md new file mode 100644 index 00000000000..71e80a958b4 --- /dev/null +++ b/website/snippets/_discovery_api_job_deprecation_notice.md @@ -0,0 +1,7 @@ +:::caution +dbt Labs is making changes to the Discovery API. These changes will take effect on September 7, 2023. + +The data type `Int` for `id` is being deprecated and will be replaced with `BigInt`. Currently, both data types are supported. + +To perform job-based queries, you must do it within the `job` schema object, and move the `jobId` and `runId` arguments to `job(...)`. This is now supported so you can update your API calls accordingly. For details, refer to [Job object schema](/docs/dbt-cloud-apis/discovery-schema-job). +::: From 263876659510241bae77c893d0797ca06af0e87b Mon Sep 17 00:00:00 2001 From: Will Sargent <109557847+will-sargent-dbtlabs@users.noreply.github.com> Date: Tue, 15 Aug 2023 17:16:31 -0600 Subject: [PATCH 689/703] Update 2-how-we-style-our-sql.md Adds information about custom .sqlfluff and .sqlfluffignore files --- .../best-practices/how-we-style/2-how-we-style-our-sql.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md index 1ea9c064d74..62c5fcda89b 100644 --- a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md +++ b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md @@ -6,7 +6,9 @@ id: 2-how-we-style-our-sql ## Basics - ☁️ Use [SQLFluff](https://sqlfluff.com/) to maintain these style rules automatically. - - Reference this [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we use. + - Custom `.sqlfluff` configuration files are supported. + - Reference this [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we use in our own projects. + - We also support ignoring files and folders using a standard `.sqlfluffignore` file. Reference these docs for the syntax: [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2) - 👻 Use Jinja comments (`{# #}`) for comments that should not be included in the compiled SQL. - ⏭️ Use trailing commas. - 4️⃣ Indents should be four spaces. From b3a4b96ea57fcb0060ce6bbec40f9809732df067 Mon Sep 17 00:00:00 2001 From: "Eddo W. Hintoso" Date: Tue, 15 Aug 2023 18:05:12 -0700 Subject: [PATCH 690/703] Run introspection query with fields(includeDeprecated: true) --- website/docs/docs/dbt-cloud-apis/schema.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/schema.jsx b/website/docs/docs/dbt-cloud-apis/schema.jsx index ea6660251f6..31568671573 100644 --- a/website/docs/docs/dbt-cloud-apis/schema.jsx +++ b/website/docs/docs/dbt-cloud-apis/schema.jsx @@ -49,7 +49,7 @@ const metadataBetaUrl = 'https://metadata.cloud.getdbt.com/beta/graphql' const queryArgsQuery = `{ __schema { queryType { - fields { + fields(includeDeprecated: true) { name type { name From 07ac4e054a34d381ab9b31f1a9f714b6cfb26161 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 09:16:30 -0400 Subject: [PATCH 691/703] Update delete-environment-job.md adding @patkearns10 's awesome feedback to let users know they need to move jobs if they delete envs --- website/docs/faqs/Environments/delete-environment-job.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/faqs/Environments/delete-environment-job.md b/website/docs/faqs/Environments/delete-environment-job.md index 1f4b8c343a9..eb9ac511a7c 100644 --- a/website/docs/faqs/Environments/delete-environment-job.md +++ b/website/docs/faqs/Environments/delete-environment-job.md @@ -28,7 +28,7 @@ Refresh the page, and the deleted job should now be gone. If you want to delete ## Delete an environment -To delete an environment in dbt Cloud: +Deleting an environment automatically deletes its associated job(s). If you want to keep those jobs, move them to a different environment first. To delete an environment in dbt Cloud: 1. Click **Deploy** on the navigation header and then click **Environments** 2. Select the Environment you want to delete. From 47ef3617e43cad90504e211e017ee1533660b116 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 10:14:28 -0400 Subject: [PATCH 692/703] Update website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md --- .../best-practices/how-we-style/2-how-we-style-our-sql.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md index 62c5fcda89b..75250745b81 100644 --- a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md +++ b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md @@ -6,7 +6,7 @@ id: 2-how-we-style-our-sql ## Basics - ☁️ Use [SQLFluff](https://sqlfluff.com/) to maintain these style rules automatically. - - Custom `.sqlfluff` configuration files are supported. + - Customize `.sqlfluff` configuration files to your needs. - Reference this [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we use in our own projects. - We also support ignoring files and folders using a standard `.sqlfluffignore` file. Reference these docs for the syntax: [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2) - 👻 Use Jinja comments (`{# #}`) for comments that should not be included in the compiled SQL. From 0663b5e38d341de058ff1f1b4fb7de29e7ace5da Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 10:15:25 -0400 Subject: [PATCH 693/703] Update website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md --- .../best-practices/how-we-style/2-how-we-style-our-sql.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md index 75250745b81..cbc4e69e4d7 100644 --- a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md +++ b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md @@ -7,7 +7,8 @@ id: 2-how-we-style-our-sql - ☁️ Use [SQLFluff](https://sqlfluff.com/) to maintain these style rules automatically. - Customize `.sqlfluff` configuration files to your needs. - - Reference this [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we use in our own projects. + - Refer to our [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we us in our own projects. + - We also support ignoring files and folders using a standard `.sqlfluffignore` file. Reference these docs for the syntax: [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2) - 👻 Use Jinja comments (`{# #}`) for comments that should not be included in the compiled SQL. - ⏭️ Use trailing commas. From e3648a7b7332e50318630a62560286a31ee5e2d9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 10:16:39 -0400 Subject: [PATCH 694/703] Update website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md --- .../best-practices/how-we-style/2-how-we-style-our-sql.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md index cbc4e69e4d7..2845c1cbe91 100644 --- a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md +++ b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md @@ -9,7 +9,7 @@ id: 2-how-we-style-our-sql - Customize `.sqlfluff` configuration files to your needs. - Refer to our [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we us in our own projects. - - We also support ignoring files and folders using a standard `.sqlfluffignore` file. Reference these docs for the syntax: [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2) + - Exclude files and directories by using a standard `.sqlfluffignore` file. Learn more about the syntax in the [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2). - 👻 Use Jinja comments (`{# #}`) for comments that should not be included in the compiled SQL. - ⏭️ Use trailing commas. - 4️⃣ Indents should be four spaces. From a89a1fe334e8e7ae31ffcbf2baa17ca065232013 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 10:19:43 -0400 Subject: [PATCH 695/703] Update lint-format.md --- website/docs/docs/cloud/dbt-cloud-ide/lint-format.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md index 099641cc22f..77c1089ed96 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md @@ -63,7 +63,7 @@ With the dbt Cloud IDE, you can seamlessly use [SQLFluff](https://sqlfluff.com/) ### Customize linting -SQLFluff is a configurable SQL linter, which means you can configure your own linting rules instead of using the default linting settings in the IDE. +SQLFluff is a configurable SQL linter, which means you can configure your own linting rules instead of using the default linting settings in the IDE. You can exclude files and directories by using a standard `.sqlfluffignore` file. Learn more about the syntax in the [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2). To configure your own linting rules: From 7882282f5fd78895b834c7be02cf213de42686e7 Mon Sep 17 00:00:00 2001 From: Will Sargent <109557847+will-sargent-dbtlabs@users.noreply.github.com> Date: Wed, 16 Aug 2023 08:25:04 -0600 Subject: [PATCH 696/703] Grammer fix "use" instead of "us" --- .../best-practices/how-we-style/2-how-we-style-our-sql.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md index 2845c1cbe91..9684a498bce 100644 --- a/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md +++ b/website/docs/guides/best-practices/how-we-style/2-how-we-style-our-sql.md @@ -7,7 +7,7 @@ id: 2-how-we-style-our-sql - ☁️ Use [SQLFluff](https://sqlfluff.com/) to maintain these style rules automatically. - Customize `.sqlfluff` configuration files to your needs. - - Refer to our [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we us in our own projects. + - Refer to our [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) for the rules we use in our own projects. - Exclude files and directories by using a standard `.sqlfluffignore` file. Learn more about the syntax in the [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2). - 👻 Use Jinja comments (`{# #}`) for comments that should not be included in the compiled SQL. From e2466c9d3e9eab4e634708f4628e4f35b03e7ac9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 10:31:50 -0400 Subject: [PATCH 697/703] Update lint-format.md --- website/docs/docs/cloud/dbt-cloud-ide/lint-format.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md index 77c1089ed96..60af0961db7 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md @@ -63,7 +63,7 @@ With the dbt Cloud IDE, you can seamlessly use [SQLFluff](https://sqlfluff.com/) ### Customize linting -SQLFluff is a configurable SQL linter, which means you can configure your own linting rules instead of using the default linting settings in the IDE. You can exclude files and directories by using a standard `.sqlfluffignore` file. Learn more about the syntax in the [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2). +SQLFluff is a configurable SQL linter, which means you can configure your own linting rules instead of using the default linting settings in the IDE. You can exclude files and directories by using a standard `.sqlfluffignore` file. Learn more about the syntax in the [.sqlfluffignore syntax docs](https://docs.sqlfluff.com/en/stable/configuration.html#id2). To configure your own linting rules: @@ -76,7 +76,7 @@ To configure your own linting rules: :::tip Configure dbtonic linting rules -Use the following code example to incorporate well-written dbt code (or dbtonic) to your linting: +Refer to the [SQLFluff config file](https://github.com/dbt-labs/jaffle-shop-template/blob/main/.sqlfluff) to add the dbt code (or dbtonic) rules we use for our own projects:
    dbtonic config code example provided by dbt Labs @@ -122,6 +122,8 @@ capitalisation_policy = lower group_by_and_order_by_style = implicit ```
    + +Refer to [How we style our SQL](/guides/best-practices/how-we-style/2-how-we-style-our-sql) for more info. ::: From 2e9ebeae9f9bea422bed63935e786e9b50369e1d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 11:04:40 -0400 Subject: [PATCH 698/703] Update website/docs/docs/cloud/dbt-cloud-ide/lint-format.md --- website/docs/docs/cloud/dbt-cloud-ide/lint-format.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md index 60af0961db7..8ffd83ef00e 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md @@ -123,7 +123,7 @@ group_by_and_order_by_style = implicit ```
    -Refer to [How we style our SQL](/guides/best-practices/how-we-style/2-how-we-style-our-sql) for more info. +For more info on styling best practices, refer to [How we style our SQL](/guides/best-practices/how-we-style/2-how-we-style-our-sql). ::: From 305c92f007cfa98e1ca61d6c76d3e30ff315d94d Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 16 Aug 2023 13:46:32 -0400 Subject: [PATCH 699/703] adding eric and florien's feedback --- website/snippets/_cloud-environments-info.md | 24 ++++---------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index 83bcce11836..d815fd4365d 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -48,40 +48,26 @@ For more info, check out this [FAQ page on this topic](/faqs/Environments/custom :::important This feature is currently in beta -Extended Attributes is currently in beta for select users and is subject to change. +Extended Attributes is currently in [beta](/docs/dbt-versions/product-lifecycles?) for select users and is subject to change. ::: Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. It provides users with more control over environments (both deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. -Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials. It accepts any attributes accepted by a dbt adapter in its `profiles.yml`. +Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials, including any custom environment variables. It accepts any YAML attributes accepted by a dbt adapter in its `profiles.yml`. -However, something to note is that it doesn't mask secret values. We recommend avoiding setting secret values to prevent visibility in the text box and logs. +However, something to note is that it doesn't mask secret values. We recommend avoiding setting secret values to prevent visibility in the text box and logs.
    -The **Extended Attributes** text box must contain valid characters only. Any invalid characters will result in an error message. Invalid characters include: +If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the `profiles.yml` attributes. For each individual attribute: -- `/` (forward slash) -- `\` (backslash) -- `$` (dollar sign) -- `!` (exclamation point) -- `@` (at sign) -- `#` (hash) (NEED CONFIRMATION) -- `+` (plus sign) -- `%` (percentage sign) +- If the attribute exists in another source (such as your project settings), it will replace its value in the profile (such as environment-level values). It also overrides any custom environment variables. -If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the profiles.yml attributes. For each individual attribute: - -- If the attribute exists in another source (such as your project settings), it will replace its value in the profile. - If the attribute doesn't exist, it will add the attribute or value pair to the profile. The following code is an example of the types of attributes you can add to the **Extended Attributes** text box: ```yaml -type: postgres -host: localhost -user: alice -port: 5432 dbname: jaffle_shop schema: dbt_alice threads: 4 From 5f1ad3e26ada74473de0c410b02a8cdab801991f Mon Sep 17 00:00:00 2001 From: Greg McKeon Date: Wed, 16 Aug 2023 13:59:23 -0400 Subject: [PATCH 700/703] Add beta feature flag instructions (#3931) ## What are you changing in this pull request and why? add instructions for cloud cli beta --------- Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/cloud/cloud-cli-installation.md | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/website/docs/docs/cloud/cloud-cli-installation.md b/website/docs/docs/cloud/cloud-cli-installation.md index 383f1dc364d..6370c7f2c31 100644 --- a/website/docs/docs/cloud/cloud-cli-installation.md +++ b/website/docs/docs/cloud/cloud-cli-installation.md @@ -42,7 +42,7 @@ brew upgrade dbt-cloud-cli 3. Move to a directory with a dbt project, and create a `dbt_cloud.yml` file containing your `project-id` from dbt Cloud. 4. Invoke `dbt --help` from your terminal to see a list of supported commands. -#### Updating dbt Cloud installation (Windows + Linux) +#### Updating your dbt Cloud installation (Windows + Linux) Follow the same process in [Installing dbt Cloud CLI](#manually-install-windows-only) and replace the existing `dbt` executable with the new one. You should not have to go through the security steps again. @@ -52,7 +52,9 @@ Follow the same process in [Installing dbt Cloud CLI](#manually-install-windows- 2. Ensure that your personal [development credentials](https://cloud.getdbt.com/settings/profile/credentials) are set on the project. -3. Create an environment variable with your [dbt cloud API key](https://cloud.getdbt.com/settings/profile#api-access): +3. Navigate to [your profile](https://cloud.getdbt.com/settings/profile) and enable the "beta features" flag under "Experimental Features." + +4. Create an environment variable with your [dbt cloud API key](https://cloud.getdbt.com/settings/profile#api-access): ```bash @@ -65,19 +67,19 @@ Follow the same process in [Installing dbt Cloud CLI](#manually-install-windows- ``` -4. Load the new environment variable. Note: you may need to reactivate your python virtual environment after sourcing your shell's dot file. Alternatively, restart your shell instead of sourcing the shell's dot file +5. Load the new environment variable. Note: you may need to reactivate your python virtual environment after sourcing your shell's dot file. Alternatively, restart your shell instead of sourcing the shell's dot file ```bash > $ source ~/.zshrc ``` -5. Navigate to a dbt project +6. Navigate to a dbt project ```bash > $ cd ~/dbt-projects/jaffle_shop ``` -6. Ensure that a `dbt_cloud.yml` file exists in the project directory. The file is required to have a `project-id` field with a valid [project ID](#glossary): +7. Ensure that a `dbt_cloud.yml` file exists in the project directory. The file is required to have a `project-id` field with a valid [project ID](#glossary): You can find your project ID by selecting your project and clicking on **documentation** in the navigation bar. Your project ID is the number in the URL: https://cloud.getdbt.com/documentation/1/projects/{project id}. ```bash > $ pwd @@ -87,7 +89,7 @@ You can find your project ID by selecting your project and clicking on **documen project-id: '123456' ``` -7. The following commands are supported as of now (we will be adding more in the future): +8. The following commands are supported as of now (we will be adding more in the future): - `dbt run` - `dbt build` From 4b407ab29d842f68a10110d1571663aadb3fef40 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 16 Aug 2023 14:19:19 -0400 Subject: [PATCH 701/703] tweak --- website/snippets/_cloud-environments-info.md | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index d815fd4365d..7eeeea489f6 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -53,22 +53,28 @@ Extended Attributes is currently in [beta](/docs/dbt-versions/product-lifecycles Extended Attributes is a feature that allows users to set a flexible [profiles.yml](/docs/core/connect-data-platform/profiles.yml) snippet in their dbt Cloud Environment settings. It provides users with more control over environments (both deployment and development) and extends how dbt Cloud connects to the data platform within a given environment. -Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials, including any custom environment variables. It accepts any YAML attributes accepted by a dbt adapter in its `profiles.yml`. +Extended Attributes is a text box extension at the environment level that overrides connection or environment credentials, including any custom environment variables. You can set any YAML attributes that a dbt adapter accepts in its `profiles.yml`. -However, something to note is that it doesn't mask secret values. We recommend avoiding setting secret values to prevent visibility in the text box and logs. +Something to note, Extended Attributes doesn't mask secret values. We recommend avoiding setting secret values to prevent visibility in the text box and logs.
    If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the `profiles.yml` attributes. For each individual attribute: -- If the attribute exists in another source (such as your project settings), it will replace its value in the profile (such as environment-level values). It also overrides any custom environment variables. +- If the attribute exists in another source (such as your project settings), it will replace its value (such as environment-level values) in the profile. It also overrides any custom environment variables. - If the attribute doesn't exist, it will add the attribute or value pair to the profile. -The following code is an example of the types of attributes you can add to the **Extended Attributes** text box: +The following code is an example of the types of attributes you can add in the **Extended Attributes** text box: ```yaml -dbname: jaffle_shop -schema: dbt_alice -threads: 4 +snowflake: + target: dev + outputs: + dev: + type: snowflake + dbname: jaffle_shop + schema: dbt_alice + threads: 4 ``` + From c74769156f2fca07d66fdd05676cc8db062c536b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 16 Aug 2023 14:32:49 -0400 Subject: [PATCH 702/703] add like --- website/snippets/_cloud-environments-info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index 7eeeea489f6..67fdc9f0a32 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -61,7 +61,7 @@ Something to note, Extended Attributes doesn't mask secret values. We recommend If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [orchestrating job runs](/docs/deploy/deployments), Extended Attributes parses through the provided YAML and extracts the `profiles.yml` attributes. For each individual attribute: -- If the attribute exists in another source (such as your project settings), it will replace its value (such as environment-level values) in the profile. It also overrides any custom environment variables. +- If the attribute exists in another source (such as your project settings), it will replace its value (like environment-level values) in the profile. It also overrides any custom environment variables. - If the attribute doesn't exist, it will add the attribute or value pair to the profile. From 874afbbdcdf773d5df3e9d60775b777525d2311e Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 16 Aug 2023 14:45:16 -0400 Subject: [PATCH 703/703] Update _cloud-environments-info.md --- website/snippets/_cloud-environments-info.md | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/website/snippets/_cloud-environments-info.md b/website/snippets/_cloud-environments-info.md index 67fdc9f0a32..9311dc25139 100644 --- a/website/snippets/_cloud-environments-info.md +++ b/website/snippets/_cloud-environments-info.md @@ -68,13 +68,8 @@ If you're developing in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in The following code is an example of the types of attributes you can add in the **Extended Attributes** text box: ```yaml -snowflake: - target: dev - outputs: - dev: - type: snowflake - dbname: jaffle_shop - schema: dbt_alice - threads: 4 +dbname: jaffle_shop +schema: dbt_alice +threads: 4 ```
    List of affected options From 731438c1309ac5d8efe1e4f3a890254606d01230 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 1 Aug 2023 11:26:42 -0700 Subject: [PATCH 460/703] Revert one change --- .../connect-data-platform/connection-profiles.md | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/website/docs/docs/core/connect-data-platform/connection-profiles.md b/website/docs/docs/core/connect-data-platform/connection-profiles.md index a6ec4120433..8088ff1dfa7 100644 --- a/website/docs/docs/core/connect-data-platform/connection-profiles.md +++ b/website/docs/docs/core/connect-data-platform/connection-profiles.md @@ -177,23 +177,10 @@ There are multiple ways to direct dbt to a different location for your `profiles ### 1. Use the `--profiles-dir` option when executing a dbt command This option can be used as follows: - - - ``` -$ dbt --profiles-dir path/to/directory run - ``` - - - - - - ``` $ dbt run --profiles-dir path/to/directory ``` - - If using this method, the `--profiles-dir` option needs to be provided every time you run a dbt command. ### 2. Use the `DBT_PROFILES_DIR` environment variable to change the default location From 97b5c7369e9eb222e6825c43f8f3258fbdb76f7e Mon Sep 17 00:00:00 2001 From: Anders Swanson Date: Tue, 1 Aug 2023 15:24:48 -0400 Subject: [PATCH 461/703] merge only in 1.6 --- website/docs/reference/resource-configs/postgres-configs.md | 6 ++++++ website/docs/reference/resource-configs/redshift-configs.md | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/website/docs/reference/resource-configs/postgres-configs.md b/website/docs/reference/resource-configs/postgres-configs.md index a8d5af2301e..b2d1f644e90 100644 --- a/website/docs/reference/resource-configs/postgres-configs.md +++ b/website/docs/reference/resource-configs/postgres-configs.md @@ -8,9 +8,15 @@ id: "postgres-configs" In dbt-postgres, the following incremental materialization strategies are supported: + +- `append` (default) +- `delete+insert` + + - `append` (default) - `merge` - `delete+insert` + ## Performance Optimizations diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 18e4da73225..25b5264b71c 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -14,9 +14,15 @@ To-do: In dbt-redshift, the following incremental materialization strategies are supported: + +- `append` (default) +- `delete+insert` + + - `append` (default) - `merge` - `delete+insert` + All of these strategies are inheirited via from dbt-postgres. From 633c0aa40c62045dc026a3606374a1d863849e44 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 1 Aug 2023 13:55:47 -0700 Subject: [PATCH 462/703] Added page to sidebar and reviewed content --- website/docs/guides/migration/sl-migration.md | 88 +++++++++++-------- website/sidebars.js | 1 + 2 files changed, 52 insertions(+), 37 deletions(-) diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 908ef8e72fb..c57611494bd 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -1,53 +1,67 @@ --- -title: "Semantic Layer Migration" -description: Migration guide for ugpgrading the semantic layer in v1.6 +title: "Legacy dbt Semantic Layer migration guide" +sidebar_label: "Legacy dbt Semantic Layer migration" +description: "Learn how to migrate from the legacy dbt Semantic Layer to the latest one." +tags: [Semantic Layer] --- -**Technical resources:** -- MetricFlow [quickstart guide](https://docs.getdbt.com/docs/build/sl-getting-started) -- [Example dbt project](https://github.com/dbt-labs/jaffle-sl-template) -- [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) -- [dbt_metrics deprecation post](https://docs.getdbt.com/blog/deprecating-dbt-metrics) +The legacy Semantic Layer will be deprecated in H2 2023. Additionally, the `dbt_metrics` package will not be supported in dbt v1.6 and later. If you are using `dbt_metrics`, you'll need to upgrade your configurations before upgrading to v1.6. This guide is for people who have the legacy dbt Semantic Layer setup and would like to migrate to the new dbt Semantic Layer. The estimated migration time is two weeks. + + +## Step 1: Migrate metric configs to the new spec -## Intro +The metrics specification in dbt core is changed in v1.6 to support the integration of MetricFlow. It's strongly recommended that you refer to [Build your metrics](/docs/build/build-metrics-intro) and before getting started so you understand the core concepts of the Semantic Layer. -The legacy Semantic Layer will be deprecated in H2 2023. Additionally, the `dbt_metrics` package will not be support in dbt 1.6 and above. If you are using `dbt_metrics` you will need to upgrade your configurations before upgrading to 1.6. This guide walks through the migration process for users of the legacy semantic layer who want to use to the new Semantic Layer. The estimated migration time is 2 weeks. +dbt Labs recommends completing these steps in a local dev environment instead of the IDE: -### Step 1: **Migrate Metric configs to the new spec.** +1. Create new Semantic Model configs as YAML files in your dbt project. * +1. Upgrade the metrics configs in your project to the new spec. * +1. Delete your old metrics file or remove the `.yml` file extension so they're ignored at parse time. Remove the `dbt-metrics` package from your project. Remove any macros that reference `dbt-metrics`, like `metrics.calculate()`. Make sure that any packages you’re using don't have references to the old metrics spec. +1. Install the CLI with `pip install "dbt-metricflow[your_adapter_name]`. For example: -The metrics specification in dbt core has changed in v1.6 in order to support the integration of MetricFlow. It is highly recommended that you read the [MetricFlow docs](https://docs.getdbt.com/docs/build/build-metrics-intro) and before getting started so you understand the core concepts of the Semantic Layer. We recommend completing these steps in a local dev environment instead of the IDE. To migrate your metrics configs: -** + ```bash + pip install "dbt-metricflow[snowflake] + ``` + The MetricFlow CLI is not available in the IDE at this time. Support for it is coming soon. -1. Creating new Semantic Model configs as YAML files in your dbt project. * -2. Upgrading the Metrics configs in your project to the new spec.* -3. Delete your old metrics file or remove .yml extension so they are ignored at parse time. Remove the `dbt-metrics` package form your project. Remove any macros that reference `dbt-metrics` i.e like `metrics.calculate()`. Make sure that any packages you’re using do not have references to the old metrics spec. -4. Install the CLI via `pip install "dbt-metricflow[your_adapter_name]` i.e `pip install "dbt-metricflow[snowflake]` . The MetricFlow CLI is not available in the IDE. We’re working hard to support it soon 🙂. -5. Run `dbt parse`. This will parse your project and create a `semantic_manifest.json` file in your target directory. MetricFlow needs this file to query metrics. You will need to re-parse your project when you make changes to your configs. -6. Run `mf list metrics` to view the metrics in your project -7. Test querying a metric by running `mf query --metrics --group-by ` i.e `mf query --metrics revenue --group-by metric_time` -8. Run `mf validate-configs` to run semantic and warehouse validations. This ensures are configs are valid, and the underlying objects exist in your warehouse. -9. Push these changes to a new branch in your repo. +1. Run `dbt parse`. This parses your project and creates a `semantic_manifest.json` file in your target directory. MetricFlow needs this file to query metrics. If you make changes to your configs, you will need to parse your project again. +1. Run `mf list metrics` to view the metrics in your project. +1. Test querying a metric by running `mf query --metrics --group-by `. For example: + ```bash + mf query --metrics revenue --group-by metric_time + ``` +1. Run `mf validate-configs` to run semantic and warehouse validations. This ensures your configs are valid and the underlying objects exist in your warehouse. +1. Push these changes to a new branch in your repo. -**To make this process easier, we have [developed a custom migration tool](https://github.com/dbt-labs/dbt-converter) that automates these steps for you. You can find installation instructions in the [README](https://github.com/dbt-labs/dbt-converter/blob/master/README.md). Derived metrics aren’t supported in the migration tool, and will have to be migrated manualy* +**To make this process easier, dbt Labs provides a [custom migration tool](https://github.com/dbt-labs/dbt-converter) that automates these steps for you. You can find installation instructions in the [README](https://github.com/dbt-labs/dbt-converter/blob/master/README.md). Derived metrics aren’t supported in the migration tool, and will have to be migrated manually.* -## Step 2: **Audit metric values after the migration** +## Step 2: Audit metric values after the migration -You may need to audit metric values during the migration to ensure that the historical values of key business metrics are the same. To audit you metric values follow these steps: +You might need to audit metric values during the migration to ensure that the historical values of key business metrics are the same. -1. In the CLI, query the metric(s) and dimensions you want to test and add the `--explain` option. For examples `mf query --metrics orders,revenue --group-by metric_time__month,customer_type --explain` -2. Use the SQL MetricFlow generates to create a temporary model in your project i.e `tmp_orders_revenue audit.sql`. You will use the model to compare to your legacy metrics. -3. If you haven’t already done so, create a model using metrics.calculate() for the metrics you want to compare i.e +1. In the CLI, query the metric(s) and dimensions you want to test and include the `--explain` option. For example: + ```bash + mf query --metrics orders,revenue --group-by metric_time__month,customer_type --explain + ``` +1. Use SQL MetricFlow to create a temporary model in your project, like `tmp_orders_revenue audit.sql`. You will use this temporary model to compare against your legacy metrics. +1. If you haven’t already done so, create a model using `metrics.calculate()` for the metrics you want to compare against. For example: -```bash -select * -from {{ metrics.calculate( -[metric('orders)', -metric('revenue)'], - grain='week', - dimensions=['metric_time', 'customer_type'], -) }} + ```bash + select * + from {{ metrics.calculate( + [metric('orders)', + metric('revenue)'], + grain='week', + dimensions=['metric_time', 'customer_type'], + ) }} + ``` -``` +1. Run the [dbt-audit](https://github.com/dbt-labs/dbt-audit-helper) helper on both models to compare the metric values. -1. Run [dbt-audit](https://github.com/dbt-labs/dbt-audit-helper) helper on both models to compare the metric values. +## Related docs + +- [MetricFlow quickstart guide](/docs/build/sl-getting-started) +- [Example dbt project](https://github.com/dbt-labs/jaffle-sl-template) +- [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) +- [Why we're deprecating the dbt_metrics package](/blog/deprecating-dbt-metrics) blog post \ No newline at end of file diff --git a/website/sidebars.js b/website/sidebars.js index f108e580695..e358c8474ce 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -979,6 +979,7 @@ const sidebarSettings = { type: "category", label: "Migration", items: [ + "guides/migration/sl-migration", { type: "category", label: "Versions", From 91c84a6d8dfdf19bdd21455657da6fdad118ccf8 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Tue, 1 Aug 2023 23:39:52 -0700 Subject: [PATCH 463/703] Update sl-partner-integration-guide.md added a quick note about how to expose Explain --- .../guides/dbt-ecosystem/sl-partner-integration-guide.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index 1a7f5ef74a2..decad95a516 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -112,6 +112,11 @@ For better analysis, it's best to have the context of the metrics close to where - Allow for creating other metadata that’s useful for the metric. We can provide some of this information in our configuration (Display name, Default Granularity for View, Default Time range), but there may be other metadata that your tool wants to provide to make the metric richer. +### A note on transparency and using explain + +For transparency and additional context, we recommend you have an easy way for the user to obtain the SQL that MetricFlow generates. You can do this by appending `explain=True` to any query. This is incredibly powerful because we want to be very transparent to the user about what we're doing and do not want to be a black box. This would be mostly a power user / technical user functionality. + + ### Example stages of an integration These are recommendations on how to evolve a Semantic Layer integration and not a strict runbook. From 8f23228b130a36ac963cc7f10421231096121e65 Mon Sep 17 00:00:00 2001 From: Grace Goheen <53586774+graciegoheen@users.noreply.github.com> Date: Wed, 2 Aug 2023 01:45:43 -0700 Subject: [PATCH 464/703] add focus areas to 1.6 release docs (#3844) ## What are you changing in this pull request and why? Added three main focus areas for v1.6 release docs ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [x] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." --- .../docs/guides/migration/versions/01-upgrading-to-v1.6.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index ac3d7348ef9..cb2eefbea18 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -3,6 +3,11 @@ title: "Upgrading to v1.6 (latest)" description: New features and changes in dbt Core v1.6 --- +dbt Core v1.6 has three significant areas of focus: +1. Next milestone of [multi-project deployments](https://github.com/dbt-labs/dbt-core/discussions/6725): improvements to contracts, groups/access, versions; and building blocks for cross-project `ref` +1. Semantic layer re-launch: dbt Core and [MetricFlow](https://docs.getdbt.com/docs/build/about-metricflow) integration +1. Mechanisms to support mature deployment at scale (`dbt clone` and `dbt retry`) + ## Resources - [Changelog](https://github.com/dbt-labs/dbt-core/blob/1.6.latest/CHANGELOG.md) From 9925229f71f42aad76b324755818c62e6753e3ee Mon Sep 17 00:00:00 2001 From: Jeremy Cohen Date: Wed, 2 Aug 2023 16:27:15 +0200 Subject: [PATCH 465/703] Add callout to homebrew docs (#3847) Add callout to Homebrew docs, redirecting to: - https://github.com/dbt-labs/dbt-core/discussions/8277 --- website/docs/docs/core/homebrew-install.md | 7 +++++++ .../docs/guides/migration/versions/01-upgrading-to-v1.6.md | 1 + 2 files changed, 8 insertions(+) diff --git a/website/docs/docs/core/homebrew-install.md b/website/docs/docs/core/homebrew-install.md index ab80cc1148f..2e2676c4a95 100644 --- a/website/docs/docs/core/homebrew-install.md +++ b/website/docs/docs/core/homebrew-install.md @@ -3,6 +3,13 @@ title: "Install with Homebrew" description: "You can use Homebrew to install dbt Core and adapter plugins from the command line." --- +:::caution + +Starting with v1.6, dbt Labs will no longer maintain Homebrew formulae as a supported installation method for dbt-core and adapters. For more on our rationale, consult this discussion: +- [Installing dbt Core: saying goodbye to brew and hello to "bundles"](https://github.com/dbt-labs/dbt-core/discussions/8277) + +::: + dbt Labs maintains Homebrew formulae for the four oldest and most popular adapter plugins: Postgres, Redshift, Snowflake, and BigQuery. We recommend you use Homebrew if you meet these conditions: diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index cb2eefbea18..22111828e24 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -24,6 +24,7 @@ dbt Labs is committed to providing backward compatibility for all versions 1.x, - dbt Core v1.6 does not support Python 3.7, which reached End Of Life on June 23. Support Python versions are 3.8, 3.9, 3.10, and 3.11. - As part of the Semantic layer re-launch (in beta), the spec for `metrics` has changed significantly. Migration guide coming soon: https://github.com/dbt-labs/docs.getdbt.com/pull/3705 - The manifest schema version is now v10. +- dbt Labs is ending support for Homebrew installation of dbt-core and adapters. See [the discussion](https://github.com/dbt-labs/dbt-core/discussions/8277) for more details. ### For consumers of dbt artifacts (metadata) From 2b5d750592ea6c24e6026f550f8b26d7b65c967d Mon Sep 17 00:00:00 2001 From: rtol5 <110069999+rtol5@users.noreply.github.com> Date: Wed, 2 Aug 2023 13:19:46 -0700 Subject: [PATCH 466/703] Fix warehouse->snowflake_warehouse in MV documentation --- website/docs/reference/resource-configs/snowflake-configs.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 1e113d6a3b1..09ebe11f4c7 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -374,7 +374,7 @@ The following examples create a dynamic table: {{ config( materialized = 'dynamic_table', - warehouse = 'snowflake_warehouse', + snowflake_warehouse = 'snowflake_warehouse', target_lag = '10 minutes', ) }} @@ -388,7 +388,7 @@ The following examples create a dynamic table: models: path: materialized: dynamic_table - warehouse: snowflake_warehouse + snowflake_warehouse: snowflake_warehouse target_lag: '10 minutes' ``` From fd72047756d754b27ed50d888c8269ee6468e6f4 Mon Sep 17 00:00:00 2001 From: Amy Chen Date: Wed, 2 Aug 2023 16:42:07 -0400 Subject: [PATCH 467/703] add in new blog --- ...023-08-01-announcing-materialized-views.md | 256 ++++++++++++++++++ .../streaming-pipeline.png | Bin 0 -> 392403 bytes 2 files changed, 256 insertions(+) create mode 100644 website/blog/2023-08-01-announcing-materialized-views.md create mode 100644 website/static/img/blog/2023-08-01-announcing-materialized-views/streaming-pipeline.png diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md new file mode 100644 index 00000000000..ffa6d527bd6 --- /dev/null +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -0,0 +1,256 @@ +--- +title: "Introducing Materialized Views and how to use them" +description: "In dbt v1.6, we introduce support for materialized views. In this blog post, Amy will review how to use them in your workflow" +slug: announcing-materialized-views + +authors: [amy chen] + +tags: [analytics craft, dbt product updates] +hide_table_of_contents: false + +date: 2023-08-01 +is_featured: true +--- + +## What's happening? + +The year was 2020. I was a kitten-only household, and dbt Labs was still Fishtown Analytics. A major customer I was working with, Jetblue, asked me for help running their dbt models every 2 minutes to meet a 5 minute SLA. + +After getting over the initial terror, we talked through the use case and soon realized there was a better option. Together with my team, I created [lambda views](https://discourse.getdbt.com/t/how-to-create-near-real-time-models-with-just-dbt-sql/1457%20?) to meet the need. + +Flash forward to 2023. I’m writing this as my giant dog snores next to me (don’t worry the cats have multiplied as well). Jetblue has outgrown lambda views due to performance constraints (a view can only be so performant) and we are at another milestone in dbt’s journey to support streaming. What. a. time. + +Today we are announcing that we now support Materialized Views in dbt. So, what does that mean? + +Materialized views are now an out of the box materialization in your dbt project once you upgrade to the latest version of dbt v1.6 on these following adapters: + +- dbt-postgres +- dbt-redshift +- dbt-snowflake +- dbt-databricks +- dbt-materialize* +- dbt-trino* +- dbt-bigquery** + +* These adapters have supported materialized views in their adapter prior 1.6. +** dbt-bigquery support will be coming in 1.7. + +Just like you would materialize your sql model as  `table` or `view`  today, you can use `materialized_view` in your model configuration, dbt_project.yml, and resources.yml files. At release, python models will not be supported. + + + +For Postgres/Redshift/Databricks + +```sql + +{{ + +config( + + materialized = 'materialized_view', + +) + +}} + +``` + +For Snowflake: + +```sql + +{{ + +config( + + materialized = 'dynamic_table', + +) + +}} + +``` + +:::note +We are only supporting dynamic tables on Snowflake, not Snowflake’s materialized views (for a comparison between Snowflake Dynamic Tables and Materialized Views, refer docs). Dynamic tables are better suited for continuous transformations due to functionality like the ability to join, union, and aggregate on base tables, views , and other dynamic tables. Due to those features, they are also more aligned with what other data platforms are calling Materialized Views. For the sake of simplicity, when I refer to materialized views in this blog, I mean dynamic tables in Snowflake. +::: + +Now that we support materialized views: how do you fit them into your dbt workflow? It’s easy to imagine a world of unregulated computation because you didn’t put in proper guardrails and now you have materialized views running rampant unbeknownst to you in your data platform. + +Materialized views, just like any other materialization, fit a need and you should utilize them while taking into consideration the additional complexity they will add to your project. They are a tool in your analytics engineering toolbox, one of many. + +In this blog, we will go over when to pull this tool out of your toolbox, how to wield it successfully, and how to promote materialized views with governance in mind. Now this is a new functionality and I expect this to be the first of many posts to come, defining our best practices (or even redefining them). Also I will not be discussing dbt’s interactions upstream from the data platform like how to manage your Kafka topics using dbt, but would highly recommend [this post from Charlie Summers](https://docs.getdbt.com/blog/demystifying-event-streams) if that’s something you’re interested in. + +Additionally, if you want to get a more detailed understanding of your data platform’s support of materialized views, I recommend checking out dbt’s and your data platform’s documentation site. This blog post is intended to be a high level, platform agnostic overview to get you started. + +## What are Materialized Views? + +Starting out with, **what are materialized views (MVs)?** While specific features will vary by data platform, materialized views at their core are database objects that have stored the results of a query as a physically materialized table. What makes them distinct from a regular table is that the data in a materialized view is periodically refreshed to reflect the latest changes in the underlying table. Because they’re precomputed and the results are stored, you have faster query times when accessing them because you aren’t recomputing the data from scratch. This is great when you have low latency requirements for your data pipelines. + +Now you might have noticed that MVs sound a lot like incremental models, and you are not wrong! It can be worthwhile to think of materialized views as a successor of sorts to incremental models. In fact, depending on your needs and data platform of choice, you might wish to replace all of your incremental dbt models with materialized view models. By doing this, you will no longer have to manually craft specific incremental strategies, detailing how dbt should update the underlying table. Awesome, right? + +The tradeoff (outside of any data platform specific ones) is that you will have less fine-grained control over the incremental logic and orchestration. This is because you are handing defining the logic of what and how to update the existing table over to the data platform to perform for you. + +Other factors to consider when deciding on when/how to use a materialized view: +- What are the costs associated with running the materialized view versus a batched incremental model? (this will vary depending on your data platform as some will require different compute nodes) +- Does your data platform support joins, aggregations, and window functions on MVs if you need them? +- What are the latency needs of your development environment? In production? (If not near real time, you can make the choice between a batch incremental model or a MV with a longer refresh schedule.) +- How often do your upstream dependencies update? If your answer is `not frequent`, you may not need a MV. +- How large is your dataset?(It might be cheaper to use MVs for extremely large datasets) +- How often do you need your query refreshed? What are your downstream dependencies and their stakeholders? (If near real time is important, MVs might be the right choice). +- Do you have real time machine learning models training or applications using your transformed dataset? + +### Development + +When we talk about using materialized views in development, the question to think about is not so much “should you execute your dbt models as materialized views in your sandbox?,” but rather “should you schedule them to refresh in your sandbox?”. For development, you do need to create them and test them out in your sandbox but how do you do this in a way that doesn’t drive up your cloud bill unnecessarily? Or keeping a post-it note on your laptop as a reminder to drop all of the running materialized views in your sandbox before you sign off? Let’s talk about it! + +Outside of the scheduling part, development will be pretty standard. Your pipeline is likely going to look something like this: + + + +This is assuming you have a near real time pipeline where you are pulling from a streaming data source like a Kafka Topic via an ingestion tool of your choice like Snowpipe for Streaming into your data platform. After your data is in the data platform, you will: + +1. Create the dbt model with the SQL transformation logic that you need. +2. Look at the logic and answer these questions: + 1. Does my data platform support the functionality I need in materialized views? + 2. How often do you need the data refreshed? Do you need any flexibility in that? + 3. How am I promoting this into production? Either you will run the transformation logic in the production environment (recommended) and create a separate object or promote the object created from development. + + +Depending on your answer, this will decide if you want a materialized view in the first place (versus a view, table, or incremental model). If you have decided on a materialized view as meeting your needs, by default do not schedule a refresh. You can run manual refreshes as needed. Why’s that? In your development environment, you are likely validating three things: the dependencies, the SQL logic, and the transformation output. All of those can be tested by creating a materialized view without scheduling and running manually refreshes. + +Your configuration during development: + +For Postgres: + +Every time you run a `dbt run`, that will result in a manual refresh unless you set the `on_configuration_change` to `continue` which will skip running the model. + +```sql +{{ + +config( + + materialized = 'materialized_view', + + on_configuration_change = 'apply', + +) + +}} +``` + +For Redshift: + +```sql + +{{ + +config( + + materialized = 'materialized_view', + + on_configuration_change = 'apply', + + uto_refresh =False + +) + +}} +``` + +For Databricks: + +```sql +{{ + +config( + +materialized='materialized_view', + +post_hook = 'alter materialized view {{this}} add SCHEDULE CRON "0 0 0 * * ? *" AT TIME ZONE "America/Los_Angeles";' + +) + +}} +``` + +By default, materialized views are not refreshed on a schedule on Databricks in this materialization. To set up scheduling, you can use a post-hook to alter the MV with a cron schedule that will run in Databricks Workflows. + +For Snowflake: + +```sql +{{ + +config( + +materialized = 'dynamic_table', + +snowflake_warehouse = ‘’, + +target_lag = ‘`, + +on_configuration_change = 'apply', + +) + +}} +``` + +Now if you do need to more fully build out your development pipeline (making sure scheduling/syncs do happen), you can schedule but make sure to drop the materialized views when you are done with them. I encourage you to invest in an operations macro that drops all MVs in the schema that you use as your sandbox and run it as needed. You could even create a dbt Cloud job to manage that. This way, you don’t have any stray MVs running in your sandbox, consuming credits unnecessarily. + +### Testing + +Now let’s dive into the second question: how do you test? In development and QA, this will look the same as any batch run tests. You can run `dbt build` or  `dbt test` and then have the tests run after execution as validation. But in production, what can you do to continually test? Your options are: + +- Continue to do batch testing as we wait for [materialized tests](https://github.com/dbt-labs/dbt-core/issues/6914) +- Or overriding the –store-failures macro like what Materialize has created [here](https://materialize.com/blog/real-time-data-quality-tests-using-dbt-and-materialize/) for their adapter to materialize failed rows as a materialized view. This is not a great solution for the long term but if you have urgency to put this into production, it is an option. + +In order to promote materialized views into production, the process will look very much like it did with your incremental models. Using SlimCI, for new MVs, you can build them into your QA environment. For existing MVs without changes, we can skip and defer to the production objects. + +### Production + +When you feel satisfied with your development and testing, for data platforms that offer scheduling via our dbt configurations, you have two options: hardcode the refresh cadence or write in conditional logic based on the environment for the refresh cadence. I recommend using the latter. + +The code for having a conditional in your config block looks like this if you want to include in a macro for either the lag or other fields (warehouse, auto-refresh,etc): + +```sql + +{% macro target_lag_environment() %} + +{% set lag = '1 minute' if target.name == "prod" else '35 days' %} + +{{ return(lag) }} + +{% endmacro %} + +``` + +```sql + +{{ + +config( + +materialized = 'dynamic_table', + +snowflake_warehouse = 'transforming', + +target_lag = target_lag_environment(), + +on_configuration_change = 'apply', + +) + +}} + +``` + +You will want a very long lag for development; I recommend the cadence you drop and refresh your development environment. Here I just chose my two favorite numbers. + +For orchestration, if your materialized views aren’t able to auto refresh, you can use dbt cloud to orchestrate your refreshes. The beauty of materialized views is that dbt will be able to provide the dependency/testing/documentation but also skip or rerun the models as configured, enabling you to version control your logic. Reasonable guardrails for the modern data stack. ✨ + +Depending on how you orchestrate your materialized views, you can either run the testing in production as part of a scheduled job (with dbt test or dbt build). + +## Conclusion + +Well, I’m excited for everyone to remove the lines in your packages.yml that installed your experimental package (at least if you’re using it for MVs) and start to get your hands dirty. We are still new in our journey and I look forward to hearing all the things you are creating and how we can better our best practices in this. \ No newline at end of file diff --git a/website/static/img/blog/2023-08-01-announcing-materialized-views/streaming-pipeline.png b/website/static/img/blog/2023-08-01-announcing-materialized-views/streaming-pipeline.png new file mode 100644 index 0000000000000000000000000000000000000000..70baf10473e428a38c24f22922a14d3251856210 GIT binary patch literal 392403 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%0AF>+BX) zQ2L|x768lN!m3c?KgCrF6``&2nLbXZm|P44E7U>#>r!cKfJCLmU8?QRf%I?WWhx1| zoKV$PX6cK!Igvat3BSW8eAAkc3adEoz?Dp;d#HFTs6ffCbEi#u( zNn~x+>_zVhWi@oh#J+u0>o|3nckxKc0Mz{CCQk@MY*$k*f+DZ)s*QnU=fO}K)7)vw zos89E$&YMvZiQjLGh9ecixbCBC^4BDqF+;w+Luav>MK<+ zVRM{1=c}MQK_A8?Cw!@uKDI&j^_bIx;JyBRv)4Va-JQ^hy(yZW%mVCkWA4=Bx=b>F zqd({_fv8>b(a4z|s@6$_!U(NpQ=LTWQ3~*(86)?^D<#!!8hJF!PO4UGoR$1tP+olG zXO4dFFXoit9Z1O?yW&oL?cn(fpvDWVu5JGk=EN}70SO|;`zK=G%(8k;IG{st9lK{- znJ_zfS{*Q1=&yikI9^-w8}K)hqKNAftWTG_d0B)3Z9}>>|9o%r9>|aCt!$4#s^NEt zHm-_jegm-|PLgmI?hdGt zbxzuV{~3IS@Eg~cLNK?X?M81uODaodUoLvpx$Bp>u$$gZC;qheVV%15Y&jmM3TBqX&L606}KMYF`7 ze~7RrLJwbQ_YV5`pXs>wY`_HNqzZ^v9NiJl!NJT%)ylDYP_|*SZ*6?gAA>tOr^AG* zVEyS%bcYX>6)pcA{=^YRSAANBLmEDM@8BDp!7E`IbD+~F}7c*-kmjQV7!fEZ1tUyX|`KI<&j>V|6 zSx=KrAap)+SHgRtV!;XE=&}+bXDTM+-f7JDP5Z=TRW7=D?C^@+M}5wooM4>yMse~*!M zp|oz9O}Mhw!CXs695Xsv-+nCXzK-Wvp(#2(t7Va8jITX$#~aQ870_q~(i>c&v<j ziv3<@94_DD`mxs(SGu$N1*pX8Z8_GK1?V~463UEfnEpNChuURphVitO1Sfq@ZgUB= z;$pkX)kTk99EbB|lYb#*%D7SGdV{>&l2sfNxGY;T+u1#>>vrqKdAqL!qlkN}kf7jI zF}U5j?DCoIHFoM)$z{}@X`stZ;AFlw$c2<{+aaeIWQuYsKEMZ9@}awBI+?*_?X!7% z2FP5oC3uH3P5+DGZUJiCCuYZ!-VW_J<*7|9Uqx3pq;J9&-{UuD@A1IIr%Xoaf&ZIK zUR~O*U`OZe%!<}vMUe=5MveOX(9hnVAgd_fVjuF(GQdCoUrzgfF8lIgXX#k8v3&mR z&(pj4rC>5n^wnmOdE>(!(JU+X-dyUF4;E#DE;x+qXh8s+3)QCVmk}GaeVd;wkj!_~ zu-x>f6ncP66qWYfA@<%hmbuN;tyr4HVjN`G(^4W0E$*M5mkcDK0{L<5PN3_4g06vC zUJDhK=Z&hhGmPCt$6W5|uoa8gSqBvVL`!>%bpS zUQ~*?EDYrA580fa|Gr3Tu$Z~(5vb1tT@Ow>v=U9#Q6nkGS2TcHy3)$w4k$E9%GEU$ zyf=dt|J-e~FWLRUIronU_h3uoM zOr+GU$^rcSfwzYq>Kq^WBj)?4Yyl_cl~=JK%gyMK1GWc2Q**h>9m~aCq|7L*uA1Ck z>voERN#>p`z575yaJdT^ljQmU-)Cy%WyaH>d8tmWb-rV?Q1|^vRMjh|6EBK!>WVin z3aqbs>=f&N(h(rZbdT7-w&tFHoo)B%r(plUj(oJ_Z%!5YHb4pPjy#%JmKJW{gajL7{txy`6-<`f#Hceu^{13m zVq!xkebbz%nlJAh;BuT0<vROt?)1ywk zq&3#!$j7PewfkB@!c7#iE;jE<)=_{O_XUS>StB)PqA0r^7*@P{G3Kx88yedFAu#Pp zR9*^xy6Cur*qPPTaBC|*vR9PRD7y9I$KNjw9J0nU;m={vUJ~;0>2_04)eP5cBqi*2m*DsBzHLtM_u=N9ar++dJU|sn~g&sp?gKmDt!tAQ0AKM(`$2gG#pjpTG6?G&{-J>bnq6#^iOMarqV} zv?QV(luFO0RsW{UAh;+A597hj;E-cAhf@4?`;^f?a4{3|U*O^o@B^}c&$i%th4|&J zv&fTlSz4~cqM5m_JgVuvW2Ih+3@UBjWvOoe>;U5SRo#(VBu6oNTHZNFk-eHDmDwE%%HsYtj ziKEohl0+RKd$N(Tmt}0@QjdKK@Pe<_9-9dnSAVRk&VCO48G+pWNHtzpE;;(oGrVJr z5YuB{({)P&92pHvQeM8ODjh`rgx>(biauFQeAi0eQQ49rkYWGw0{$2lVDuvw_r=g3`OQu`K@xy-^P~HS;rnTCQ zpzG-5f>sq{l=q7@ZZ@c_CD8g0yX~*Tb>J^`(Lj`de|2QMLa*qxS`3eWl=53!AHi2} zkyu7zRQ5XE^$X&vf=n&Jm(eoUvC#>5fCD!d2tfI-ERtX;P4G9-G8JuI$&wwzX_y~) z8lZ_N!%|WhGcSSs70Q)%^qrFT_2yI$7S2aKF?aR!vyY_fXnq|`Qw`@j$>k5iJh?F6 z-i5WSDy|`Y!-{sS(vKs!fsoM7thB?g23R=mI_X+~%lJ-AhX@uX_0d_EKp0adJx$oo zxGSo#k`M2d@`I0W#8&tvGp-eZJPm1Q79-=i%59ej$Dp#7>Qk{NtOen5zbVJX7Bt|> z@qtepf2hkr^8g*}Pqe)pct z2M=^MZfe*1>qS$PWjsS$9QEu*)F$P;_#Ej5lgYAl3vk42>NR=Td41G9+PtX?BWFWmP_S9b8z7L&pPK7AiL5> zM8y{8`Z7QdYTmxr%Y00Dru7iITkP{$lD}u7iT|$xqTC7yr4+`zz5BzwKu|O5zUx>h zLiutTa!i$u*)36yU zE=S4*|1}@=w0qWE0gUZR)}I4)Sp@x*DJ$U(IPm)))Z~q3J(FMr@-xq_yj33A1CD*~ z<);qiCR?x?2_H5-`L5Kz=ELpVw@R^h{aGEzD?Ch7x@n*#5UvJY56_wVs!B>UvxOO6 zl;nLZJKstyC5-sl7wqC@|<;JfqnpQn>=J%95z z24`1s1OC+b6|cE(HHbNZigt@>W`|8cEzu^K)8nV(8uaXvMVmzhK|ZRGw?Z!-G>?E( zB*c2P(1EU{4&y%NNaIgyA8VksV~&z}G`EV9WOv}w=m4^cRgw$xHks?DfFJfrKF-ug zIk0)H&lL%x#x6nQ_=Rjt&kAO zAFHk3WXu8O0YU`|0HVyub8mjKh0mTOi3s`a1dvbM{juW%NiLH9FWUU9r#pZts4`1R z77=+Bnq+MJ;RhZf-Mzh<8Xc^^4UTEr+>3iY5t?AWe3V6m5Cfgyj=)SI4>w53=+b*zOJ40)H{rHpS z^_{!qD6lcYoo4rHNK(?7$UuJ|W`8&>ZO|Kw-b-QOGisDIncI2hyr!{LA?0Oz*EX*J z1ObL%)cuN?H>flpasQfEq33Hp{2k$RZtY+tn{EFupv#l}biti!e7a2@GvgbYR4tYz zY6M>=SgnkcgXi095)>m!lAYI;SBdW5Y5$+Vgg@$FO^^6D=f_grN^<~6Jh@qXw4!+W ziK}@)KlVC@GI)!O*H9PK(ER3o?Dy>M0*DCu-tMq%C9k=Oug)R8uB3zEwZj|9b+Br7*zcRRYd5~ zDz38plJ))~8{PKV)Aj)4l*wK$xOdKqr@c6aS;pu*V%f!~BSEihhS-kN0qnKF1=EGD zn5$+VjH@r-+oxnopjG1@AR7_KC~QROpi1Mnui>e#;wUnejSc2{gcWfiG+2TC_0uNt z5U}v!vdwbLf3yJEA`2lh$YC&#H_-!R4>%~s<7U<{aBzhXG#R?`a13RHhMhf^V|)Q~57Cx?r-HMn~QZY;#EkFUa}_YK%$ zKb|AAB7^7lc7F}&TW`)P(?7?hfC#VPH>7o9|V?HPs&=`*D>n#JL+{!=EAOyMpqz$NJ0L&`IrzzS84v zj8!iEqvq`=rsm2%r8KZtU)y+l+cmW4U5CSqs^1SKm>qpqCUU*|tw8-Z?Nz5Vtswd# z_qZG6K+5$skk!OqNB{Jc$%Pt;f+sZ*rRpJPE#43$W2F^NE+=>qv~|ejCOa5ZhVHjz zIV6*>M}o2vr+$EWIHhqUY3MaG#8yxeQp9M{zks#u=UC_354yg~*c+{V#V1yypt*+o z#CmY|Z`Xj-zQ-{=6XJ}avp0b@*nZXbIR)(Fr~}zT%Cc%Yq(w#CZMU7zp2KLFNt4G` zF*9DjLeC{HI@SQ|nAsBF->pqr>0NOH+w!&Vy_^f1k1nBy^@z(tyXvnJiZ5OPVfznJ zgHPwG+!Hoafh=Mf8d>LsA8_1Jg-r1MF2}V?7r%qI9<<}fadnYF+GnuRaDq?0B(@|? z{FrH_ngGsf>#Uo&rQz^&ETgz``&^~6^Y&&VD#M-RyKh28$HGr{>GK@N{h_pHpf>f$ zgXTt@+XIJOFzl+!^D`kNUs}Eu9JKq)4+^_`wq93dUN-NU^0$Vz|BDq*u|8B3D{D~! zs3|NQKYIBPjn~&7d2pK5XCu!h?Z)1dhZA7DO%h6_TYBy9$AR%Uq$V8$IezYIDiN!@ zwxw+t!d#z~LX8}V?;6=-G`v5@%_2Xp*z~+$fV5Xp%1-Q>wxn_ipR;UBeG3dR6ZVkn zOjrnfb9~o0t+W^`yNpUp4d~ukwq7tZG0C+VB7gmZuybOAr#2Ii4D!LXzuxq`@7ZP}KMn`?`By}FO zD;?!e@eA#y!9O^<*VpKH(RjlCm6MSYdwu{fDloP-;=<95g6>_Q1PB7P+z9; zHd0g{k|X=gl=|YF{c)a*ix9Z2u2Q6Ix`A$g_(=|grEFLv8(T;pYQG^%R_Y?gAoP$g zCIepH{Hr(*8szC9HS*b|+G4XQyfKX^r&l|PDJE(n?1i@G`(VnwsEBG^*4>Czp9zw>F#?b?xr?CZsmKnaW}HnW%)606L+7E zVj5)O&CKpEx%uycjjoIxVOJ?*Go{}$=Ay0cgl7VOQFCZ13khOL+l1V`la70@tw0fD zS*!}RVk14E6?_WwtzCGw%D8Hh`%QXVj~{ek%Bf$9-Z5@NL4p`2=nsN+?LYRl90pMu zW#tuPOBxZgTY#KcjvB_>xo5Gmre5)mM~8rQ-T{${|6eb=6;24;pFXs2>T2eXvuj zEcZb}QhuZ%k8#?`re;p|(k`36f1$gkH?W9XJs`V3)iMbxu?8_E(rPsPUUv>Rb)qkqxHL5E;G73ACT{z`3Y+qjr?=aR5X~zahD?iTSPaJ>F&C6w1 z&9fIRfPdy`9+)RDVOTHQuBeCwa=sa5DO;ru5xF4Rnt$wOEgbBF3e!9@n1iSNT|nuy zlz%_}$kioQk3if?Vurn2`O8GRjJ0GY7&0J*-O$h2B^`Ha6NrZ(N#@IgX?{sA&~VU= zc!efvzxK*AV<3Y&mC8NCk!0&2eSi%ANecWot*K6n+;$hLjy!IXma%FH=?e~vOh^uk zjOV<45lf@0albWdcO}I(e%!>gRmJur%&;)!Z-}$mn01c+t8zPQvq^>1td@>K-MT#q z%vSO1Use>C#lkax$MovJk&dstglOCyh(sKiG2MjP@#fG6kvTm=dt@0{RaRN^2@OZ4 zF8O~jwy7WES(>wm$wTez3Uq!mbtEWoq_xQH#Wx{gCP7I6#Z(?o%9o5;8Ek_za&Q87za{qOWj29eR!Xa9 zT`SE6QOQ);q3-*TyDpv%V4GfzAxIgRL;w!rGO^CuFnR0=1JexN8fM`8V)1I)4tD74 zK&@;ZgWi;?^gToW+-ysD4J#iT8a4HYlq7}4FdsE9-z?a2?_QRgsAr_Fd<5 zJLmjG`w*n_0;l?NxRM( zm@Cx1a%c5vGaohA`4WqRS^w4JqUguPP9Gx-IA9!N!LU24(dX15@s})arU+)?0S1AU zl8+(r>hisyR=oIV(|yc@#)_)`_2D`9c6Tal-6^$C?vL+!d|{rSoQQ_%HMqyCmJ((h z*qtQ3gd29&_VGPhWs8lV?4aV2^u`rNsXh1*R^;wFiFFBH1Bc)m&O%J8>ug}A658)& zX+no^S_WZByOs^;woiTT@;2d*CQkGH|F1%y{-Yfo%jF-i#8)*_$&(~Bh(3NF3}p$@ z|LtcYVK{47S1Nw}ID=W;Nae;Q;r+Xt!IGL*Fil(W(Heumd#8zbrKlHCy~CZK-O=5$ z;RisB!B$F9&3dRjhYiJJE~7d#;8?*N`}w{`?1+TWL#;aY;i-xVhI1(19_&V;!huc* z`{Np@&AAW&65!y;^Cp?*m5V_~Y*;_JlHQXGj?!BC&~@z%9)CFLGLamAD34mt>f(=9 z)1%BoSsw##wRFCb>;vRkP5ofV{oNSZ2Xhy-yBR#+2*%j<hr-RAf`~tNVzE04z!Ilgp6M23?pF0O_y8A3kqie=6q3N> zMPy<(-g|5{hK_r=z{_JENNZNeJEq$zHjVB*PP>3%`6E9YYFYX4)7ojlq$!C?QPZSRG_r5z{Lbi>`pPIj8)v(b_iu$KiIiu^;7$_KHHV> zKwy20yKH{f3$G+-8apK32YbI%F+S_3EFK-1( zrR`VRh^;#c#wzLxOe_J%U5p{Do7|g6!9T3dj=dCfFuTQeX?|5zeTU=znrAJZprx0i0Qph* zShkEWFm#=bfa!Rxd*l6WzH2-HGg>_iiD$*IX=3&1?o|0(V;3|*-J!usN%TzpaWGt= zGy2X}^;^fUtzL3R4*X+o(c;(89BFT}<-kL$k=hP~SRxq2r<#$D`<%!#dU+bz9)EH*TUO&HxGGlN zO=DY|kLK5kmn*2_wxWri{Cu>cxhUNJyaIQAG)Y5ynVF z>so$%#{#)-!d*2WK6TCF@yrmhc(-C_%kY>kSQ)l2q?^b{59cW97KN4#!~OpD2k07kM-`_ zccsgK#?Nqs9GUMo-}%F8(>xHRFHM?nNhdS3;a!FAv;5oU<0jG#xcsM>(4duenW{?Q z8Bxrvo8a-aZHLwGrg&$vZHbG$r5vr{eD?9MtvWzvSt>$gl>MWkjcH|7qFkyKk0wJi zT}DafHlXaL^&YB6)fl+(sjt>Ns6m-lJ?|ri<=2TI!%=mNOQtL3!bUtV+q1j$BYYN?IXiESKLT-?n&)AanT)WqvhUhJE$+_T^{w^mGn?bgLFMPxk@x->R z!XRO_#&=R$eWY9imHS?bqM@AFEBGHOA7b2=jvPOQY?7zRPi-(h7l^VtbW!;!?tB&d zNU+nbOQfm>w%=}fiFzcB?gwlG@F8gE`()ECWe&_#d}-q$Q?PY1DFNnW?8ax6 z_C10Rn`A5RZFMEmgLx}9 z4U#^;?V1mOp-f-ZT1wO0h-uv~A*8HPRZy0yoakSB4{@qUMw!+dE=>J~hMQt^ zzUPHY8+n}{h|b11h0?V}4P;19D+l2nS3rpO@BVrh<4G0|{FsLCpMfhhLgK9!chbx0 zb8u-hRvq?ew`E*~EaLHq8vHw67+7hTOg83J+A~)1;nu_3SB540Yt7!8E+*Wsls6HZns*ASwxkw45)nO4-?3C zcq6m$v8i|waUXp&4r>hNo?`RjOPXg%XzI5_RxO*R->jheIGrCy^?9*H{pL_{$tx8L zeo)3ALQ2Xck#BgKUr+}z8?I-yf6|p9QEt$daNA=UdT#EbHSziG{c{&D*7!~`5Hps| zYN+%G8H;p2WIM-kTBCx<-$tY!ry>$e)x`o5?l%e;lQ9pv9D2#$f=9wqQquH=EfHTZ z`=R8A(3@@Vposw?sY4~)~E16hof~-# z9fUIl61d21=7V}7Y;?D$8tjxF@sP420rDgVMj>zmlSZi`4un7Wmv(XVDc|;$1?)E* z87>R@^dj~jNt^$Pm^26`CW!Xg)FAQ*-m&gaQVKZD3A#34vGePZi1H;@t=*q`De3XI ztSmFJH!h7Jp?_8kv@8>7;1f$|pXSneBUhbjrpqf;L#(Pj72#{ z)$=DK3*LW!8SX}vRX+UPW4?W3#X!EhTIcs-#r$Glc5~3RAL)hV53Hofn!4^p0Orf@s<^E~iqF5A87{9WdH@ zIt)-L^+Zn>?xq_U#PXOHm`elg>ak8`6R#Rw5=$}CT^iVjThv3Gi+MD1YQSSS2i_*h zT?UI^OO$d$o9+{%6Z~<|&hrRg0%5YL2?x@$Mc2&HEEFoV;D0ZKKgQ6PAMb!k(Rosd2NolyO7k!ubFvJ6V0$ZZ$+k#}e`J9zN7D0n z88)EkWk$449fI#Sx^^2H(sPFuX@l%10Pd^fSFd$PALr-yO<)oM#Le64M{zUQZ4yO&;-)Ni^jLX{

    }!vLOo(6%eHTgmsqD>y^!GV(VjT*Myl;%$VdRh3TAyQfh#oN>RxE6O zRzH<4KzUK^55Z4+@8)xuV;FvqX0(mrV^rL-Myp0tj-KOq{9VyW{O%z>%%=0;C*co#N@`%45!~eNxAg~r|nADly{ z!NUv{oc2?vi;P;N}B5MS=0&X-sQ+w$d~NlT9>(Du(Yb3X!f}J+9#&PMmfWor&$SqYK0oqi7AhTgCLxL)0oieI#4(Dy z(OwW>A=GKtT4J6&CH1c?|E$s@w&Zs{P4m&fBimkf+=x_q{SEyxe>43E`_gl;LUIXv1H+-oe6Ln$@f(*ts`8}dA{|@i0OK7Ae z%F}LN95o^hoh5Zwlr}?FoC-AZv_b+Z%O9=gJoZ&wJp7UMaNBY`X=G79KcK12o*B+u zPlkoS7U8DJduL|Vmx)7|$ZAf^v}<1Sg?sE)fev%lg#Kl_%Julk23;hkghff=_jk>0=`>>D#qQg!U$Y6t2V zvujeuqElgm=kLmW{n=U!`z;S-o#@s^QAmhowAU~Xbe|*s{+qc=Vr%Qo&(p_9)e3i0 zlJ8CKblZo;$>fhcHZR9_BHR!ced^M}{e^H!^vueWo24Go;)twH!&+M5gcqaTJcD&u_6`M<~j3oXSpMEnrmlhShnyP z{K*~u>rCB^(cJLa`W_l3)=KAvs>s3hf0K?x+QqR-_sCU7!!2H-?K7Cys}5fl4udLI z%w!O+Z{+e~+VF3Y&O3{RNR$%W%{ugP3F#;H6q8EfpLBJgk@)@FLw zGpqm9cu|nOa!jCHgt#@ZVOiK=rA-tOczmEx8U@V3)5~AOm1R)#u%_{WGJlpY0EQaO zKMaa3k#`m2cw3>VMx5Th({);Qc-YSTL_M)6bl@2y&)2!I#|`(+7Hs5tyBmQ3jQaWE z--zrVkiAO5_8am#X_39J;0Yb>wEMGAy@nn1A1wd{l6)%PGUNSm_*kisX-NEs57hDJ zgM&|Jj8CprgwT#OUvP(1OSEeEf3USj40j_S0r8Lc_@;?J^h*mq{?tfxAii!9kj*UP zmwVIb6lweTWw{)*2<**Oc;&mtVOgd^a0c*-)X#ffYS75 zg(>LtVAWkhKcrO z>+}UyEP~Wb-Y(yzDPV9LGa|Nt=Df~PiXU&al}m~?8_*q@`1?tHoNm)&DJ_BJ!&S+V z3~yQ-9KVC?(Qx-!4wgIUE|y#?kkl>;wvi9lj&&2{iASK&rQUF2sMtksKXJ ziB-FD9PukV$ge=uPjszMMM-(u`@}(fwNPmhp*%uqsss%e?0meKs=B zf?d^5uk;s@<8`3HOOufGya;)P@8$F#ZnMV<&KI+ zW7it@Vr&`D5l>|@OTxeW4+6KXM$3qq3&q_gsfrG_qCNrG1#3X4aV^8kmB8u@T(sDJ zV#eLSSmV->S|9nf_o|m;^O+e{2YL&>qWq;42Skq}0o=J)dZPaB^$yn%^UBV5IUlqBupr5jqqcegD;r*s{nHP3{Ofhgf(#2=ne zAMRMg3IGnLmo(0}eo}Y2-xaJVtyhs3Zly2_s43dH`5ATKVgQh+y0=)+q;Fk7GkU2d zn%;K7O3q%4q}6Bz1x+;$&@b+|CZN-zD|Xy|ODK$a3-Uh?VxxH%*`{>FxbeNqnw~qI zTO+H8n(@pJCc+|Nc8IC=87jW=ZN<@*wz|g;pN5*&LH2iotZ^9}ubz4#oEjCAT9(*5 zq=$S(QmmAQ?!`?<8i2z(2pSt)h1S}Dq>TdjWl7EUdp>!SphDYsgR5-G@1|)TZ2r{F zwRaddu8a#%pcwo{xiak8!*xjiqaoNqoTbcJOd8_x3$exb%I^(^CM{eN#}ld|Q6v-*IKOP&gnKBfyQDmWszje-oh6k9$3QD~CAdcvTF3GGl2iS{osxraAgw$dvKF z6zZTP0PimQ8X3EATjMQCw@DxyXUh>U@NQe#u2-n30fxBDa%@BRlLPs;&is+5A z3p9(WmxT2AadwQk`HzmU-pOq-E%mj(q)XQ0M{dnpQjM1~jeyl6*dG%{HI35-_iau# z3rbtTXBP0!#)Ca*+mZ70mrIZc7odq-r4J(xY<ZR;a+tQth zhyC~tch#@!_EX4dB;`R`LDz4}o;$ggS23N{6=oqI95Ik-SbM> z#0%V>-)XzQ580BJ_GIJvMn%_;r2SDauGgF@mYpkQBrEq&xJ2=rbu*uQcTMTkS?(LA zCn)*@DSYSJPn~G*zjI0mdzweSZ=X5N=jL{_`jTSN9IY~}85C8Bvji+lREH~HS2`QU5A)$vQ6u2f6IDnMRkGg0uF<{vNS6C!j$aQJs2!NHLJu^uPJ>sq1yMg?$aG%2%-DJV$bPhu@&XWGI1-HG`o>(xTYDR#(b8P|pS!>=S6f#b@&I+UG1@t@3e z>&5Y8)Z(LM^u{;REZDaSm|AQmx67Ij@dG?O{ofbq%PVDX;T{zBDrd6Bc`-4o1-0X*Fy>tATD(-*q-PSQ z6W-dL3u5FT))|n$a?zoFNu0)e`fMVQ)rw{zK4Rdaek1K&$l;Es`PE=256305{X)c^ zn;=b}Kk-9JMZopBmTk57QZ=P6}|@aQ^%ZJk>H4T&LPc7NJ+JH`IN& z+WfR4#KC$e7Vd%h;z@z_IV*($W1Ih&jFTsxTwL$UvW!O7FNABHt_AzvB8Os6F1BF* z;j|r8MIYaB(S>~V_4iJ8FP$}anqb;bhnk~8ZHI0zDrNmfSlukw-uT{c==y1L)GG|r z<8JFDdIYE1lK<`ZP;&7wL1=pKmD5dMW`teQa5|)+dRK^gkd0%<;v-V=jS1#iTsdWC z!aSNe1g4GI$TW=Mgxgw&gi;>_L^EG%VMvUrjbt?|IzM@~ry?ynr3uimF@-ZlA$W?j{&hzTU=r3+e&gZn@H{bt< zrsdjFW|bWodUjp+>2{4tp1!+Z;Wiz6E{~c5X@RzCk0e|7sW`!ICU|&^BICMXwRU%R ze<|C)fTnDyI0)2vwaJB+5M&3x!%`-Yi+cBi-EtDmd?#QB`q{caE*Q3MX?hjw)Wu0` z%?Em2TCVZntBxKt<8VWaO}VNAX-qcfl*6E=!#0U+h?$nA$l`{rl=h(Tb*IfTLc`>g zT1MueN$K5ZD<%fW;NVZkuvDN`o3B*@+{#NcS@lE##}EmqDlR{7;RsnxPX30LjIUe+_gNMmSz zbAHI(puiStE;nf^enLYelE_pFT)Lt;|B;yJ+dsktMg50yYtOAURKx%{g;!uAiUF~w zcI#G4|32FR-zzRzfQ`~^gzW+*7VbbKG~eog1D`7rz0SV4QJJk@lXlBVTd8W;pGvPW zQXn~Y@`X1(deq@#cnDkFUA^wU;y+yEDDOKD4aXLo=@bi(xFVl?uGDyu=tJIG5LOX( z`wVS$#|%xuqB(hYhmYWR4zq-{&FW>kXZq{(c6+TFt<-quJo4!5SgUD};O4%lJ9PKI zKfWt`^v!tmg?26)6ZN8;VzI{HT^J{Uj$o(fXMU>26|em(!vDjhy?SE z%*BK^vu4gj$IA0h)akO59X3q_cd1#DWpDyYhf4eqqFrV6;QywU|0K8keQ6Ca1NvS; zlsNmkP3jHkQ|gd)1#3(jw{6gV z8_Fa7d|9Lzd7KL_0RDKwb#VVL&Ine{{Pr}_jsoJ|9|{SB&ldZ z5^|a|MJ0zJ&H0pba!N?0h)v6!E|oMnACoZ+ofM&Bo6*@RV6CrF09tIcx>qr|vr8B^`mF>I1 zhin5D0#CVBmilWhZTzG_{J$TQdk2i>KO4`v&n^t{<_ZNVaEy(Yh!_0t;s11S|1JK1 zTkp^9;QyU?H~tGd{{`LuQqKRsgj>2fFfedt2w`!}_aW0x?)6CFA9wOxe?~(9Q6aCf!vu$#d#=?3C+tTMO`_QvUy@-H*anKv0wY))8^#YPMjsrOvLQN z(ebgcgPXzA&Z>bo_?HU8@R;$HRZqO#9vSsUZ|U^c$fe6fm?mR!tH1fm;>jj6DH%eV z{@F8L;WApSO8T05{<#u)W>MdBNePygh=ut8H#NubkrP=o3X!;T)IeKW3BFVQ_b?C^E zt0kS1l6ii+TRxP1J~=K^Q13XE+*>$9HaO#(_bzQru{tvH{F|z=9XhS`RgoU~(T%pF z@7yxpc%4lLda~!QJu@w|Yk8P`%@-S7z2qXBFAT1w?2f6k+%}$^-W5g$g%+Fe>5z!I zd;5>5+t6FlRZbN@zR1x#aCz6@)5n~Qjm6%}WrnTZ^fG?t+4{MDa^HFttk7&n2TZf8 zCf-O(av8h3T}tu2jOMPsg{Px9V-39ovol%|e?)E!IMBR*4Y<|r<~Eg#$QXOeUgN23 zahWe_TCl|$*31W^(E62hiDfdC?WeQzY6(svZ6C`#PAU<({c2D0+rd5OKKNVIA8eMi zD0G~BxP9Tn!Jr-^=M3ujUs z=P9iZIco=rYkCs2SH>R>Exwo7agZ{(XHrr;U}{7>VBZH3%AWOi@9PfUqbde_eLlDg zTvXH@S$}P&RKh*NR=Y&N{AOy4zP5kK`TMriFuNv~s6%aCGZ$(m_3s~U%RGN|aD`|a z9DBS8DW&UQ^4>20o_xQgj_2Kskra@Nogz$1!X=x4Z#tBdJ(OgpQ1z=s+woe>ERD)MD`rH7 zcH#NgqdSxux5_GP12R5Se>Y>4xvR#F1a0nn!_(4MC)X=9o#i<>D4u^ic`jG3P-fS} zDT`KgPoB2rsbuLLaAHsRjUUB9qq755;b&+MGUJ$~ma!GPMMbTwEEy)}J=X{VPEKx6 zvxEdWLTxEySdZ{?#GJt4*s4f&9V-nwo}u}|4Bdk&GG^BmDNVRpl+KmN#ds!tl+Yvu z59U1COqyTG-7Ur`(PyLoAZ(02utC2@--VYmeC$Cfn;cad_cTVkm|`Sx0@b+v-NWl) zuOuRbn)fH8uNo>}|E}kMz&s}TxOUy3Y|Osll(*WY@j5rrBe%A{J$EatNAfK>%=V@+ zGkMqGQD#bp!=11nj$0LONx)?j8pE6rraL9Gw>$aM*F?A#zDtl#t3b-nrcPhj z$crm_Vg5cOPwh%_+{aMdWD1|uf!S#Pd#TYLUk)A-n^3-Nt`wyH*^!Y@&0HDa1>fZg2HCegtu)%@alk&wJR)m2&(peZF6HT*uz^Q9SHb?Q_u~8!K?pzBs3lU!QwXT#(W!qp#Bu+$8%A9s{FF~!T-x@>B!?}ZhAP2m zUf--;`g)Uum&{19kxbVg#oI64qVGv$Ep^^Z4EQpV7@%za_N}&UqmlYs+QBJ|y!MKK zp)ub7oyggJITO+G)IT;)*IRoQezZ!9Iu&Y|tg{RaVFS>2R#Nnz$6bYU7J1%(*`?LP-3 zMD7-TI#{)&m*2VaBo)(6ndse9d1&1X`tq{0@A+@ZRvMHxHI29oD~*mxL~@IUR&!~t zI4dl?{I)jX6JLJUEZ#OG(((TDH+7|H&Yr&E=H)iC7s}f>E1y2+jeUB6JqRv19rIlZT^vbNzVMh72N=Pk|gJ7?W&zr>aYFtOg)n5-UpHbRLpzj zJU+kp5;^!jGIa)B3-S2e9y9m?-WW^ve55|@Cf7#t&wlLU`}L8_%Lcx9%0*rfDeV1= z;R&9+8b!y#^2P&fW?p+|5@rt*w4W4YBP*u^3Q^@sfx=bk&jfB-M+DrH7u@U7v3knp zbQG6%d|OtbjCwS~&7p?cM(oWBEAQ>>{FuXN_X-QKVU4GnuoZ~A7#f<*0bufS%<{+R=hJ@e1?Yl6q?~A5k>CDM)&?6SjNut(pd~jukcs}-2EQYl9g|cuWj$y6c2vup??;(8N=Kf zAhS0B zRzyFDmP%*bPJze0G)bI$k-pr=6GhE!79 z00nMHw6O%j6pK$)AHAlXfhYIF$CEps%xTL9{L|}AzVWndJguOtxU>hC z!j-Y<{Wt&4;~-}7Mh^#L9qDxFWG2LHZ+{ZH3eoi3zuaa?v4j$n5IA_p&J2d$41|_5zGjP* z@07w6g+tNeaZqB5X{{nLWBdvf4EN$GMYOJGah~>OfTeQW%#OQqbm5Tj%L+rSmiCO{ zACjfWmVk^k2fe^XQZFJP7@|^OC`rC&SxdAx=h)blT}0}tV0BEZjeRsFqGB_rCVO9a z)yHMw^OyDwga%v>8miNDzj7&O5?3#~gs`xhxWkl-xqDs+z0W-~%rvkgC4+fX_o&6@ zqRdQ1k+OiMEw-r&15j?(=OX8BTzcjh(#T0VjpNA zR$VyLN`VO2NL_@cNe|Jcy5e*@2Pj-Q$Cq_~A1TqOWHDuvL1qU?;AVz1t>iP(y`y z#kJznkV25SeJ*y>C9|TKj~U~xF+L{(f1?M!a+VWpvYf$eCO*8U&O`ql@Zr+of1DRQ zz8(wl&|b{0zdRHoagrS*;WE@>3O@0U?qe1>^()Yw4GYNwqZicN5(z;ZFMOA9(w9C&Cg z03*<7BidA|5DZF9F-dEKhfbfx7lbo^ltV>g{LVr3dC?~L@&mQ41j%>+Iwr=f)&RWL z4=+_4{ha1BaNUs`>6X6=c-Qhok`Jujm(o~cnZ#c!9&Z?@`QqdFtajJoeu71e%8&UQ zyBDIYt(#cc!+axSQ>e+&fu*^-5rr2GO7?eF`Zny(AF9k7eh<3pqL2!Mot@3PP};Pk zsZyU}ldq?B{cGzdc3$%*dH&KT&kz0R*u=GM!Qfo8U$!mNByLcYv3c@GR=g@@b!^~L zhBOWndq6>i)?&yG#7o9A)#ydaBCF@3q59I`O&4gww3^`PE?Z=+5~quzSY0a5joaa(e?{><0qN(X z)t2vjt*%J5?D^!JBk6 z;ey+S(P0m+H}B}@SKnKggVW-3*Rtxn=bgFwzCYZ5{D4XfAwgOOCesYjZK@!egA4k6 zoeOK(yNV5nCYsKM4BqnWG~ps*>%aVOl8NusHrA$y*xY0Dv2O83ofJ3#ptJaCFoT6| zW+RMuJ5g4jZNJ3OqBE_KY&~tNR0gvHj;f}nakQxxU-KF9;mo_3iVg?#*nlk9_Ydm1 zYup|HnR%kR3_TE!yP`wwxS59tb;E=+HJ;ca+wDPpjz3=3p}r_3se!YN1~L*t6o@MH zo$=D@;HCoNoj?RD-g_~FpWDrK^BJntnkV7R-ZMNjFs5Ucte}l2(dAh+R~I4U#|8`( zl<7<(3n)>(OA0)i?A)-^lJ(vV%8@e=0W@{bl|p`%!!TP5XL>^{k?bXie5ZS^H8X`2 zH=G1)@Yr8A*vbwH7LvUT>wQDorN1p0gfdtkDnjB@*_Veb8u{-HR=#L{zA2MD9z#Hm zXYby<+uXERe79KZlCzQm;s?K6HwVKC{V{!sDP4X6Ty+79ESFEHT*&)4k~rpe?6s7E z8^|{-iT`ThR1@O~0b~H6R`>JLLn1WRafdQ2Nr~!x9@JNthnB$*{f?>dZOTLR{zX7C zxflS1v@AyZaRs6)1vGD^mjlw7vfA|{4^at+qNDZL>b`m?0})t*60snXnZ>Aer_h** zMb=ONzodeV{uE~1Hpp!j0iAiZso;)JEe0{Az^tS9l;T z<9rHaOsh5iSlw5K4=3LasdzHD>1eZ)8jg|MCYA26?()aaFc+ zlG*L2Ky;?S0AEP_MJS*T-1OL|q529O5lkx~(T0@~wlSMGID*MCV{Z`3XV05JHwnUnu%oIMYU7ylpu3{p{OT$k}2M zQ%l~zR_Cnjc=x)vGS+bLvqGPyrmLCrajt%n(C#*`$Ykj$x&Rx%obzx4WLo|yRU(J||gaaY2XtGM0K9Aa~}c%gr1S?<~4p&7*Q*1Q{z zTCRF|`O6C~5vOPWi&4yqwZi#0zw1X88ZputuWeZ-dZ=z8SdJ~rPd1)KQ=&)W#qzz zK!;~zm;uGk+DPsi(oe>xljE@Gc0!0+taH;i^tgWvEKD z-M3=0Cl%KhkF~6fJsJ4e0?zqES>vO+2GDV^5Bk07@_i4|+U74wDlC@-I_bxxH~)Tw z(h%{qL}Cc#bT@I~n1vXcO$?tbj11S%Ilj$iI9G$47MEW8XOUP=zLUQ&+b2$kht^_> z;(`*nL5(_@kb|&*a$l{5e{Fb_q3Y=H}9 z1CT?;#CE9x0sv&NYa;akN}FnTgt%+mM-R2id6IeqMpbj7kP~t+gKu&e;GqB?axoQ( zG;c0#q^cu69hkPasSDko2BZugKMeUM`_+B`^eI_Y%EpHDw~?&&pCy~bb? z_N1YA_)VBv7b(MX`h$^Q%!3-rad3q)S7fD<#N3BA49#H7&7LBqSHW#p{eN-BU6X14 z_??kH9W8K&lN4B|NX)ZBOi?M8qy_i`E~G-2Zi6Sog#3Hl(`?VETAM2$K6PGXeHZ)gHy!_Eu0X$-X@>G%- ziHB?%d(uOWpnJhS?ihG$e_zY#QN}1eX8TYiw7Mp9|U4^Mkb~{yz z*=HuV``TEIi)IYVsi>%gi3zx5*$PEzL?^H{RMgYoB)5e}%(-V)oy*K#xHNWA?FO>r z=3VbfiG{;4CO_Hd_A8k$ZE8k5KqeWnOpMV$E8M|_;;l#oYA&Bql64l3vxRY~R-zV5YLwxI9L4?ljApKl z0m?iF!Ja>^3%ZkD0mq#xtL$CIHouw4B!#7TkIv zj!C7Kk_Al5bI=>?8Ulnnu;rgj=;2mY!gc#*L|nhh>V@erPH}HMoDJ{-VBPFM-k(I0 zjQ~zdNQ+(}pN=t7ufURwMPP0eU`+H-h93g)2D65DFhxmlnV=j*?=CqmJsYaRePKM-8YCy6BREC zf5cTi8nu&=%bzsLoLoj(QF3fDeNR3lH_|bmtxiNPW@B>y1^`LzrV& zajh--(@y;@`jw9Yzh>?55}|!>T~fI|Mz8E`O9{?*y-dw$_3^J=Mm%yF3@(TZ3e*QF z@t%K5svKBs%&wI(iU(QMNj;R3Ane5d8>axYCv|{^OUyxlNe!%szai#7Sj1RL>KB5YcVH!DBSQTG@wJx~i2yXS5sd+XcwZJT`We=sy3-E&KYU0Q#z+UWUH~4j zHJf`UAeBt?*bBO=`3zAF`k<_p9y_)65O=Ppnz&;IReUYZ>9HweIS8$;s$1L)TyDoN zh*T&mlhdud{RI7XLThJVlEEp^}TZ)p{G9&q$v*hyk!?EC!;49E42H zb8OTFpg}BAZG@=*jWHg0QONbS$Z{pLq^=+=9V6{afwh5Fqrh>J0Lji4Ei0g}>apu= zk%l)dHzEWOKd^JSEGizMo|zz(6d)MIRe%b=S`aAalYu`!e3IMTua9SkwC5ffqaBtc zr&{Kn3ZF|j8y+z=msxWrH6ZkqQm=zd-W&Yz;z;^6+uo0J!)H|VpE++E^xmI8;+s9G z_40D-AE0xoM$sz%;4xs?F@|Y_!M9Xm7??LP7#(J+0mIWlIyTA~#g`V(y5N zy;X?MV5RC*r8fy`ydG`h7W2~0$oqx4rZ;hFRTBv8BrxxP#SSi8IOJxNA&u4VOzNf# zX`nyG1|}7o;g!IeF_XbGe>gP ziA>z*nh?O*Oe@xSPBR>}%%zPMc&I22vlC2X^f@TepcU|uA~3cZ7{Ea>5E>2$6;?Wk z3@JcyQf}pOeG1Ap6T{3!fZ*(;1M-0u8bp#cV1z-jvlD&@2DY`HX(2n3$A$rT^%(wA zkR`9^S4rEK;-#FlgYRU^M(xdKpdKyG^B$0X@!Wuusw+IPS~_rdG1F@iSvH^_;Zj<6 z(%QzlbocN9W~YlfCH`iIhI0Cwc^T`zTR~<;p;J-@tboSuraxY8N%c2lwr(SMack}X6U*hA-%*(69t=eOcD*DFE7upsWIh=a_UHwwg1eA2;$9!xNSJ3~< z0)fjW@S>m6x*F|miyvfTq?PF*)t!e$y!nV(T)sk~?}6YUkx!c%aS}8)Ko1^rcs_%h z@491RKWNaI(}^Jp=w~v-mcQ9b*8^BY?>2(uy;!O$o$IA{0bu|fdM+atm{R%$J(PUsC9b}x;GwC~ne)fftdI`HmEc9+NLT(lP*d-$ z(JBHTuV$3tSrV0mjP03FDcZ>+<$xDez918q^>zMk+XC(iy3zs|gfssb1iXA_ znvFyD<;oYHoKNxarV=%(cLoz=z4rmj-`654Qu%?%t~Eo0#J$B7l&ky%5T#LyG#Cb? zAZa-W{u=ETh2J1@kwz$O&+kPc+ASecD70B^6j2Fs` zI}^DnJvSsOEMiDB{6&Ks^a>O&PDF|ND+8p!)70o87}k;$Kz1NA(@SRbL3<|}b+L<+R*7rFMb%|CxoIz8VBfk&#Z#t_& zLb_SchQG)ofXn*f4=QiHKGdcnNbf^Kr&=Djyu3WN zzA_>+I=wz2y|lhI9oJ^OGAA?E7ZS5CK2~G$W$nGvQh0Su&DfiS+u>7RtoqivH9hA0 z_U0cBx>wJd6^_JPc@pRyX{|%+bFf*|`p>APrlA$9HQYM8cDB<$#g$dS-hV^b>EJ(M z4Hd#L*5i?i0fC>;R@UhaqCTd_MuW=zuw`B6I=%#u`Tdm|Mt0eb592O7gWi=@eQ}hIDz>Tm) zzuQAOAHe~$HnK1g2C#S?Afl~poalg80`A>u)k;9sb73)A0I2xF*%3v+>4SO=*k#kL ztOdS}9Q*HufV9LTCLN8*yhMpbpJ{WaucWH%lu4D@*U>FT zbvD)EbE~ihHRaAt);_*KJnB%}Zbo!{WRu*AN9s%Vtu|N4$!KL|4(uZvS&mskD`h)6 zieO6R?r|#4_bC}cqz2^|-;ZQPtLLo%JsX@jJN7Bsc_OnLVJCdoCewr_7in?E%Ih5^n;CNl346a`SQnQzhC3J`>?gj1Cn9?}fIke2^`Hl&&Uv zW9&OOEaTN=EqW1BL_ji?w82p0nF@H*^IwuQAY9UHsflC5b|Mn>*eRd zkqcD@nuv0{`z7v?bP(9-LL|EFwuzEA*o zP7^`b$oVF(WStkH)iRRO-|V~QX2G|#zSOjy8Mo3dGlpCL5eKfM6;-*?AGc;#b{LLU z<)JmW2?`31tt<&vNAx?)E{RVDwp7;!4BR+ByJB;_G@?Lr_NRZ!7;1gKc;#*A+QUBP zI;%1+cW7nVH>Ush88Ef@BX{!@Dh@cGs(ZD3EB)NRl6apj9L)*Opjy^bDWJsQXt36m zi>S=oFG35zEd%fR&5{Kc8sqd(4u2+-91)Oc`#{kp{vk&I=c7k}C-cq#GNC}B86JvO zg?1Gbh5bLmP%wplWC255o74fvb#d@JMd`p%RfRKKfW8P zz`W+8?BjJSv&j0=oszZkosP1y^777~mQs;asxUC*u|q zV(`b}i&mzO39m>pWmi4lgtKqJ|FyOWwk2JQZz`kvO2rR$h%iEASk^)KX~7MNC$kTz zUKW?Mf@N4hT0b*^5{*C>08~YR4N9sg=2VV!ZD=Rvti6Hk264wtIi2QxDvB#@4ibgtK%)aLPuKs(z|kuwk_xRC zMvpW%H>Ybga@@W~MBA^i@=mFC$d(swpKf$H={1yU($U_Y1JqvYJFD)o_(Yk!p`p3r zmE~z>Z!e;nCfiwfso11)pJyg@jNeFAFT1uUThS9M_82)^^&)%=d105HJ{ z&7X^hFu*I=qZnxs5Z-dvU#3REf)q!G`WD#nd5|8V8`P)LwFHa&gupp6OY40Gf|Yd@ ztD);c)1<+nY3tR&m$l)O(((ei!oy7FXA`ge%#a*~PtQ|&3eaEc4%w&w0rA?>oBwUD zg51#;w6JUIcHz_G%TFRSg^y7>Uoc0%EnU2-qR=VuCdRT@m}et8YRtPx(}c zwn+Qp1>+6xN#eXM7{a@!JQ9+98_golY`WwPT)fal$EbF!{~C`<5V~5lqbba-+lJ_mQjB^#ne& zm6d=!&Io)0nAq&>Do)6_cmH_@KD2ybq{azH$JfE@JY*I*o*xOpJl+KecSX+S z+mM)mss?x{1H1eXJw9NOr=rL?2R@|hewRA+lOB83wm9wKJ3?CU2_NJ%?m2Ypwf%;I z5C-ozBZW@P%jA{y$shJgNlCXIV}}u^-9o2#G0wcfdUs#{11rYcwBq+_@PNzO5)ABU zKEZr=DcvOK6FSmf3_JZ~)7b?#qb(w=OB}DOP|jvY&U=IA_LgHgw2-CMV~0{deze_Z zu(pH9S$IDr!wJ2vIz2ANC@U*F8pSjmPtbIpWaka68P-R>S@q#5ER2YobW=#(x3sss zH{@;e!R{G!;&0pcYHx{Rldq4CW-oJ=AiUIt{eX`xi=*~~9tss$Ab@#!_IfSM^Xn_!>_ACI}gq0M8pA z7=y%IH^Vek$tt3+)4@;PfJtI0-YV2u&uqrH9;zUO;;l*5pbyw7qOC@3kXHC!SA4Q&tzs^P7_@>}ZNz1geC?SaAc;w$C{4zx6W zYCO_*8&;9E>Zn7KN&4Jw){-#f=ph($$>ES)aoo}l;?n$EW0&~Bljmvscvc4pf_HRr z0<7LT6BHfs(>&fM?@(ogenwW-?E>AF9s|Z6p1(Av;rO zZQ+#;<9okkLG8ukXU?1{kKVz1?70+pOFR&U^i~1no8@h+@~_FH3V1KYtT&HgTH2<*Ay^T80(+`t(gtZ(It11@%!ta= zs9r}r+bSHxGE!;9l9Z_$;{%5=gO$4!iD*szJjMzZ`3Np^PLry;vvpKloSv&l45pBe zDH5+}63s9bSqu)ud)GubCd3&GFeM*Or%oJ*_eYH^_`rPMNrQdN7Fj>3XXSq5nvikw_O-OCQ zySvdsg;xy1OG0GX-Q>&FHJyEi(UL2iMSuN!2CaDx?`WYrOOy{kqD%|mXVOhVjeFRu zlvvug%f+(#$ZPwzhTi1WKUOCsfW$xbzbji=RdQ5A;uFdJH-F-9S({IJ zFTN}?VUM`ae>76|H4-??f8auVXA;HPveQpxedQBNsFp zgkODMvygG;)sI>NZF+6L!oPaflb6%bdDIr2Z&z2tQ)q>Z;l5wrnmY*h8|Yi#yja3R z1^So@44Ba!p)4#(_&cCM!U^4MhK((P$$`)g)1`xp5J6g>ATbGU_@+rk;wk*?S+5>O zgcULjN_2W~TMuPcDrtj^m9R$2b^++Pg^Z*W-bP-B4|S&NvEwuU?D(hSpe4OksRVdO zcRQiL=GT4au*;fR+`D|UWtn#n(mv-gTJsqkJyaN!vz8(HMHdSl5V*F#Ui24IFKiaE z{Jxz~Blf~#(2+7DrcKy!YiL>XZo##rkNnnxI<2L3`~{7oM2kRGy%Y<) z!rxj^WcK6DuKL*!L{N)^z^Je1Sn}Y*qtE$V%ibTN4Sod88~02m_R-^tn@^t!gAnDG zgXJ6C1B(Cjn$UshoI>!5C&{JkU`8s|fSh~A{z9@tDSlz$zxESA)8gsAe z4r^BN@DcC9=?G?$iLNyZO&_rMq(e6%+A4J( z1|*s3yIf~d`KmAN!U-SvVV+~cH)@aZ6z(5L{#1+QGo9(+e{;?X;8g$ zOf6vRvp}OHhuFj^>^>KXH?9j%VP;at2>M?Qa^uw_S&ujVu zAh`BW2uO|Jd5Qd{JcU1x#2Xa|BF(UBik!o@A*%omDL&gUvB&Qsz~oGVhhD&hC{jz> zA>J+wBBZbd3EC6d4p^(c0X`j(2B8)HNqqyZ_)2DBlIzqq@KJ7RXF!>@U^LqaZHk@LPX_pF2ChKVn{&K6d`IS#s^S?{uHu@HJBxLBzE+4*BjAB1;H8Ejqt)P4DE z8NQyl<#5+3GT=Ubano*?X&%L8uvf*euTH#RMyD3K(l6pyeH|LkW{$aua~pGy>_0+bTCKD4oDTB?#5>Yc zmHGlfomV72q>h1In5tCK4C&We-Wbhygh%kkr`7=9(p(hL&m*`cxy|v)V%$VfUqE2W z_D{Kwasph&5(RB0I)Ud>O@bx33e*vLMG_L)23ptkAy{s4dE%d0->5y*;HFEDO@nyD z#0vpL*b`mwIvAq^$KCOv`?6cKG%00}!bZ@-5fs2@fYc%jFyZGZG3NlC+T+^*r~W6& z3C8=BV&=BwF-j&?s7=b;zuOi!stK@kWL*DbIn%#cPTm%u`>jx zxZ$S{<}eh+AmkoHdc`)t6aY=YO8|W>d;@j-7Z&*N=?7=3ZJSMx8jablfh*nJ^W;^? zC4m7bFS;11iH#DcShnsxUY8xS;mTQtQR&8kl(FKIK>WTH9v&WhEQFW+ryHjsJ1l zQtXPoWz&b(C<5HKTdCazFPNce!)DD7>^hw*E(j(nRER3cqyZphl#<2$T2NNr3Uf=_YIwFmHSmJAKda ztZKOy`#vp!_u3#Yap~ix9?GNmwjTS$c?!)158%`oGzM2Yp|krzhywAB`M)xjPQ3J> znib(%*5z}4P&_41)|kAd>-Pvxh&IqT_q7enA06vpb>m1QmHPt`Tv3dfm z@dRGZ?;rkDsh@^aLnogOiRuGtKC4QrPEIIvHg9S96FSd%J> z8SH`3>@XD+0x%0C`FCf4Kv(KvhPre$wqlZFZdzuQdH z58@4($PqZGd^J>Fl`iCdAsFi4Z?b97t>Toc6T-?UqcBC9cX?JoIT8g^?WH(T(u3TC zV^VE@Ixud2Prvt!OxhJl)m;*@=s9Kh89v7aN3LMFm3xg>Uv_^yGamTBdb{Ed=8E{) z<&`lA!wU=AC>Xrc|4-xt9A^gOAW;t`3*^b5vkH|qY_Q_|s=vvMMik5vkMI;~NdbIk8czKi>51=5>G*)<_6E?_& z$#4usf%9s+Gp51uDd52k9s+;%!mEYqI0E8BWKeDp%HiUNIjQ>Az`FsgXm`cyoTn)0 zi%i`$(dv2^dEJIZozG_Yx9*NN%HF`q+P~}TlYxs9{d)0MBXVa#f%ronn2AQ^`Bqx> zf*AYeYVoEh&zz~Ja%?kM;|59V&mYZK@{QARc@LtnkBmZNEsJZ7LA&x&o&FWJ)NW;w zWl;xa$^^ZNft0sFzJLeu(9jfeDpyXT0OmY0MddJRK~>HJ;y}1!Z2(u_D_7L7?0l~W zEMp<=dWbSLZ;v%{%}Esi6&q~>?n!gSD=}-Pvn$~d*KtoI z*S#XjL~7TR-;0+cp81{F`zERt!9-1JP$PgLvK%_+h;KtM>)|pzoe)?r9^O%-Or59S zn}fuh1Tg^(OH%D(-?3&v1Tj7riV*I6M0F}VS@~_zy}+Y$exj{{g)AX;-ebZ(TYzu5 zECXS{quwdImS2dME7NL3Xvy1QJ89x1juxb1TXNZD6EEj{U-Ua9a_%#XzI2Hu& zz)Ic#8oFXz#0ztAKnz`nG1AUW*r+Koec<|cV1mR&=;h0be(dZ+M*Tj$SyvKE#B#>$ zvv+@S^nk)hx+k!qO)qdZ&!U{RxGgx@uwpmRp8ya2j$MXA|LS@}5PbnG^EMC%oIG^) zAe~~v@(agQd}f$qC>?+%Som=+c2W2^As)pB6EY`3PE{}PxBE$+iM%`aUE&M-M#&ZC zZ-I}!o|bz?nHFjahG~|r!hKI)@$H!sxW3vY6JhicK4<#BPD+Pj-_N|nNARH8`b~;N zZ932Gia8?I=+Hb>>XmTSsJX{Ej@C!Y*kHE=cnKWF zJYrW;-oECWuuOY;gZ$MiSA48**Rs2weVpSh|AO$#`xQi*j*R}%g?ew<=$w!Q;m6+O z5EO<|eRqC&7Kh&QnPulnflmi%P=Oy=zn{lo7yXCL0KtM?sZM0bL3)TL^>%?5ep;ep zH{-#h|BTiQG1d!M4Gn>pQf-b$YSQG+_2~^=GTGA|SjRsVmJhj=nDJhkm#YE>-0L1}d7hjN~n+%#2cOb-`N1mh|1 z2_VKD9sn~U8z?Q3T$dRpwlI%@Hy8S(z|kl(cjqQr7C&v=@q%F?s?^YO2+UfSUSY{P z2j)FEp$q6AC}vRSCO0YD2*J>r#0I$g1pr)h2<+G+YCc>jsmT;~bl=Vnctk??Y|FXP ze5dGV$|94ArKin06rOCie>3|^;fZASHQbPz$%Wk_(;TG}WeGdI^c=4_dU(gdc7jfP2o@2<6$^B^LIH$3 zrlN0&7v$$oNud*HiYHej7}LI zlK)N`Slu%S?UW4f*c;whfF6Q*6i2;{tL6Rn=wCPwLiIh#aWjTzuMm?xo)`gTQ=!KO zrnGDu?A;j(tmneNzbg5NSK=?e6~79I`IpcILlAU1zQPjtTyZ&?AwBlJDc<)* zI-^%zfiu6Qoe(TXevM$(f>2f-e3jH41)0fBNDSs4JQO&N*`n6u<-75i#Ve?tkJSqA zEAfoIzp}DuFP*yxy&T!_*g?DT&GoFsHoLdZGwrE{+2RJsxIEDb!ud~&OEHqTP$41f z*LPzdtz5VWBp^5Gxs3qw0~j;FIfnFxPXHPV-eXB1y7i+J;%)<6TJb`bz_r4IDKTtN z%e_uX-7+UY9eKZ{fVSDn=E}{zQ~6$eq!2H7``wAll&KxI0)No&)xI>mU;beBsO`?* z5oZrfeamu0j2*g@$wCJD7bdHmt4qT(mMh|d}gvT?vG`e*w5aLYYY6EUiHb%5BDf2J^+hTA_PLD zva0HM+P(Ra$-#HAZGtR!;hw0iFGKn<231unt2HtoPy1TZQlJRnS3&FiJ&H=5 zS_EG7ajvo2!KE>-4+M!1&}d;Hj`+k=*^D`mWmpvhP;UkzIRZjE!41*8igm&&aNKHx zZNiVbjK3kj1UsgCT%W!|Kl7+juG4+t?66mUSP)N4L}Ng7l_q~+0y>_F?7^45O3jk# zfA$!)?M>AEpR-Q*;v@rH}CK8M4b@C{*=-=%WJ`BV06`ZCKkghALY+2i*&MZd7Tb?UtPS^3CnI8?TCG8O$M^O$d$|v-s&#tyWyW?&;sqyh88)_?C4bmep#eliOIm-~;k1_ZQPm zZX{H`ZOM9&o_^=X9RrlGlt_26nzriQ#*Z!SW_ETj+@F{W-%$GZDC&NT#o(?}I!twQ z8Qv~j8b;hTqz^uW0QnD!CJ&60@@)uMz7hv(eQglh4@jZl{MCK^*$GM7iDvQ4R~`Jb zRrMBfAP)hY0l&dM6I84w!t`vqKiq_xb@ainlco&kdz!7INjeU@7*9;53m#h`*U&Jo zHTS^lf-4=cv81CiG%tK8kT%=}F9WcA0PO%%zg-a>Rsz27ME$wGb?TRgG+a<;Jy!h! z896aOh(4{ahTD9;mHdg`zd45|#$5Qq!c(|k^mBWC^r@Cpy}iz-oUYZ?@nTm-wi_+} z)VWdl^;VcjkZj%bRwQ$8GTnE<lAom8Q(CfX@ZKvLLY_^& zMJpqRj8DD#*12x5=a}%1f9GI8Sr{m68F|j*oy)ihp;>4ELr)UkaDpgV3Xp%T{UAad z9}vv|3&NB2z-*x(f|JBm4ue$&H96QdU+`B2u*4OJq1b?&TRISYJ;fp19}J`*m{W#8 zNXO(WbZtbFFmZ2RyxL*(J~vkKTOQoW=w}L2OA?=Q<-_wD)ZX0BP^mW(n#{TN^AEUY zPcO^igLrUF*kl?+^J8Gr+>fJ(Qekl3SQQbq4M=xh5I&N)%KYChQIlduR|Jsky^9W3 zC!n3+1=tpI;iOc@ufm$;_kS4s@^Glz_V2ri?8!(fMPv(&knBqt`<9*TBo*1lz9yj| zNs=sM8CgP>lzqvbrLk4W7GlP}4PzVgUgLi5e%;USeUIb)qd)4Xjxpcwb)KK|vz!-N z#Y6y5JtHsA9%3ZnUy1tY5epva_*pGP1$a$=sl}HuSOjqnV z^M2IwjDYoG(3Q+D6#Kn#1|>~!Ri&=nl|^gau>nmJUq+ym((RA3v|dwajF%Jdi!kLC11xa%l#5zMju#$yBUUe z#9@8F$<0~mc=_oxJYHhJeo7z zxy^Gzcw_#aZ*G-*Bi&ZpM8Ql_cpQAXe#AB-;cR#NOep_L}hShH0dxxors6DyLl z$^dF+^+WZ=3Ei}|h!`0W=U*plhfAqQw>S<4qkVCutUK7^(T&{|pXTK~P2Yo=B5LZh zPu~tGl>}jB0%<-~LVhk20uXebTS0B|A>I=}kfID$IO|VrXi#Xib{YD>{PyiV@MfV= zf7Dqku}OL1WIFs@V3TD6&JyrriEv;Mur7TLxGC=4k1E|&3p~|A{cP8;!6N`>_5)7! zC9V&Qu&>B-(d_6u9_fG}WQb7tQ}rf7fX8#_J#jDN=uT0psiK$DJo)fWE`)KfsltdVAFcqU^g zpvD)H0Adf~W5#iikaXLL|b+Iqb9#lF`oY(>`Jh}88_ayyX#xXzb4W9(24lY_+S}ieb49gt(jQ@+lF#)Nj9$WwR=wwBo3b-Rnbt$>_ z0Yya=i@9Ab(3d0$7*8d(TWC!P=tip7%#rmU0J#GO7T^pC1C$h1t8HnB(6wi3O{Fnr zYL!+lJEkSoRr#aH7Z91^uftvQ8oA5J*nNK$3zqU2^=5Pt(sWGXOu=4`P0aO-F0#5^ z1;;vOrfA@Szrf^Il?#}{1^TGwv7-*)0vKq}6QDTKc$y$xKqDL`kKP!Jl7yP)oGhTL zRg*P6$vVf0afW}UpxkDaCZ~18%>caR1!uHAyzJ82_g9_co~3(oJSY4#`KFe0_w>>d zj%-b1$1n71Mn$i#<*HtB!}->ZbDkh8*D$kiS=UQ(g12GJbBlx0yZ9!&S@i0358n>f zp=`KPab;cvLcHfW_nj)lvZ|pBa(EQ?!3ADexn-wd#fm@vU#5uh-=cxMp<;(6whL{N%hETFA;$P$f zZ>ap%PMJpN_}mLkG#emN(V9H|tZ(70h~*cGK3}Q;cL0b%;2rqNf&@gvpdV6R7Y6)V zK2}+KW53pA4PTP^DC-1(AA&-S(G$j+01rwL?t)*Zg^mM%jaVoKm=dyu2jFCO0meIE zUs|Xt^vwD5ukb1@1Bz z{msJjP-7zQ{@ak9HG~wR$=Io1nD_$+o%Yt+P4u(V5S;Zx2P^IC2 z+B;Z*@d8&9!D7!xCRnJ8!~Y`)HyOmGr${+D>D`)E+^Mn-?d7z&XbPw z>Fm=sd?HxuQj}r?OGk*}g}fd&*^NNeF~4U?-~dAkyn08=^P_Ac_bw(=D}&YGaKz32 z{qi6EIR7%>o-?e&h{7=0Tias>UY z()Y4NZ}YGFL}tm(<`mR9^d!o`)7UzMKeuNxGTIM)?g)I3V(Go?wd`&GxJci&A=G37 z-#+?$#37F|O09?HUY%!qQp_Zx9paqmUsVfSV>#E)8&ek7t z>h2$%%u_at3rqL0x?h%sZVAn&<-4Dsy3Z4kLbA&AV6PsqJ&1hR-6F6bc!8saZ(@dJ zH-Egt6bv@+0i1e{Bc9bm7hus6D(EgQK)xc7@}|~gMjuTkkyzruoSfLB47{AMzL~RQ z+Ub^`&>e!vRM?*{`9NIyNW$!GuDMA2l6Ohj-BG$UcgvvQU2qUFvV6^#AKhxtM_WWmOjsuFir2fK^Gs>sNEWP|qY( zNUqe1)7_2#Y!oh^A`!CO3aj?p*%Im<#`e^|!dkCSa@AcP_wg19J(wyOyK=8{Wcwh} zdVU{#?f*+0ja7_odX0TaLzqLsZ2YmnZm$VSjzIrd8p0Kh93RVvH{9dwGx7tzri=6Z z|8M}7mwLPa2)&n#h;8iuBx4G7qnZq|Tbn5t;sz1D%}S> zY?@sg4nhHmc5;kgxLA=vmTt$7Plh1N$H&ShvC>rFx~(2RS1eJyA3X16RbECQ^4GAN zSm!(J*z4Bk%Mfac2t4De1_}-3T)nMC+jQL^>%>aoA9A+|u|W*64c*oPCezCf_VNww zX}$>!2kTDt)aF$*XOhgSSF(2D(&Xd+uRae(eNC{wP@3N{?LjGGjZ#d*H60Qv*WY!m(ZepgZaVT44jYnljk1qh{gY^#BhTGA0S&0dR?0$a_!U}TK*&NPcm!%|!Y%Q)vDU8JaFbmqQ!abOy zIp_!fy4ifNkMmM(dCDXWhZZ=bci*7YvF+^0q7)VVpSwp7W(c zUz6(}^|FRy_ny{*TN=4!`REIJzJoUmf~Gc*8UXyWPT-Vy0gI6Wmc4&S%BMLAM>hkl zOOx^e&a%UYx4|WM<=94zvOV@Ix5Yl@nE5Lw4V{|{g~~3s#Ouf7!ecH%OKTm^y`pHb zHH(#m^(XGO+alA~ci*$Gnf8gXcR{90^8#eObv2tg(pfUDv~P-St;c6f1Zn85 z^D_>4S-Ri6?6If%`HTIRhRR_PL72akjVs>!exG+Yj*s044Qh0I$^Ij%9~@6JJr`)t z;!=L6z)R&Z#kuyHn`OTASLy|ezkl2ze1C5s;;X@)KG<1P>C9?d-1^rtKOwJio zv|bc?QkV8g*f=M$G_ej^QtJr07OUR4B$oYZWyER;t`f)-9LUG$bc`DT6n6N^MGRcG z9H=eOI_rxXo|_h)C^!%S6|3Mr>Yip~Co`;%3Rp}4>LS-JAbWyOtO5QKXa>Mj4#Z3} zu#G^5~|eRwgDue!f|t^Y>85@;-;CE z3)JboML|&^{JO=}PKBX}A0Qn;=or^Ee~n1TMbAqeeO?*B&@YVIRJ(_<+Bwt9|W}rLLswfV_U1d673OUiXTX|2vtq;3B0k z0YXHu)#A7uNyFsa!M<>pFP39TpZmv3dgUSK^fa3+QTw-*dFT4`2n1X%?DvRw6R50jqjhwO;?p))!>xEP9J z!L+)%{MVR=d{ZBmGY2Mzu z#|#O&Az}E1?dj{-El!^GSMA`csZNblg%Bpq#CNlg60{K#k#FuK;G0SQahf_45098K z)w53o6E1RHw09%891|5Qi$leSotx|I?7Z%;a%zhCh1*WClcX<>S?jfIN|zq5#qb{f zS|}z5Z)Q2xn9KSq{9S9s1PMqt?rJqD7)Qd!`nqk|u#KP){QC7H>l+(!iHYq!WsU?X zm^@QMx@-&sn@@&ML!9p~q{;T6;OtlmSIO{n*SHmX{ShW6z5Rf>U}{f?1Co*F`dn*+ zLb=OCw646|BSv}Yr%D{x7X3+|RQG4TIZ52q*N5Z|4AYaunJD^h{qbr515cISX`;1q zhVFtd`+zh`0@M~wPqGON-<1Qcb4M(j0HLNBpoD@OV;B0B0+X~3-IsrZ$8Iv}kVwFJ z^;B&j`iWVkT$0CDFq&(u*l129#BT;Tl*SCi-gEV&Q; zrIu>~fU&wzd+Hy8+Vz)<2NYeu1DT0d5gfq2lk$^SmI@oIx1kX3iN08z)r6K!6gfD{ z?Alry$FER%Mx0Ld(t4nWB2eVkEcIBV=}WDHqrSGlW1+ZpqA={zBoAWZNLFQP;IFmB z6rrG`(ZKa23Ew_>54_>x&?XFKu}`P0tQ@l|YoI@{I%6_n*Vq4ztO@qWPV|W@EjL0e z1$)v1V-oj*sGc<@Z<@Q$E>gk**fh1h#EUFzLV=R_a4jCY8f7WZF*eo{KPItdTGmMf zvXW}3=Sty0z&%(fW_dF!w&BsIjO(Ul-pm;5%Eya~&Tq2EW)O=ERWA(mx4VGK4{mFV z-Caq!P|Ngho65$LnsP=%_7emzFa^S9M`a4gqHa$KKiPL{K>ib+Q29g}FIZpkSO5k^ z2i#qIvQ>w`(GTeT0ICBbDcBgXTnK#buK>x1SnjKqB7_Go_Q35)BOQ_mAr57~@7VaV zdz-pVD|W7Bsev3WFUZY!Z$k39$lHidr2Ya)RDx^e3Vu2RQ!4HEH0N+WyQo z0+tCyhv!;6ZSmy6QMx&L^58A}n_Xh-z;r7%6;EW@byR+5#WB|)CN0*}BeL?LZ`)zASC0L~InBAGM3s1HH!SLHmo2aM|{?-*WO%7(A2b#bj z+3N@de84H)MEl%x1{QEMya9;*3)oSmvocs0N#>wTqr;h<%Q9|3&s1vlc<{~@D!;jJ zZqoE5s)keimrACmDy})7OM1w&SO^qeKR@@6zfnwn`#l9*bk5&d-ciu|7znw7$@QX;-g~{6eD2|o-po8{ zFG#{S@tonUUEpLA_cpYWMg9oC_)tB#D7FvmG@ufvQ@OB&EsjGa&6Pfi`4UQClT=|& z)@B-*S`lrOvRO6V-ySHg7BIUxSXZcfTcy2)%lX@#?PJHM`V(mkby;vzi1{&B3h(97 z9?g3NdxjH4XoJf>F)GUA9BJKL>-AMOU4=m=M)|E9@yeu&B%skhNPqrXDCF2>SZ~-K zeJjQ?;CXU#)a*mJ^z{$ce~btt6uT#RdxxI}MEZk_FFC|C-fBUnlt4NXtoE(yc0_~l zqb3ya7klF+LVY`_HR+jf&|HC6V@9;6Dte-9E$A<;9Xv0DWB)=4+^xVFAWn`ywHC_A@YV4#&v&+ROQ#^Lr&wdBQ{Km=+nyp! zAwFvqwgkB5+WW=A3m4y|MuLM0{v8mw05kbF|Ajz~D=1l`8LyJPV>NIv*<%4Q{PNJL z`4Zp&z)f<4aP$8pFF`T+FEKye>hCv3|K&GCVk^v znLlZ~o*o_jm$8=O<$#HILcNxh{t>FQ_^By7;0?H{khKq#f7AMg&VRfB1Hbb3O8Km2 zgePz(o~#I^*$)t@k-+ynpjow5H0{d(@oYi1?UJ3`KlDqbY-s-$wKXS_K z1a@AN#Q)ecrllsc<4K)<6tHTvo-a~f9uo+xo`*HgNOF(3K>aB1w_5D_=9BT0r<#s8KL&DLDbf^V#U0ct z7T5b9(@Ly1&nP1~9Q`Kl!*#RfwpI#%Z}1#ku*%y8eozxai>x3wWXcz4IW_FEMn*{(gF#@#!-x6@PRnyE>U-~P3# zXJ}$F7@&LBpCcw@rGKUX%yF_LTZ-Uuf99M~(!tL%T(1;$`?HXk)KurgvEAp7GYM$U zQMIS~l)GP_VXu5_mWqc1E4>Z_IbH!W6u<)qn0XfrF&}79;sD?p<*~v2p9sf;;S5MC z0)Tb%e|%^rOgJk?n>prUuO7?qj5-|~ABoVjocp@`cAtWu?;UOKvtPEvRms}1P*f&+ zm{;>uspB2d<1npe)vlFwr-giAAY;dEqj#XvTi${ z?U`*~aUGTWK}-S~=d0Bo+7`c6Hr8heCYAif7MXpa76c`Z z0aP`RT4O~X+kS^ngX+M~ajXDjPxJrIo&xUta^EIY4$F>M_5+0&K}KhwL&v!^Z#72cMsV#yeeu_CIiYv%k&rzJJC4jbek_q^R-Z;^u|(kkwv$;p)p-Nr4VVt7XF8 zD(MGVYps37adB}pkxPb=Qx%W? zmlOvJJ;>G1@R9AI1gWQm6vPVfIf4BM&4*;a_CEw&I<efPZ7!!Wln$eaI7 z(E?EQ`9Gja66SACr1#wN9^#gat&h&HJ!kboLM5Y2!P>}zqP>FSNI~vVG5@vqb>Arc zaaXv5H>COvUdZWZgb; zI@sPgsS*putxqXj!6V6vjw@l`MwKFTTav`EdZwmd?FglXh4dyxR;~Ntg4=R7vFSDG z5_>hm^*>CX+JM|T%p9t5C8J{(RR{Q*{Wl;x$802+f-9qH} zWp(AdgZx7H=(ZaZcZJrY+Z>$+;@rx#eD3%)#fS!$^P)^}bTt!`gXJ_G+jEMrD36(t z*}s6jYJ08D!kHcQcy*j6unmQZu6I%6k~c>opH^ygg}`mn4Z2%J$-eKdeP+-<1c5=^ z`hgjG@M7Pd85y(#7$pISWHx{hDzKv~zyJgd%Da^bJ~1Hk7)Fl89eP9VfP#0pe4;k) z*S6%Sr)7?r;}VqH%1{nKg~$~;^~hCIgJO+j(O@xtiHwfyT;7pi-h6NKHC1Y ziw*3mOS{9Ly2tm4Yhu0Tb52u(k6rRoB`7N7gQ?u(D&%ftu&t2xs1&Z}7BvR8rLg>p zVZr^t6AWB`wwlz~H_wiJ?(Xl}n5}eeBQ%~m{i?{cAZR})b#e@tefa0n4_sA+Og})Y zq^fcPdQ&N-M}lmiMB-77=>&|<;gN(PZhU`J}{jlv@_Tg9LclbztpM}irvqS zq?TV2J=OCFBcRw3(|D@Ck>BQ;*C0E9-UHDdu>5`IKDdUcE)6?jdPD9S-V zSahyN8R0l!x{V(v=&D|pbFCSlIS$il%n$V``K)j@8e#!#CXwujwDL(Ty7r5OCJ&GA_Zj3d6`m^V`Ch?NJR_wrPOj>FrxCk}jlJ<0%MrN@KMb@U6c$pM!U z2*MSSVKQ*4{0DUX2Xdh-EixEOCS$`26@7eL6fpnRQ`pp>RU#LtytA&}K7FM$pnw*5 z3jLkr;q+ERJY4kpl@kv{f@WxFumsi;1GBU2U(1xJY=x<>wHksBZPf@9C zIEA`i74B0gJ&EJl=H7=HGd`K#Sdz)%c4xwjr+3H1w+@M1I%8WmU3&G(vqY?I-Bc;s z1oG-wo4vyX#bVN{M|9RBKVQyP{o=D5?)WCTS;df|^2Wx!g5p7^r3uiE)6kfzg&rkV z=$J2iHGeOe2_XlImSxGr>0|$#YuIHgvdT$j(|{GyDg*E!hs+t-r*on951=*m-I`y% zgvQ(3cpE-Z&e>}wf+?D-yIJEeoodYv*S-bK|0afU7#bYYO(%N=$&cwky~YGD;6chuuDMn zJnPH8^+mhs2Ef|h(ZAMH(?gfpymUe8mhaR;B;U_OMvpjltiOkW!4h1 zGXg*$$m2i6JrpASXnv7?==^aM+(#0Xhv|wS{;K#if6pRqPzUcs9QNLE zvUMyeliC3u*@^mJkhwRX8l7LsDJtB}#r?FT-` zFI>5Mg*|YQ@_|NuA0;uqcq)X$_w0bm zE-V~g>`G=Te)Cl1AkzBidpKCoQI`UI7(%_^j6cU|goEQv-X=tGqej(6r#)rcO4QuyOrp@H2L{u8FPtjVygMHrTjY9CiJ3O=r|klL7r zGG<|2TR-P?hyR7Y#>0h`^3YEp~F(^qD07|0LQ$r2V`rFZNUfgdX&$rZq3PQo1FbXJgA{ z!ClriHa=Cqw@k6ic(!>Z%N#tdeiyiUh<7NsWTKtu3pw%*$?Rj5|vVI~x zJmIMQl?waEyglHtz(Uy_F7>*i1lm*u`?tMjedSYMWH_$xcb7uQqmuI2ij7~7sSu;x zjNiFe0P}=%_a;(Zf)c;7Qu2S!zy5Alif(A6)z8~vyZXdPd$tFXojvuo9ND*SoDRY# z?8xz+8|1*22eQ5q4WAf#4khQBK-g4)8HlvNY&Qa&itlO_|7NA${T_grzkO7+)#DUU z7@^a0h@U$W_3MGsR8p5CZ;M&u7c#vkjF6`*QR{Vraj4`+@9z^CGb&7gcCgk}++d5ZoU0wbvsqFDA(C?r2Vref^WWI= z^6jf@cx>Juq_~DCN{|jLrYd|w4+!AVR!9?COss?2InwuddZVMG{k|wT|GFK_F?P8( z36$xO?#eTj!9?E9u1+nEXaL{;ox+b-M#3{V>qSb4H@_yw?%y0YJV7=Lw=%sVFh ze!|l08~N{FK;MkjMxjw%p)_NE@xC=TzdFd*&j;FqGt|TTT}!so-t$tibEYCzNe|M0 zP2}Vw23je0fm6#ujIFeRL~X89zU+Rl*kBp#N|N;67oAkb2+99*uev+tXds}rzmXHXL4&ifFh4u9r|W!CZGW1zu)_hHyViSFSfBmkZCFin*B5{~TpUG#F9#6PF}u z%Wrk-{2ExI3k0uKzpQ?KZ`PHD8vV?W_o56UKv9CoDP)~RN_5?PZP4r>+pITD)|KUH zG~3^&IhV_w>hh-s3W1=f0kVkJ(>Sy2Y>?3e#kpHApS7^f+m;p z+JvAi&8be=AVU5oAb(fc+=~ho9(Tr+Ti3$!Xj164)(vR!_aX%a(!oHCy`AvJsjSIn;R4 z4tC(Ql(+QyydmWhNdNVu#Kf)pAm`o%=A+?yYL#N|YBYP3ay8f2Bt`4fr$coI-*By4FtPTk48`;DHc!x~H$};7 zy_jgbp^z;PM1AEqJuB=Tf}V+r6$@~0?SuoOW3J)kSFGQV=ryKHR95MS_Vb{~ZY*h` z+Xcu$Oh;j03#P$`TiTbpxN!yh3$woM+ui7$;R_xNx!iUzy!dqUb|EhAGf%Z7BLKd@ z9rXXR0c{}-(en*hhR|5BODbG#Li)<#m-3hu*l`axzf8XU+><>-GCq=56+}674${3e zu{Bfn9H;fN4C&3g&*zO5-f0O4*clyWJkm`+%ThPpRGjB6xjoIPptBV7@}=Q9$!$(x z6Zys+iYaPPzzel$C&x@pz1TYlqjX=R!F_Y2NZeks1hi5k*dB*QFaHdVPq%*fR_w-F zgI0#ZT#h0sma7-oPNH4wiR?*cW;wCskM`dSJ#+)7KX@Fk7U9(RN&J;TzC2IPpRjk zSf*%Lw%3S4LJQ}S&x@E$e}=Hp5nX}D`W4P1WA7FnxVWNBLg$q2-W&Mi&H6B&BO+i2 z1}!Mw78yWX5hv#qRvM%56tKRKJ^ltvtjVprs=(Ukoc=sYd2H%qSuao-Ze<-xa)f)I z{?_AMLGqS7Z5}pAav&5UrwaC}r2u;uSgv7}ZQfJmIth_W|9k)3NpRZ8n?h-Hm4jgp zK9bK-iLv_}v1o6d5E!~@^noz+R_Z{J)zUIRb|L=4F9WODC}~7WOpNB(bGKA9G-$^I zNGEo;IEHVB9;`N4H@%$W1i{z(6>#EQj`8LBMbNL-+ z+|kIV%@q^GheG7@KC1c$t;<#d#qIkSWMfC!Ou?xEOZU=&ePU1uMClG4+`usDYBOs- zSn3`~AG~*!Z71owZc`WS()P~HQ{_5OTlbflsMnA`*8^?;s)2_ugFRrO?Dvx0iWk(K z$$U;d?7Y*lcH7{=yFv`NA;5?MV*H0PP6BTKfihZni@XcLhbbuYBul?%E!ogIv5aZ` zUiy}LCE;;N+M$at>Z%ELbnluXngCv8u$RdKy#X$!LoCODY!3>Uvpm68WDuvzhX0L0 z{wL}nw7A0-A6F<_%&*!vY<;sDk)#jT#f{H<3>Uz7!D_iIk8f9B25)fYKk&1uaVZLV zxTP%0ilgewJwvgZrCa;xt=Oy+q%J#-GDt-Q+=#{zPQvOz;m0? z>UrQKabn7cS+ycNvv9}=*(G^ihkIP0b#|@v_2w*t&}#H2P>&R`04`vUfO8Toac$D& z6s~ixU`A|NCwBpPdXFd*l3+&~x%7G>M!T|rMOv7=q($;0dDo3bOi^u}&=vNDV|wIHk$z(Fb7S&>x+x}i6qqjexbJ}l2OCCU!3~dpKG>u4hs=fP zQ3uV8w~y)$P6HnkCb|P`3q|lAj|AL&YCssEk1RaBk5zN^RnT`g^Zu6^0i@+tjgRJa ztA!y*_idK{%6@tWTK6&gJ*#C=l>7;dmzW+qTPW?p2E)gtby@tcJ3_r2la&5<3r^yE z{6giUXz{#F!FMw{D69RC9j;CM0CrORUh|nixohrtWlq}&?F54Bw~?m#^1RhVhtH6FB z+@_m6AmEt6$D4ftq>6h^;7EbVtT??s0*M}9Sm>;kc8xK_i8u6sNKgO);Ssz$j%*_M zZ~N|pt;_TQyFS^9AqELJeX#v)E*}n-#hEPtK8M#|HCn7sMxDpses;8`lDz5@EP5~j z3m-syZGHXh_%f*THC858;L4AQW$&XhcUq<}33i4i$+?(eW=zxQ{lKbe*eSx3Pk{~Q zuU7)-Hi$`*u|K&$`z+u>CE$Rnv_T7c?%goO2CsZ-Rf*i`dErA0t>L+~_S#vYoabo4 zu@<|`Vt^0G?1(*Z{Y-xl>q|VwKUm|MJBg2joSgY)Djx^?T-fN!F>Akqzk1lC{e4Ro zpg?hP^OVK>Rf%Q(2Lhk6J+L{$A=d z_|GED$+xR>-nq<_iMkhk2pV5Y%6j;~%`r@_NA-sVi`9cmdZ<QLroM>+HE7sV9y~VN(&9B>$Bkdtcv5vncW# z(hl|9YA`b5cf%CjPnnWhsWGs%D?dTn*bIpT(;YS=OM*_Mlm_n<@;3TJbxjReg-oYe zz_8sVp)hT&a9k^+$NDZZSJyfNjn zs-vS9Mp@!w z=q^o9cPNV1^M&Gs#lx33%|g?*i`Wy(PyVd+k+-sbm*F*k*@E1C2p)C36#>4YiP}5IqwZOc2`ajYP88to3-?;q549?K4rl#dCAf&xSuwGb zV8YEN`1&Q&cpeLDJdFh3k4@fjX57x))eg9>&+(s*ZPY zQo72qscPhYiB&V{^Lr|$oHgIFKA#7(W}%CkOr@J>xjqisFm+V;Xjie2A8 z;#jfihnBOh8De4~dKBTLs9IEF(?upPv3TiK5{dL zzM>qek>xl-w|*BT!vwb7znQgs4dU&E88c*^IRAWc#dlTVFa5i zr!Su8?L9;P%@%?ZNj;%ahH3M^+7_tTZe?PV0JC{O!St4yWAWq`HGB2eFRlm{Y1|Lz zm^N0QJ}W)xU-_e8`^@TotDumzLzrtliD9DP0QdHJcv#+B7QJHf!sF>qfg&N^t1?$x^w z*R`~Sl2hI^9GwCmuF)nC_FB<#^-8EbJ^8Z&U&eg~u+WFQj}nTaMmQniA%aDSkm6d5 z<%NEh7r0~(bZO{OWf8@+~O zTdM$g2~)4r?)Vs z`Fj@pIWB%o~JDoB|jUFo09g? zdDF$)SJj?im=QlLR{@bRBY%xoRD?hQJDuN5A#GpDImIW;P+7^kYC#*9zzK(s=7+-B z=adLa71t=v%|dEWoKcJkvW_pXH-Qi}T%7u*;@x+b775Ze!vrZHwG)C;GZ-+7&g(8R z)E^;MeeUXNZq+mqF>*bnEzjr`s)M<%G;kUVv$$>*EdS1!1U-4`)Z}iA%xiJSOYdw< zlr!Q#@GCkeIh=(TKvnqypX+$aMyHl>CEEVW+Le=%X-~W31c23d_CrO`c-YZQCrN$SN4(QIMUdznP)SDw{=;$

    Dh{<>bvscNj6p2_f#!2ohiX4!(9d<2)JCBs2s#=CQ$V?h6uQDEnj6J-j_Js0B@ zg*Ij1@vqpOKMt?Yiy$@KE=)hoz*i?JxzLWVzrfcY@D}0IublxUKC+hAZ<_Dx=MS1r zINL^pzr4|3q9?<|_7UnXQ*v6{t6yU8ac9#tiiyIOMlUIkOP(+!M%{C+9%ltl>l&lwP2GNAIAY$tc?R!+?6Gg4}uy%{LUJDPgf+}osa&BGS)9MXf zJg!!amACJxyfUihwzVe!2PGI#p)@J|kDhg^`Fg+#qX*A&`@{b{%ZIC2Qqh*TVGei3 z?0)c*!kEfkZ}AiD&cD9fe3VD!9JR_Lu0qcpy2DEU*$ERbvN5eXSDY?VAe%w#NSjk9d(f z{aAyGwgoJqUhz$(PF|vE2iLd6UC~A}=;hdk#<&o%wOL~+?{_+(3wU2it(b5z7M!~q zRLzssfecK>9%`ax=GvP5Zb1%KyOeIh-cONyiTQ|gjK!n z)pV~htpz)|($wB@n?q#6!7~BXBoJy@k3oH{Wpn)GYRtQQo?pr3hS(4DT@zK6H!^P% zi-qpC$2=5uF8et@O6-;l1^tu|pzG=2wG1Ba-^fUFVKf|K8LW$!(|AFyQ2?a1g7>=7 z=ILF~y{;HWf-lBRQRTV#_soTUPR}ag@ViU&)dZ>d!TbEH>X4uqk!p!s84Ig-JWtMq zTD&Scn78OGl8XeJAL8%Mn+jatr&HI1G4 zFegF}3h%S&T)kUYQtBvjdn|64m=IXa+H-rXngf?T_N7%+JvhS!ZtS(E^Vz>Ir`cLo z_@1@j)7{;aR2E{B+~^!gBv@0ydL4zY|7?u^-0_8Ud!gCpN(AqpuvZEY1_Hg}l_&i} zUf@#IOx|IL@jRdtkLje;cwKwe_ED~izw`d9s@~dM2`Ra{BfA^7MMkx!C-XR>V+QOd z->8Dshwh@FdZ7h%(F3%Edo+?uabcewzwv*$cikX}@9cf)6FVP{<&GgHB_vp218R11 zXU4@0+&}ZOxnK9Xo42g^K$+@RN_DU40P-iBk)&NZ9Y@*K%6RVGr&p^bs@)Xuu{?e1 z2{kpr((gPP*l#}S#_@g-2d6A#f<7nk?l11$R104=tXqF-BCgEnB@XdY6R-OMzVZ=+ zs%daKUf||<<@D1ydS)Db#5@`1cYbb=aDL#VWZ*#$A6ep=N;Rq|@JpykI8rTVk}>;* z`Kyu9=Jsg*(e-xE-9;W8?n_fhaMF$JHy|xmyw5IkonwzNRngM2u8FY!_3E{&c6-kh z1(vHQ@Q*o#dpo4|R|mM0ZxGf-)Cq4%qn_U0KS#q0uD14A!ZUwJzYynU6@6_k)VxDy z5>S}Vr@lrPViB5_x$|)AT`q(;F`eNm%NT6F1$M@nugiU1YLGe>w&p-?r2ibm&rn=X z>HQlggv1}cfmjNCN#OktW>SX|-&JCWK`UO%1~0k$#AjaMrh@t$xTVwKgL+zMW~9#J z>Mt+dDs^Jpj_eu2>u@_UqCumVZ}|AExMqa8ytKzgovb|D-e`ND{v1+qkd?1*vl85A zbpeS%;whw?xU0*oAQpJ2n@te!fvnY|=Tt^d0t}*u2F3AfjhkkxNeK`WB6lSlPotRx zO^TMjo0GK&SK8MLyOcXMUQdGcA{hz!?oO^E`?GHvjfBHw>seMo*xURCD>rJ>gr<>7{z#OdF!l)zYntvlFfP=?# zxpytV3>9br@G*1@ZOVzPH%L_hHDJy@87^#+hrq_;YGz;Bw=dGxN{&6@HJ&^~%Ex~r zWs3_dUiU@yZ+dSCNn4zP6yzKUt6GuT8Q;$fEioQ3dl#z{fH--6{89gN3Ec9_F?MZK z)!t8$S49@O*_Y!!AC2pM^Jvr`#cV}cr~2Rls+({I*GkdU^T5SLB`}cddm#c1ef1{C zDB=4&cki71l!DGDlL_J@mRH_tIy%Y$=6if~7nBa{PdaorR+t;<)?XN|H=bHQS|jsDO!h+*Lmq`0^=1!x}SIN7c9~c#1mlMR3_T za6!ihGpaJn+9j@We?!F&J!t{!a)s|MxyR7y<5pb4Di{&YwGq&Av4R7W2Nz|CSB zj@E0L8wq2dkm?xvD0-giyTepT&?(fIpje6D@!xfP@ty5_$Wwy_SD@$LmS&cZ;np8^=7AO&ne* z&SEoCUQ&y_dqdruP5Q@49vNK+JsI}&yr#*I;X}^JbPY)s*)@TOKa3T+Yb6rH_kYNG z%djZ7ux)sYbV^GL(kMtsrwkRHoPT! z`t&LC%&5gnX04(iQHu42;E&qHDEilVC&Cda7Gd$)H2bWl68Z)PQsL5ryf*OULMye z(OsM>VNNxn9+<7Juy|+oYJyz-1rdFlb(i@2>*$`G;VJ{O@7zV>?f#MCu!&>xQp}W zBo8>MepF!7K9!mXt6z9Z4Hk4|@s@@N>+u1K#M(z}`X&{h7->Q4MzWmAk@iU+<~+uV zb8Jz!RWO9>E*fH?!LrJjB;Y~)Cytwn=t|(Uf8a+I!I>g~gBH9+q$qq4=F}BB`?Rj1 z1z#qyq)4%Xdoy#J>qfrndl5~NdVd}LOH7kE+S7rbSsYM5&VgW%bd72LH1~_;wqSda zeaHmR8v`h)Gav|*9M~Z&ftiLE5;_Kkf`n8L4p*vwe*-$;ci$PHFElH@#&rZye~3#(Znvb0qrlYxg9j zL69w~TXBNx^fy-D6N9jp%ijfHrW7BTyvu$ms*gpoOLht*bw!c1j$*dm5#Y7TT|tr3vS&bIq^txW`jAutq;?oLbbbt5m`ZM?(T_r( zx?V`&Kq{53v7*zl#KL3nQ&554qd66`WgCjnd2Nm`0*&kZ(&Ai#f~M+ai+kb6q&b!E zo-t3@L11jug0ZlGer88|7E(MhUshLhF%H6a)Kw!%KVU}$u}Uvfdth@flsb<8Yo>W+PXfDVoZR3G^v>yMLnnloQW#QJRz!cb53NlA^#6x5~#? z5RGE(^~EJEt-gVOffZ*A-Q)|FhRaS&2wY0ym7Lw2O}rR6@>d+v;Ei9h#IR*7sGu$k zvml8R^>`TY_ar`1h9tL**Z^?n&AtV|FK-zYS>iKPq#K6kPq+)co1|Uc+F2$Z)cp0T zVXF_vYja#()i~PG*LZfvWXMsQ_y+6Iw@_m#Ty;m=sKM`|!{g&HBvSW&QeXGY`>TvQ zc+h55BV~8i%bHzzH@9Q(UKS?5b92c+J}l$8NvsD#Zp)bj`R&(L=$})Y&lGbKSHu+b z9IlM*1^19uE;!gzRADg926W;`#Ap z%G$-XEB^IiFInkVm-Y-l$(U(xpf6yWTeSUmV_+T989^6i8-5H(rSHt=)GSI+OOmvO z8;H`;ak6P;2KAlAGnYEICu&SXp6~`pVTo;b5NWWklnAZ1c}Jz{L)vXNxmMd3_w88~ zRtA>QKCgez{3=^BQ~bRik9e@y1<)_$zX!U<(>#w7QqT++)1tPIYW|u;{ZwOg#I~w9 zx>oT$q3BVmviM1l{IwyNMlwe-=-_)2$B|d-&aC-MCDY?1etDx@1Kp%TUg;gzOfq>% zBgvxR644%$y%Mhuiq2kQD`mYLr=4lLA~6(xacd~=1Bq@!K&;3Z3KL4Y{uDL zwhtF`ek{_f)O@{T*U?s{!iM9)br<^ES$ei#(^_;T>J5)_SePQ)+YDNU_)Y!?8g~QA z2xWOhA8eahVcP2j)hsDk+dBl!xh>f$xwznHm)6AnRC*Qr^S~@F3>v2w?)+zjz`}A} znpxw$RK<&Y6!Vl4u9yf5f%gf0K++ir=O7km$+&uE?;b~mlX&8;x+=4mre@s8Q?doz z$(PfjB*Yn?KYujxCT#y<&**y!n{6>1Uu8zTNZ+d>J${W?ifqp|3pS4{C@j1mo>1Dh z_~R4S-TJ=*4XvdIWbBGL1nrNcUk(|Z^M5ZcJnRGqM~?e{cZj#>UXLg)Pw~0BTe>*) z7jH=wFq@S-VdHrm5)DAg`tQuJYwbtFizs7+q+Bv2Q4y+QLt?}<{C%AnE(~jSe9JC~ z3^7l9#gu-n9x=f>Eqc-gCxnPs{BS`*r)(5jwfWHq;p)yqpFWhmVWx%Vxb(5y&5GhA zJ5go8`PstZ=~hMJ`;~8r{~@U)YtlY%|Az_>aRNS<&X&*GHCz{SMDANlQevUcp;G*g zVGy?VIg?lj;uall&jH4z&{ZcIx$*q}2M`DL!d2stZ{2q1B$1X=HpU_Tdg~s()$|18 zX@Eot!8UZeQcO)Z=6|@}LJT&7gIfUp&qhG7Joqim$f&TWNWLQ@@y=|L;YZKPl94j} zfLEhKZ+#g!!w=MH89se9Kn$(h$zfC}eu2~Pn7^vkD^ug)D->yR zc)418hpqLD!rv25du43%5cqgC&S~+0(Yzw9NzC{Bm1`@d{eJhe37I1wfbd0A0$FA^~a1>=k_=>drLa{rr~IGb<|BMO>GI zS**#=x8}ZsDn&01?75@uRaPn_=_cIyMJ|lYKG$3NI483pY8Fn4q=CYOqdw4)Bh{xG z1ThAA;xnrfaE{mtIG4&3LsaCcw308rylHcPLlM6@pl>6*r^j5cD05Bl8hIsZpOF~e zpI?n;#0mpc9Z*KVR=!BovPw=0bXFx>WeF|16It8$kA5jD59@3A*L*=0*1tpROmP^hUclGQQ?{%M+li8#TG2NO zF??UC&rs%THw;CI!?$zEH@1!>d3i}?QE%;%}>Unx*L{*iSQ}FV-)IrZ!Y15jroCL6L&Vox+Fl``qFZ^c}y88>*oeMsCR1pYRRsPx9x zS$Bqe6cmv|mCo<6aoSRr+&#`8VJBA1wc-5niY>$Z`400IhyFiQAR-(?bRNqm@a3(> z##U^Ma4gFmXqse(e{|d3&i~MEEJQ1&&9d@Gq-bv4rg$4N7S5UKtQ-nTSN&DT3eo@q zz$)>Jpq+@u2ydkZ428z?;T*;MDp7v5&p-G9b%ZYpN%bCF>Kc7;SEuIl5$8~?-WoQ# z7x(2G9Ej*VWm?5;Iatk<7IxUo{0}NbRSX!tGXYGy&tjl0I(K1*M$p4k(<6`fhaH1Y zo}`72BDhztI|}N24;S{+3{cMN=MIMTzF33C=!~4Kgj7k>->%E5i>ZJAo_lq2dC1df z3D(Xs+P`b(V{`@>#905E1>;`YG)5iw+Q?k4q)#QwlQQQ?g>^x!T#5S7kmBcFeUMM_ z2n!~}2FBR#JK5SvEDF2Q3W%^uNL5{-MSFo-d|ifWkB@fR+$jurq#sdhD~MP z@>>cP15BD+h`7oGms(m>vnX-i7rQYHuGcQc;oTK@(qT_LF>!hSZry# zmViFpx6*wIJ^U=;i9k(j)v8rYMh1@(iXS|dIN+GG{kKI^1O*Inrs&-Ax-B=V%{2?5w1x!7bs<5(riu zL6&rX0LlYH8pksq6|8w4pIlOgG5@dh!TTv`IJGvLTG^y7yOyaiqj1;#Qwx?E1Fu5o z79(Yp6iSfQJ2SlVtke)l2E{utFyIp$JqTPD__qNg_90Mxcmi|pO=MtxI)|b7Ri$OO zvB$;U{hHOUmTcnhYuXojNGZa#+gg910hhi1x+qq1`(O`OwD=KxA_Ok@64hCjU7KwTyjl~W=dMbGc4Ffl$2tC_LY%45ko`12UL`xcFM z<2g#6VaJ?dEoN-5VnU(z5KT*>E@G?E9_rp>46TT4^t`yUaj3JDI4nB1Fd;=~n0ZK& z_Osul8z~Lc9?j!7rn{H%x>nnmY84Jsa36*mjGfTM1PN!f$%x#sj`oh_RZ4&Gipwc` zSQ8$ZFSc&B6{@xMj{>9rP-A|1G98_wgn7RpOKp4M=4w&to4oJhbq+f_y9GG7@2`LY zf5{Zh=RVkp%q?(^3Up=A&mm01olHL2V3mYyDIGlpaONX`y*hwAGUg|%5jAyAr-w<^ zSSoSOt*<+JX-Pzi7PR@9ii`J|ExjQL>Tl^@%~il0$=>3PB{udqQ6Gv7>vpR{8br+Z zzO5W*!n@OAwfe>9PI_uFL|%(uRE&&A;6c$5!m4E1@-qg{>LXw>P(0GB23Z2gpk_Ka zvq+n;U_gJ*7+nP8M4plO)XHI;=xTwtZ@R2CoxJX-d;golalzByu6CDTc9|4eFlf}C z;NMi~deB<@l%{fQ1an)kZY8Q$C^{iV2^IRe*>@_K4Q#(2w`l*LvKIGXkFq4rOxHm5GCPH#Ylt#QRnPp!L^9F2aXWJMwp?GZ_bjp?&Wa{t8U>rrcXhrD z=!dx?co=z1PO?!8#;Zm~M(jL1-AQ0D$Dxz{k;wJf_79wEmm{|qBq)piQ$`%OgFm2H zW`n0UplHo**9qo-*U1lT=5ZPu7{b=nN>3l zlw*-jplAvfb-!*F{xrY_#AzeVWJm#M*#s$IG7^jUc$8Ca^R3!wnkG0QUv(`{aOB$= zZ!MH|E;>X?jXazED~`kChX$CxGWe9fu=!d42zt0KylLp)Yw+>Uwf0ln-uOxD?*i`_ zC8}{IYZ8aiMU(pZ>z6SAt&12%LJ}^(``529do{m>Nj9KF-IJKlX=O;#z(AaAO5pea z`qq0uisFm)DOdSubEK!0%F4R2!QpVmXF@&>(6~+d1=+!`4Jqk%=9>I`UtJ5eYUh!W z>)JI_HLg-0m3!rP{CL1BI=v;6{$~~O?NRnz2@x^QZ2lb2j6<)5V?#MxKGpk7`RLqL ziupAdJQs_l*VCFb?>|fO`uiPF-_DnQdZ6!w8-w5r+fBVQGdpISIXO1=fSvt*g7%33 zx%g1BlV=e}>fo_Rhf!upHGPITU6J(731z9FL)6rihk%d}mygPES9qe+6W`c?(`Wu_ z?)C?W+0lDRs*b1~v0H$_i~nDeJd6~%YOLX+%5whWdb}Pb2IJQJ4@Y#DbT0s}xxGt7f+>SfF zd#1R^xiu>(so8if>yhk~#a1;>yrV{V$~) zQVyvpga9@rqqChRerdQxI|KH+h>3#FTTPIh*ncJYn4zJX!r<1&?-F}^Q1=a8|( zj>#sJT;bacvHev|wt#_xKB=1B%kzD^Li=-gWHBv6z1r6C-FNiT4h}|s#+I?(z{sWh zEn;>tU1~w?N_5*HOq#9s_FU|^3-}oE7nww|;KM|qhrM2Kpb7Fc3ux9zl?26SfFdCL zGYY-Z8orN+qTB(dOl}&hx8tmEtxey*v-?K9u3C(yDCWv@G!vWncg$dkbGrm7O@Um; zLG6>$w0n`?Ntx=B?gzNV!pPLfCgO&d0Aa;PdN)Ohw=(|4BRVm@xHDLeIZrCbAE=-r zYe3{(DivRnP5ZGGHb7NfTC*v?36dvC{TBCUNs)tmHI42U57Wz#YAH3qT4%nJY_zht zEn^ZTg;v+BoQ(rzL^R?nBu8AbXNKYxM0@en(*4>rx2<+^g9KOnd8D7ufIKN`%PP(}i zr@Fav``FhVQZ0>$%FwE~K}>SkHtgnV_yKo;ps?5SS-6lybEKD7*`Kv_%9Yk-%_m7s zU&?P#8P2`_ZDh!;gT<#oyd(d8jDHd%t8meb#+kh`fKBEitCtP%43A;uc|dHqhlKJ# zf4>x_QdnAmy%!i))zplbwPALA$L5V z`#o_+Ro9q@ZRu$kY-AE`(j8IAIyY|;;&50Ej&mH7swcqt^86@07WoDU#b00DBK9F~ zm2B4o!>R$J_a>kQMfYmmAz>Yg7oW@>kr1lzpQumy!V?&EL-?(>7IpR=XtMWZG5%MP z%G&)I&Z2INDau3ltQPUMCw)1H+dIDB_HNijO6GPZ8+<_ub4K5CP(hrj3bMCltzh8r zbgOz){c=sP`dwZ2!aKprXDRu^3c1p?e9|a+yl+@u*<6yP-IG6FGx`5ReFiPSS>P5xZU0-9;Tf4!#SK`WLQUDk`|C_9N5_r%Z(!=hEYLvG3*^U^&le0& z^?#W6pE?7^s9i<~mk>UDl)yaFO)dI1@JSb+pEfXgfhyQ zHuZRADVG7u>dHfy=11G~1A6ZB6<$SuE>HXDzbHG<>tcBoKhT`jnKID{@yRPW3q21^ zVN9~{TAXL6qVHOhOd|7I>=4FC@8a11qRJY-fJ#mOsIu}WH60UC#4%+S6QGmGsUAB& zQ(;0aF!7El?&o1EAA0#f$3~LgetNo+Q!vMoF$>%9W%Td zWs;YdH`Q>%{-)0`%SYGL@~ zLV8@~*~={q_gL-DU|kmb<4LdqKYaBEk{UO5lj_Oke2TOg8y_b)b(HeVsW6eN>rW7yyIVP|48k4}xf9lFL`kegFk z`5~SEEHxwq^K+t3c7DF<8@y+?Liv9kD~e=DuCA6?#aplJX>%TM=3qlVO#;`TWCA&o zK_y#l1s(o3c^M12)rj}PM*&j0HD(z+8t%Nvsz{+lW6Nu1v$hQ80F3ZQ>jgf$jbPkq=$bMrj1ImpC2M zFif27*}R-o03n#~UZLzE5cdlmkwX@PJ;rEJX@ zZVF^0(9}iQ`s#u3FV9we%ZCn%MY5kOuC4)Xu=imQ8P-lSk3QR<4wJQ%)EM>rM%7Hd%nngmdX zPl@ZKmIk7nrQCIrF!=Zfk!}t#8c+CrS~r!>rqweK*9J0mo|5Rqk+6eH3bHo>j4X|W zjD88Ln+$Sw%{-KBbNoxSAOph|+9A(RO9NFp7bhXq%2haKgwf}KqmKf(8&&1tl5E4| zaY!6syh(m0^f?}Bh zmEK_)u4Pxs<|=UoKns|Vo4Q3&=_e2%*Vpm~l>6@|3g=m_@9$6JQV#Ze9Iat|RDRyF zBlQ|cX@8RbT}8IQ<(xXCt`n3jMmbdHNyqj|iQ0ew;#BdF0?911@YYmnM#G#1(VBR{hIA_ZO5w@qdz|^4>M1OJN3Q$H_hjR(Ui#B+SP`|NB)iAuU@W7o_+R+7aOZ3d%jtePu>?<)a)cj zk(-ET1pqdExo}T zJ3FqCQT~18u^GU|@MFo9*OwgV>M9iIm zNsv3{Rof-7%9kGc@NZG!)!;yn^ zCItR0ts&nmP0aHJh#cfN2}JlWW((80DRpG9;q7m{;Yd&AXS<)Uc<5uXljW88l%Kx_=yqhy01vD7FNyY2;X`cLT8)zKbXU{-iWP)}UBK;~@lVZfVmXk^I0JnARE<+G;xsylh6ZPwxqSWFDcP*L4X z*EAfq%}HvaSuOYrl6gA}{cNesysyd|$616*PgpXi_kAOi_M@&~;z-ieqG;5gYys2)i9sq==VBMtS@C>c`)?ZtC+aE$iG6lD;5M zQAK@zqx&a#GiZ@rDCA2rxy$? zgd^Y1zi+!or>36tXq*A%@8-V*2=ma~RKUF8aOEk={1L+i8khCKW!^8Pqj3OnwNm{` z2aKv2fM9;*vlxri2Y*8gX!gYwTKj|9Gi&dM{;bVTQT+=IyU*LPLB9+1=D*kBYi;4t>2yfCy>c?vfH}hKO=;7*LOZ z-JW@99r${s6M+$ZClq+VNdt@{%J`M{BXFR3W0OKlZ8-%~bROul?=VIrdTxy)!v8XC zW5iS<%p_U)4~WQ#DzbWgU^6Om zKfnu#eu`D$S#tN*F*mOZg#8%b4e}Yta3Ijx&Y3kOd_Kq^ZS!6LVm6&WfR;A2FdQ(~ zC_dM4b1y-g=84yw0Ng|<+IXM=|4&k)>9qD@XtUNPPYr0~~Fe zAmbsv!QvIY<+d9KZp25h1F*sK0Zp4ZU?iVw7h*R5`DJMu8SXX?V42j`!+)`-@I>JWD znSbfz87e9MV;SB^m5(WA&Evk-6FI7>ng@3m_(uyNY#dOXCbGI0$^qeyxQ1?;o6%bE z248A%{L!i&VY&tW5fK+qyGrJ-P`d-mJLp%f1bqbz$hWzN@Y{>1*ZLn{`9wVyIBfSS z*(vaj%z!y3$0W0`_l9k;nWz&i!KKXx0>zYBOxouC!ZID!#7%0 zkaOQiDpOd>#e|k@=R;Fo+}4m@q*|T^IV&fg-=01l;dFO{OdsljP8L8WHjhII>ZeG) z38W{VgCI$8RDP5QFwUE}aLwDLTqLIoUkwh%W$`<(Qt%ik%URjlVwMeTa6Ed{1jUyFeK`Lg z5Jp1Z5f7V`VX##fPMdE&rSnWb^9M~2 zxtW%vq70d(2fQcKgV=xaM2mDE9K3DxrhGPdbKZ}2bbqlCC*&sKFSv==^u+7l8l(M_ z`4IoK0FQlyriH}@Smv+snf?nHInaC(RRlIP0KVT#ae$meK z6M#v=NRfcIss-!)S(=!ii7ui%4}=gwN%CD7=2$|GNy9f|sueqH8``G&Hsj|Z_MZ=$ zS*j;8wUd$l-F^4%^-}#M>|$N!9^XY=R=YU53aWZrE*H9DzAJy;l|Sv`JQg0A9x%sbrBJ|puus&FGK)54JT7tt#7QDZQ6N5u0DgTG+4uzPyQAG_ zP_H@CCLXt4S9E}GRc{TUXiW(?P|F)%0ilNik8r!y(n4!*2tUX}e9ruS+`4x7Z&~2K z8R{{r*hzak8=1*?*?ZGTF5W(*R1#BswJoxmNJ9e8+Wr@xcaI@$y`e~J$E{jvHq>c% zKfy7(k`koj)2RQAzP^)`J%*^Cq}``s-yyv5U{C8UjX}Hu@^t>T)$D8%!=`tnfVIB= z^i46u3okFf7|n6<+hzt2U2dxOzGQ9j$}?!;igtpQtB8sFL>g&%z1g*YtbXx z^K0!I4|;HB=;bR=_ECt}0R5({;ScL6oyrH)`Z4dlwHCsg?_4Ft&Q}|BrFwf|K)D;j zqx(RKhp&}+^LsA`IXTmWssuxBcVuor9gX&m?#CyCRB68}QS3Wn?^aLdrCg9mo4y)d zOe-BH!xk4B9^+;ieSKCSK6X9$uXIoRaL6GKyiCx5(h(rlLGq)g40wrK;*fl9yL;!_ zh;mQ?87Zeeo1{>La`tz;R)&bEq=uR{y}3VO{lV;b>Rw%v{OT7w(cKL8)`o_4Y#-f# zpNLmsKANA_Dn)Y@CP$S%l`3c`(q)^xdU&MHa@9~#p0LvP=h==y%5zPmpeB=P0r@TS zXMorpTNHI~O9wG6Rr&@bTe~{j9h&c?OZ;LO3Oir_ApU4HHfRR#D?A0^uJBVKH^nG> zh_*c`pLsIU!At9*naMcgip%3?H>GV2V&fif^J&?P4k|mDf_B4qMIV!=M07IEGt(JE zlEYbUz3H0BR0v94}NgebilFLrvia`d7x|@>R#zP!lWTLM36kPGz+jCql zkN)QIx++0z<{!$vko3T;sHmL6Qk~Iy{x@3bMBL7?1d^{dL-vPM{EY>J6G+X9>1KLG ziE)}pLCjrbq7aL-Gm0a~{(fsvhp`{AQ1dXzj0%bY`fo_zU3YU7j}VDs2;64<8geOz zoiIAI)kIydwwnzvtW>iT(q$K8J@|s%y|hFm?0P~nC;p!I1{MD$TOtVeS4Hy`mEYM0 z+pTF>OCwfG(BzCeZ4ueslM&Z~nsoAQm%5gqFlXCpgHAA&*1EMVTq(F9K$qIcNI4^; zw2{?^IRd7VP9l7KbrM7CHcn2mUS6!}E!gcaP0FQ}4OvTgLOGT1r6=F@`EMTR zJlJ6ePq!LOtTDv&OqQdgVvetS7wZrR6R8*eU7t6fWYm&u|2C|0MctY6-oK9n>j8c& z^>h7G+KS=yW=B(X;=o1U*6G8<<@K+0%83<0&BKNf)MD|?zSqwNj%Q7*lT-c5IB2|f z7q2))_WZ8B#eH_I28=&)={Sx4dbiw36(1juO%&DM_Rwm7Y1!4wes9sQHA}X8e`i|R zu=y?C360S3DwtI*53#@>;jacl#1l;7|5Bf&=;sd~v7q^g#~{sOR9S9IrN6Ccq#%?* z3Q*06sJn48mr8c8B0!u*z%8W;cw&%r-I{v}c$(Q*2waeD#52iJ>M3nxNX&jJU65u9 z-@QMjB%i)lf7kWNYc8f6r9W)Bdb}QBlNd&VfT>u2Ahrl~l7xXzkYrC{1cn+h{o|hj0>%HOR-eHJ(7nL;mt~M^#W{MC0KSd;9r*up*#l#F zY>YR3z5?*adET#;HGaxM0ZKwtKBuI6_cfXZ86G<%bd_NH>jTxW&bUZYp{ED=yqI9- ztmhq3ht49OYOD)q#k{yxfI<#2@z!>xKm7WMy3fh(GXNJQrXmm4v>NCbp2l-URD3uQ z;J3C`?LJisxi2O|l+&%&;j|i7n$DT#0zX<^8|+r&^AE}A%}?RZyineocE3NE(IW5Q z@LM4&2NYwHDeh(qdnHvPBgT1pHSL(nI#aLruFa3Kf1jU+NLDD_7Vje?F3T&grW~9L zNM?L<3Z8%U`gB*&XrS6;+J)Ak68sT_Sz3# zy&Dp$&ZMM|c4b7!)sQ`?;P6G-*{5=Mg_&5b3g9E*)>~i9HcC5n8wRK@P8bv*7LWAx z^{q!TLV;_md9mq2jhKW&B`P%Rz#DZ9@z6zIXvS+hPC*f8L`Q6Fu&%AGF}7qXZrFiZ znFsH`#u~JK0!XHU>Fy1n-GT$9_tZ${H2_`x9VDK~5e$F@*avy()cy8Xm#eU5l|E+-|uH}}6@00P{RWObAAfO1vx!7PIhT{Eg= zmNgH!3kh{A#l0mkJOw#yR?Pk}~?<;qL?Jy5<5$z_*4s ze@{0*IPy6E=lot!U@gzk$jDs9Rb%{fzQ5=k9IPvfAl|CfoD9aY!>T&pW(Ux;kuU$e zXt{YwiL{Ft{{Bu>pAM0Awn^~q9SmtFH@~Tr8%y>MI4G)J50LchRaH11$DH?dD(2;v z0?hXh7w-@a_B*?x0!mVZ=+t2WD)C>1c_wX;{JP2juVa#YD}F7yP0J|+n~O{*j8G$4y4BKZOG zfR`6zdfF4PX0k>;P3^{rCW*a_poM`%!_t@Pdcl{M&vNsuK+>4FB4}ZytG_|mb4&bW zS1h7z_Facxud4ktJZ@KQcNH|XzI(#7->RM}=}qho`j+m`-s5ckTK!fX_{_SxSkJ|A zTiA;F*dBYldiAuh!YS8J-q+pa)vI7Y`~w{UJhsV_s5RG~s_);w7a0Yi2l2-KS3U#^ zKyQ~sHy_im4arro#%%(mLMs~V$lMQyd(4fqv5Jg=FxSv!pc_dPGXA6XR~+&(9hnTc z3_#I$unogrW{`aR9`|fXkRLbTq^FMfi!#^DIu(*=F3;5*G>!9TjkF?2E1RbHH@`&GoE(R#ZUf{Y>qJL%)%tmrm5| z#dGH$f|LdumhGeL1nD6*5|j0D2EojtY=fKWz_=D3x4FPyy(A%lC&>!3eEpK#!&ew? zyU@>JP=MNjg!Fd`d3&zMp8p|QQ`qd?rkc2>Ke4w`a1ig@zct}jm|`jkxkM9p`R|FG z&CRTY%mi9~as*~8eDj{jfNbcZz5xB~$Aj+Lm+{GA+SP*>e=YR>Y9V5!t|)%O(8)ue zdA&vmwbvtx>D~LQ=p9?Pse{0`$++|&NopQ?X+0NS{rE6tw>+L#3)#DlT3T8UL_{#M zvP?Zl$s%+rg7&w@?Hb=7Q@6D_5fjtHfXVc8LV~*KS=HWjVw4Z3q?d1o9w$mGZ86cU zqM|~O`_2|abwxL*R5C~dnqS01 z{J0lLuksF<;UG44+6*e65b#T>^o=!%4+&c@2*!;w>jjiQ7(TlI2jOEDx7`^?xvOmP z+~BFj1Gb_&D#vL8B9cQ4-`1r<->V$(#-jUq7tqcovH+R%wYZAaGX zzk%OFFQ!}&_Mk$C!JqG{G%I$lU3L!ua7Y@XX6v%h5Y0L?f22_)otSu=sbi%AOR9Vz zO}jqDqRmR4qOnkVkOU7p4VpoGK|BwJQ?)SM(jtuvUKQTisJvU#p-TAv4mv6F*X?ug z8voYH|94C|M3iZ3=R;vOS++re@R|4+2K+m*1eS1r5YnHmcu_oSrMBsNaAN>Xr3Z;G zcfA4w41%<`lk?Q$;FJv-@-gFDs`)ajyfEV&R>4-A_`b(jjk(Da=2d@{Kb|BBGmHsi zb%ot$la1{^ki97_QD(fF9i80n?S3+X0r!~i@m;VuJw_BLS1vGIhz6;cOz3(vA0Rjn zMdQR!0q+N!X@x*Y{@}mF5HRT}fIb)KqVdQz?Pv%P(FWaiKPnwfW;}wa=8BvhlA8xE z@v_nCoLHDusEDiNR8Z64_x^$8`+*WfQy3)Z z*1iBT%;=pX#tAwN#8$XYMg^^Y6Sg0U44z-RZ*PzqXmEi`d;tgT)*To;;~qS7kP|zI zO^Kn^h(c0+$M(}waf*|rj!qdXg|(8r{Nmne+bLX>$yhAK0o+Kidd^FBN$%( z_80j@(@VcSrs#Vi3B|Yq@37xB(-mIrHWs(zbtK zFKR~^y!g__&J1XnX1g&N%8ejyMbO3VtiFQis29?{)5p}$x91bXvCj{`182(qZOoF0 z6xnePT+_qH0nHzg^yFW zL5ZMP9Yn${kLfHi9(%YJpr=qOnC1{qPhK_&f8qu&APV;L`!v7r2~&r3n7<<%IJe4d z%*>mVXcZHKtLschey-GSY*zo6f_32h&XqM%xPWm;5F?}`*f6RAULMz{;vzWluKacO&e$~H!YbTdVz^CAZ?7WoXuO}zO&4dfbiG!Wb|$PFJ* zs6OTTK{5I)L3(dzB5rb#@d=l-6+#P+kA(Jkfv4@MIHDN`!3~)ID#}nhKcVfe=ctiGfpY2#7c|dbhS$zwq^( zpvtx<=urcR9N_}kuciERLW{2P<=sDq=%tat$GPshC)+fow50gGE>2Zm?P9tr?-iUL zcQ*yCPr2)goIlpSJfSc?%yxD#5zG!MeyKh-Q{v%R_*;4^4%cuhIe2~owx7m;RUuO4 zEEFD4q9kCLuh3@cB{28GY)L|h5Nz2i{yv<$^pB;r4e!nvShm#cZwpPhF$vWZ@9lnG z{i2K+zabcxU1=PooI7hLXAU}i3C-|UrjXoCfelwqMg%NgT3jw?g#Sd0v-jG?pGp22 zc(^G`w@b&}MI36sW1JNEJA7oxDh4-0k7GYM2`yuqV?QG?#J`hj>MJLy!j7vmN*ZTn zaqJi_xyBUmF;MVFb7==l3zNM`G|r?=k@JXZ@a#7MkNeRQBcq!h_j5apr0B}wo6ac- zgc(#+ryUL0ygb`Q!cK*($3{#R-GZw#CmK7tU+~oKR-1Uey8)6-HUhRiXNi(Uu)r^U zk?+xrKwXCp2Ls5{(+f?#Gr2BM|KNtce{qAYk^x?HJpN^s9}*ktGA^Fx#%jH<|7m4a zY8Q`xM|rF1rbU2;SIKU9$$5)$fVI{* z7xi^u{w-6?cAGOlQOERS8?E%-xWpNMt3+IvA5W=fbvoPKO$EgJ9xj)re0z_sGs%7}wfU1NLw!nk{Ax!OIR+nqfWJgn0=DR){Y`*ONM3X z3IXl2z}cLiC3Qgb)05Jq*8UBQKXp`Jq6#Tr2^>G3(=o~-Y-%JhjpA}KRVE~y$}>k4 zlc7IS4p|I@cqFmC9^FAd9Z>!;K+Z8`7a!6=!{>4#&A75Kmi=An4<$?cp6u4tYS6ax z)6BnSDf7&N-iYrM{AdIG)c_pkJggi$@C_oo$=W8vA2U$1IO^hQ$7p68YkT@GSfJ@1 z)BbAUmdlrieiI0+U>s+XlCOtX*IIgB)D{ zMGpES!*@PYpiM@(To`F`l&QAA$Aqj&k|R?4SQwn#^}X^kBRj^57im=oTBVEPOz@w4-GTKmWGIm6g*9Rp(B>XUEa+D=6O=Z zm|EKx-ehn0fJFh!jJIype~%3L%!;VMvzF^0vAk+kFCGn%GXq7K+qdsG>{`Q<1cb{j z(CbCr34l`Q89*NqzZzHx+GB9<4M;0Fl7cn?mb}EHk5$qN*&St`LkI#L$ydEzQ>c0s ztc2O&4xHz$o-EUfU*+86m5B%0Rs|g^p?HMEt2ojun(I=Mg2s_$@rP*dG&^34J*BOg zF%4vldic74l$**s4Z8=Fu{dlU?59`sQQ-z()gMo#7;Yp|GZ9OKma7sc(}>2C*d6V}ZmE&KGiklBmy;g_S+tJ`7ko!%1W zo-{r9j={l5fPM89vlf-O(x^jxz5h7-t;DJP)9j2%MzLlp(6Z`iF4!zRRI9tY*}m2C zhQvN2Lly-o7!13^DzWNyWLyQU<}ccb@!QU)Gs!VnX#~}7}yQri`&sUKh{8_cxJ^+ z8b;8dRg(;9P$xk7{0Ijz*GXaorc}gmXSfQn4=0IdIKrAAsNO>!GAxZ?u@rKc-5huy z+}s~p>KR!V(JWbtH<6GF;Qct!(QNRE7 zmu%+aIK)}DFeMS?h8K(*=cv+B4*MPZvrGrZ%LKBej#9)zHD6d=Nng+BoyNf-cS#Oosc_Y(!3XeD@A| zc6H>|ws0M+Xd>#wvV1D=;M}y`FUOpa90T%B3SzA1DNDV^zedgvr@LpQL?a8HzOq(^ zbtsNG-LE^q5tYJkeR45(Xyfk9J$^R1ly}{MancfC*}m2|DD}kaf(@ULhzr*bOpOhE zkWK&w>VgY-2u7Wm+M@Z40ze%6Q1Qsxw+@m)llKS=Pt;im2Lm`HL`~;8)GkXJRrSjs5eq$?vUt5GCUSbUst=aJp_E;**QK6G=n>CNQeFA4?M?;; zsb@cap`lN0F#VJyk|`Cp0+V_+4iL(>SICqE;aMX|n?y#+Vb}0H`=H6o)Z!pxwf!W+ zK5=kFs$#O0^WDkRqQu89y=s4k2lQ!u8*ndlv{qU0QS zUtA}ZpkUOBVYXjoF@0#7b-NGK?I0%89kBGnl0aKtkG$7@d(k)Z580^9yM1^EN|1T& z7U#+_HNC-72Iq$oI(LlihTNTnwtO4?y8;c5q9Qndob@KGYx1h&4C?QmC>(px`p{iv z>|g{6z3#Ik=$hK5kiz2m&A?wN6$g92SIg_wM`K=uDtIpe9yxTG7vMpE7Kjcf29neh zx`1>>Qlx#mk#V+ynqhVcI(!3+`5GE$IaduLF}in)Ysru!IiYT7Obf~#iOX_f7l*tv z2AJvFh}Rz0WO7BnPnRJqsyltMLm#0#da)7n;j#77s7ebGFb?xAj9aySn-dHP0ZnjU zVKzSQRB}(j-|-Woq=EJWOD=rmNR0Md*KJ^} zo_R>lWj8YssSyljjkpXLeQ^dYs&{yQ$Ov}}B`j+|9%u8^W{S3;>YFjUaz^g_xS5IM zx}aYzb$v{D6Qp$ToL0979sZ!t>bBFaaY>46;$kSb67<*y`7FRVN>=r_PMLH!`F2=E z`xGPS)6E}>F8YTP@2EK$_uKV*;=9WOt%NkDd{>s(&=W*8iFX6}(gk7H0D2~(q8Is7 zNzQ5YA^r*K5LaJf{F;+L#`(=26+L~Iv;kMhcF9l*ZBU47_YnOzy;JI)%C@@j)m~EM zzyuO+=EGJ7_lk|&=I4sg+eam=2fVjpw6xGOurTtOhSZ(}T>CjW2MoNK6KcszK(;p_ zZDHmAA7ftv4t4*oUm{!fG|HA;)M&Famc|lA6tWBPiqrpa_EomSDRkRbr~QNSaOP$duBIZA8Ve zx~_?Vl$9_CVO^fdu7>NpIaN$C_dpH)UGw4xiG`A{K_xm05OVpZO*~l(m|arSWDQnM z0E6rpiks!bLx80PzVEbPjQq3}0u)*gf$_H-{N zrXsoKYF=KY{K8(^D5$8i13gR#uK78gorTg=Z>QGfylCM%>#av(v(y zz+YkRY(R3dPi*qzpd$PFs)347)v`UO?y`QF<}VWkT~p>Y!`t+n}>GoKgK-F zgqxaEb~HlrE1Fp2R6SO23bI$*J$W{9=^06+7KTgJlx*MlN(wVX>zQPzN*k`+c*GqL ztn9s*uT0&^F?7F)IJ&!?#bxFjz;_h0)>BJC<(-&q{uKSvqp9qm-jHK#CEZqXOTqA4 zx-ARyrG}wqaLb4}A;*9*lbw7WzC!%Fg&{S)b#kER(zww|$;C8dhQH;cvzLrHR@ZLK zQp5cX1pM%)p)7NOSWTpNa*;;+y!uKqn_gShOCKxi&%3c0*g`kMf{dONJLN32%7fn0=By02G|QqgnThTD@?gUzk?+; zpX&$D3Nb3&8tIHN9oQ^pCt3)P)(J<)po^IMIIK+Ke?)b@XOF+>bzI{u+t-qpTw61a z@V)O3D{wQ5TO|4QFFE^yjPCTxYwTAYdfH6Uxs)QcxZwpzMhNRUiYsfJPZH&BN(f>( zE+6G8>P5I*pX+4AJbD#zhbSS7eLX-g>8sF6Nmx?)(V0h6s=M z@0hLMaOA2yS-7!SM9_MOfYJ#raejf9BcR*&P@`^fj2by$*kiIDc@bK9>i%ezGz1oo z8m$nA?3(*B<$u)!;AZa9d*}8tL($|xtk4YvQ(z7q{-U~en_2+O=u0K86oW2htX5%*y zJ}YCt+=S+(EuZUHox2lJu#|N9394=f&+y?q7s0?=p@%Z|FleNWyy+wNI4>Zq?i*a~ zo_|CN^E;HIHub^Hyzs%up>t}%F`EVvlDZjNVeK7M`+b}rgX9j}$o}B2v4MI%^^`dP zgpi%d^AAv_p2Gb#;~Lk02X6~-uKol%<1UgN6Wp|XI!%E?C_2cq>L98DC*Z+w0{y0X z0M=FEBGwgVh6PR_NZ#_+;ILjNp)kQ)!B>Xw>~abzU>EFSA_8VQJ${@Mwwsf!^VVy1 zpL%5K&t(&GfWK&DruOL)97OP1Xc7G`xmcR30wTpSvEiVVW*CM=8|NJMvCOV*mE;}r zdb{w+_)(2xIb~fXtDy%f2rIs`P+(tggTLQ%xm*?)k7O>FoTE>7P1k}1H;Q74wfz=t`vxM`Tg?}wpu=Qs6(Kf{8~+w1<3EacWXQE@le@QQ zB9<%U7ZI+tx_;Y&H>%P)>WR}UCX}>JqT|susBA+u??f-@T2z3n?0R2Kp#URZW}OHn z>cjxk&m1XfV$Zc1oy`|k_OwteKRMvZy_2jWU~4JGv?A9}>^h^pw_j)Hzm-8;Wrv-j zKUD49{&uNufeXOIr>LQF({11HlVjtF6+BHmRWe7E`;?z{k-q<3BWzoYLQ;x9d6Dyd@ZcU-%ps0au%vYUn-mV-)0nrr^^6 zB#UU#4Kjg~oEW8PjALHWKY-o6BvI}_*hyKVA+iLZVffbvAj!txM{*-1I+As;lyYey z%5&xg4}I;2S6PBBvPEy3$!z1YYa3L!a#_aL%~_1st7#j|O9k`P<4% zNS$&Lcax+`(KZ#mgcvYUG{K6oiVD2ADvmayS@6^v2nXM zBHr5A1m78oXA~@@2C!mOmzjojzmMSUc#T|6OvF(z<{JwoEqeJ?URa^xOV7yZQQ9#= zH?2c%REUPi$<|dTNGPp)oq+k|2{bEQ8)=+m*;l%y7$ zqov^X3*+uLvIX-S);5^XUSWza?|K(Em4=I1iQ06mw^^=a4d?}4W;m##db%E#!VH5s z>dkyA47_x@_U;P7E28Il=ERWa_f*x#qYHEOq=atrEM_IpJT091-m%?aC3$P#hbd;V zt6$3=^@dF9@6yVL_y^>;%1w6Oo%e)x^hIpFR=$gcV$rYQilsb=_e9`W4P3wefQ&qZ zGDC@Sv|PD(XW8|@H>#Ji<`ab(NxmMvXB630C)FE`&Y6E`Mg>udrM0{hm2gor+Ub|5 z`3AaQrVl~eM)sGe{#y%BqkQGDGs&52^}+#eH-${4sskU`4)F2w9t%njGEvK&*18v*Y)okEz~Ero(%lYDj31FU3^vj~SL1 znKR;l$LdGi^x=FIu<2VXwfac9jja3NCjVGqVDL*jg|W_EEB{&BAh8((&f@o+LB+EK z^v?T=T_bb=R;U`U4w+uL((DkT!X(wGCH=k6G0~B^9`}4{(|?}DEAhNsgRNA7CU6h( zXae3LTfm<_)HDOA(ypZ#%5S2@H|+=U6~{ZfB~(-aD*X&9?w`XNZ)oMjm;Wp$#Bf=& zzQ%g04;UPG%PFTl^FwT%|-UY74FrRLy{wvet9u1kr0 zBEPXd)u4h2e1M$c#7)e~A7YEJzj@uCt+pUFS2BTLSB_*N3KvqYL;~fPGaB&rMrdHo>Ay!aK@W+cdFtE()%2K|uHg^%kHu+X z6R^kEvDMAY?g*LqmUdu?iXahwJe*gpZLT9nZu8ztc*RGauI>H8)O4*|nRx}vuu10I z+FCpQxV)mn1RvHMXrnvNC3mBprM6pZJ&dJYw8PR9XuC#K4*7cuT;Av-&t4;topkO#!-|W3K0efaFrI|o?Mm&T6pQ?l`Z!LRIA}8< z`vgGZ>Sk??8H!j7%99pps+8J)b=q)(I-ej^v=OiR60K4FfzJZ=M(cZmWW1BNqr0YE zQhP|ykjb?P>R4U-snYvz*g^YR%-@%5`vc25xQ6WLGPv9kaTUmvM6f30m9pxntN~X+ zu)5rY-n)*8=6rbGmFHyHY-u9$?7!?rWhFM#6FyaHW;1)=`>#C8x_4Z$n4=@v*;&Wf z;N)hFYIs2dWnV?nK;Pr`a?}|@mWo`Llefn?k&0H^b>;Ui>_Z_0jswJ0WO-0vNB+1lJ9nwUM_ZInK=wCDtG(gQsj#Lb1g}kE z7xikF`p0PSTI6Mx(s8bHLB>7sGNjEu1dk$32%9VobCourXkOw*L!e z0g+{UNfmEvbj9k0*#Zm`$(Ooea*ccmFPEs9VR)62aenv=Zb!(2DL{&CSU^U{%SP6U zpK-mi3{P5x+*SzREq%wqfpM$vQ`cGW{`N4(l11%gBX=^GF~L&6!)B$CYO^qO`{$(I zqSFUbw-Ut8y=H6sbYQ#v0asp7TZLlJq2prj1T_NJnHYzlkEt1Iwlw2F)1X`^vEh@! z%EYVfInD|PdMjR$??F{Hm%OAvbOJ_Vqxgzyc-}RdjiE(bC18avXo&KV8J~9vl6kaf zcG!*}SZI9%Y)NAc>s{X#O1;oAfkq$Hfyb<8JB|jhUA9ZrTISL?6z0ZQ*|Se|E+omz zE8FXfhiUqcMO<{$DO*Z@I#qYaU?I43&eO9$f9mB-OL+?yiUVR>& zlC#TP&8*_Pm9yWkhqU46JP&4Mw2R=z&7G7ee<_BhtFBP2qC8?I&M7m9H z{PJMOwf=S;p9881Rojamp29C?wl=CrcYQy+&UWNGW5K_uqj{qK$4y`tHXP}il$%3j zBMnSQJdmvXaCY?Gi6<*hN|qO5{7!J^X^c|Imp6}<_YTfpxE-MOMaR$4OygM2D(T|R zK9!V1i+yWn%<7dRMz# zFm9GMW1ika5Cy?o%Lh6+%np+v{Ok^P#D2Oky9YsgWr#=}h<4k3nw~>?$g217TwU$k zeIs2}wH&Ewifad_Wm`IwPb+;G#;r?L!wTD_w)lP8$x2o-t;FpS=;J)Q{TOAA?QIG7 z@w1QT?eskF(oIiKuWLkH*?GL((ese9_*_yvIrO}4jZmncZU+oR7vkCRi!GxPo6jxJ^ulmv z(;09GL-}Yjd9l}Nm$QHP!NWGUMu*|eLj&8d**%@q528qSA0O0>!7UuF2{ezCyI|GzJfXczJZf6};ccmfE2b)Z+N!F#u~x_13#2z5$4$N))X&S-vcWQAUL2Y0E6W zMJmIVq0QO0_2Uy4+b%Z+3$c(s|WF?}8v(Jz~9lNAVJ#Y|3 zF`z{PPZT8<_@N{4ZV-k|k?dpK|GKOP-lnOZ)BA)jt?elBKbRrEFVkg z1dW3z>=CQ04mW+6GOcPDnO8_#t1)|nIE1nSdjva&V^$5vc-5e$akl$|iZesQ;iEyA zLmd3M`@wOd5!Mh;5&hLd&~r%D+3Rfj`;cfjhYlHT=c9IjQKFKNZR6k|Y>@4@Frn+GxA(^5B9`f0qIm zqoUJT>l4v|tqrbe1HZ#@b4z<~>au()IQr{(KQX5wuN3@_PFkK`8$H59KZxc-+1K z^}p9Os-nT*x_mXiUyYZ-+7(iCoXz#t+wBk&%bbfTw=NZ@oAsARYwUpmNYc z>L2$$Ice6&Wo^hKlGL^Fsj-GKa}M@3FEfvWmJus`0C?gS?}+3C?9~b86|+5Gwwce& z)XQhF)g}P;G2U4Io(>fEFn24#eD!^cO8e~Ap7?8P=yBo^JRw>eY1nAbZ_F_u(+&}q%wWp=)| zhX1 z3eS%3C8M4r)RB^CXZHbRVa(dpLQ(6(ngGebU+sdu%a=mle`z9~Vkq75JdmPxtd{(y zcpG>79Yt@p`xf5gRA`==g8#k3QDhujV7~x;Z$Vs+#@bjx8~A%@J)UKONVz|-R~Blx zKB_e_xNtX7zb2r78HteL9Bph_a)2wH;P4yXm6xzd*;};~Gw7-~(*n(nJ9Acipa?_K zW?fTG5dBsVGK?ieUoDgF1hmbSOj$!(WdSg*DHaN9aGDoo5ikVK0*-Na(OPL1;{=@X zoqEK~7UOTC;jfOy@6wGkWC}Fuo*fTz4FR|Bl5X1kE$_5*K^RtkQa;O0)Rl}J$^~3| znMNKr0@NylVT8~JCyU!6>-4IX-^eNAb&wHJ5$QW$kH2G4iAh~KY{`*weD{Hvt6lEr z=>K~GKIV{YK+lvt03@!30 zg5H)qq&jK-t@q{O?5E6_faZ$j*;Kus#CiW-8Mfs+v8wA;!DaH2vFeQYqH_dRuY(ul@4O0L`ACsRty(k|N{`oJmXg z!Gvnm(1p^(=7xJF!PirymVWw|=!j~VhE_L=TE6MPiQBiw-ki0>AF@DcyDNeUO0Cc9>2fGH$d|i+Uw4#P32ma(LR1Jcx2OQjPaqRha z-G_+c4`?8(nV6Zf&U3aj{vuEQuwp&t=|f132#RUsEJf5P{z=yAG97W zXPkevxGsL0LwV8okn8D}`U8b`P+rC=JOy2j0-s(DmU^Wh^c!w}80INzbEK&uGFfM7 z%Ig)phnE}+$I+LE9w+u?hMBR@S!9iiwQJvO`gs2gOtAN(YTV|m{FnLTsk5u+e1-Oq ztgz)17ka1F)~%3r?UI1$o;@7|1+oz$Y9x=FJZrSFPqJf!Yq*$qD9T-?)^lA2w#i3gr+;`R4{{t1#FS1a6?RRLHJ8kbI(*GWxfa_hf_=QySHor6tU-&M~q ze9bx0H65D$$$p>CiR4nMqZn)zs?$;E;$vN~q;{2)c7$NZ+`ta zQy0yE``-+Etft+DaG--A54q^NFJN{;kL|ES$WN8MJz78vjs6aP$F`N}O&g#G@mmAZ zPFR2j(Q+zz9jiK!`p=tBrNV`i;Yf*crD3qY zu<)q2Z7OSb*=bUWROKmy6-}?%5T5dr!pOmvXP$Y2gL7gB^Xv+8Hjrqx{ToTvv%o3p^b}@5o<{>Oqf;N*{6>Zh zzj{wDknJk58`e0lYaDsEX*FD431amm-@6NN%V*>Oj}3}@6E&M7`Be4B;y#Z2jn%DQ zm6`os`DX*{>FCU}#ulEt2zV0e>LM*c*Cc4B9zL7MAAPS#$f5t`Vz08ro36oAEAr*x zzT94NM!L02Xo2CFFj+m>XZ{royk&?ta`O}3kBv8u{d`Qk))oB}4{hA-44G%Q7>zgN z(#97SAnjE^w5@G^kw8k?COTh~9Dv-cy@yfpYKLIdYDEC)GCAJ+LlpnhEW*+HDQESI zi%SCQ*PR@reUGdqI@LL!k^TM|>sDgzuh_53SO#>5t+ky;v~2!3OiGIV8gVc{@bqNci%cLl8k6SiqNaC%2W(NR(?~ zp)XOxdBAntaK)@kmbgk+#j8FiCf?CKtnr&jqiOMe3zBHuBKUO)@<(ISln$7LDi&bY zPQAAPBeR5nM@>M}L@UujKfyF(#t>Zv?@1tcC8Cg5DV6Y4-Zp16PKW9-Ai-0EF%PO3 z?pczl%6-p&*)!nw`?-neS+(3FDLpvq@hLAJ%x)=n>N-ix-R!JF&Cy36P!z}Pvg3rl zzE2|{dL_ZB9{Rdu)jLY1%B*_D$ng+EcEW?n@%{_1)@QWYToLaYgzdhMXv3KaKEK8r zb8Q3$Q^GI2yw6!Kd7zs8ZEuwla|J|VQI+_LJAj&TbJj;TNCPu=HDnm}w(f(QkO;}1 z|Ha)cqD@b`u=R9k!_ck!<>mQ|C%mmTu5G!cejj^udBfc<{;@g`kKc)57k1W4*&k@DuV9Z7hUQWCw`1BqT39KCD9^tKTRn@}3J zddkyp;O-N^Rc~>G$x|h#b3=W~m&w7i{GN~+WOCuy&bfI5Xy-U4Ah^EK=sPbpzBc`311gHE`@~MQ?ofmZ$kLBk;@RQIqbCi%mU~v z2E)QG)4@2PjSV%&h)ZvT@3lPwTuLo+xNm3T{jGTlpRPs!vjxY<13pVW`vi>-`d-G6 zD)f}*Y-_Uzy$OaR%X3T0-d>6-e*Nttf^|koOo#+*)%>mTjwTy{z87I}PzIaaz*)11 ztGS^{J@&tcYv9(Vmtz*gVXTGVxy@>xAX zVa${&a_FQ=62=>!-xuh={pOui3RUk+)s^)sM~W358PkWLfx!pERxc7W95v*zW}`jczM)%pd)9`~9Bv zd4(zr2T;y9^jlL48fJrx@bjm`8-DZ^xLfjtrFEZJZ?)(u#?W z+}PgTda9JnLON&^n!g5{#+)!2$2-BqIx%k4p=l^JM9@v5-q%RftIe_d0ZZk*&XId< zEX&tQzZo_WN@7RPf*StT33t0^EjcJRXnR+gKFQ7c)^UGN_8K0r0cSc!Xd~WmF{#5; z@nHm6!Dj3Ie!GKaOQM7Ax|~xk1n|;l*ZY6f_sBqChQBp0wyda;s?&`76?~bjZJ(UZ z)}~iIQrjcSF~qt&Qlun|FVaWaD#FTRkG#Db8>OVv^z9RyJ>K8(L+U zOwxvbjoENcy;lQz$4>l~ zB*5276VPvEdM%R!^8lFafC4?21{&KVI}?COV{QdRU00Dr&?&b(iBGzgD*Q
    8K? z%i(7BFg`W0>{zvdGF(-Q5|Qd5x#I$$!&!(wGnM zD-rr%SxT;C&6+w^fN_1X7{g3>&4)9j+)9oBNs010ysF<}36-sawxY~}-B0>1{$fCd zWyp=-CU+*u;lWl|L+(KUn9Wm)NF3{1Abqh0X5ZZQ$YnWNaO%yMnZ_G?WYo^K*GKkr z&?Gm}P^(Ao>MZ2nl<>_sJzfo$>qxo=SUgPPB@&nnyMU$Ki8NnEPHrm|N zHp8@|;(+WTS?tY;X`RkCbN`}}V}3n{Yljsem>*@@Sjuq#&)WKy>FA3{mvT{cwhuW? zvcgo(Vu5=0bia^`9gT0KzYY=oV(z0+a{!3j8gQ2bX)GNM1oc87_XA8hBbwIkO{U+Z zVSqohu>bUa#nW%Hl)5D5{aXuQl9uOqj^frLQ7+vHq&14Szm)-0P^}9TDs~wFcT~f1 z;FJPjkP3;MyG6}+HaS!&AY9)7iyDrs_RQVI03AT9&L+LYCi@zuXv;mtI~7NQ8S*T4 z2RUHE%J7Se9*KX_Kqhm6-rAbg)ydki!S zE7XXzY!vR)(*}iwjm_yX9BHhc)t==H{nqbb5E_;PwzoGFytL z_fmDwVej#l0u}@os1~yj8Lc$kXXto=I2$G0v|y(V9+KNqpKKU?#jGQ8C^zOJ11#>> zDbJlZ-)6vGe_6^-Z%F^Jn(hkqvVK|j)5>+P?+I(iwpCW=mCv4k+?=qpJ|3s1RQ@(` z7)x=C$&4e{$pnGd3dG;^Dmerof)sX@ZFWN*bKhCkwHdMttC9`(jm)j)0V2WWX6FCM zhnMiOq=8r5I}def(gKMf!n|f)7Bls0b>Q!_{g*J~pUyU#{z0K_T06J+rpf^<6f)Jq z9gqqB8;SB++ZF8OfILlu9?kAQ4?Jh zT4J13rsl7H@atXsq3)6jc{I1|P;k%nWN|g`qf*{1JuqdokonHeO5bN=( z^I&Wfl`ub*9#%GHKiN(f(nyhM?qM`=|Dh@zrhv2`-n;~cBOZls87_>!WdQ?zyttWJ z_SLtyM#9gjEObrD;D-Fo$|uFLN4nsxFT7NZM%FMdxJS^$__;ha5Cq7>yFed&t&pq_Nnj zTo2WNeb8I_V18|4HEsMWCvKN#r#oI7=iKH*oa?fB`8^1CZuX5A^VHpUuy3W z?)Rs^PO2ML5#Fz`p|oIhruxtu-Ia+W@lNQ>;x~{xCH)InKMCBV2)m90*4E{EhVf}q zE+PYWC!Rb3bQo9Catv3%unU)#cbf6`{{_g1bs!{yFoN?l^qXwJglux4Ota=IL-~19 zwMi@))p#smO%U3V@LSlTLBd#Afavrf>p0QUmoTIu#SIO2ji7aGnzx96I~3*G_n}WAc#C zPw`rst{eK)LZCzkC@k=`sq?n@hiPVS*Uwh+C2S!4DK@*vH+uqL@F+8NWUTru7+oZd z*}OmvH{2SSXg&)Bzow(r(hOU}t#t`v34kSSyfI7;iS_e$5kTB)cvABt7!~BiWSzw3 z)(XggTXpRtH$ecPw<2;=anU){<)q)otZ zbS4kSq(mQA9X&JfmeVfuTBceKZD%AGF49B_36^;s12=zT-;fu{1290)s5iQ$ByDuibd_G;lp)Ox|6c?S~ z;Y)En%0VjQ$iGK8;F8K8Cb&GF-xZM@wmq9j6d!v(ejDOKBs8(lei#-wR5CES}^6v(FLnmW;espd{WAh zO`d8QNa_RJDDIr6e#O=`lkYhUXZ-@+3mHedG^{SOt$W$A!Kk^7Zv~w|grwI~cs|lt zZ0bK|8)Ue3*L^3vS%1B#TQlWcug1aKxq_PCI8G^js=~LIh2^sZO#MPprnwO?5^O5@ z-zk6AW4@3Dt`w`8y6}H#I|L0;?EObxL`pJ z{7yCYwexc$oqlSnx-gh-;A53l*QUmsV%RzAn7rTa zP8vHzuQEAuF71d1R|`-flzAA9<^U-IyS0hJL)2` zD9K;&7@v-JGw09LLt}Tk_E`z7F5gWav>)nLXauIbDek9$=)rwXn>T9qOK^pmnpdLw z!{u#8o0NI0G#qK^g!it0ItT+bsTa|x(H)H8)rHj{)0@re$)^5A!pI39QkMv*;C>0K z`nk9r{WU)`cPwd%$|t}#!M)2f??A7V-=db>igL?A`&a`?OgEnVBZ&nxSyXsP+se3U zOTcLcN1Gj~x0o0ec!`d7>DnG>Jt}l;+)3?a6cROi@A8G)&H~zg%bY6KVZTpp?9RxZl55YA?8lQc*;H;72;4#Bh&4s!MH>9zf4SRkXi|H3_W-~Y}B15Q#D zLY@^`QFI*%0Ez!8Iuwoz2P|l{NhW+)oM)<>8{tSuPG)l((y4vnv%O++qLU(@p8hT@ ze2KKXS@9SYPoXtX^YPkAbSX5d0Z0~X(&nxBvQ?q1LPnOr30()UwaeBVT$^4hP>P&R zOY#vgMOF2zr#8#;-bD^midtPlX2L=dILre#p#+eTqDnrk59l7AlEJ!O&p@Jr2=E6T zg#v&}`sL|+b*?sRdGTCmTVv72T5yQbw%6wxQ-1h;!F1G*e&G+0T_ zUG)uU$fAMvfODmX5(IeCbRdSlT-iHTrf`C3#ASnX4vFcj7L#i>US=8)7S>Z zGEI`dfg&K8S zs+w17pm5Z6hqK}ctk!6GtM?8;NcaYc?iH=c1BRFsNR%e02WkUHBx@UFnA7L8##Yd*vJgBc(WIv>mhujPxdu z4X_k9DK%P2W2>E94=WI!HkS9yyJLmc zz35;|?M4F2O);lzSX>_Itah5nSLS7k<7#ue~(Q+@Q>fHNRY)p;0)0o$I3W@`ie1N>T^m;~i<<20M zFno)yN???IqIBak4?0d$ar+qXum3|t`%kn85GFYNE8$q+$YUm;*`Z8bou*AaTC~xs zOn(AUG9tN?)sgeVN;A-*t^RxKC!-sv*@n+>-=7k)ACX;njEqUAH_OA$bf^ZW*O_31 zm0lu|-kIK?I2J29`cn_36}*O+Sj@P)JF9p>E2G)+bR4&A6#6j2s%;cU#=LgWQIpdL z%kaa!)6WG#4Ny8*@Zl4jB(dobfUQPh)bOMx5g)T-PD_?Wq^K>n-au^#cm5-nkeDeK6cpWG3{c=@My@SZ^|RG>kX_{k8RCsEIA`@9u7h#FVzFx7ZSDYoA|_CQ5<9YH!!mC1LE zZ#=9fioyl@WecedLe~5TO%lI{rW*fn9G=$x7X;_fVrO8olo605B*7I=62s3M&}Nda zXUK|gJ_Uu%C&2i1wt|8b_}2e9IsQ+9K`%|pzHe`v*V%51b>8C+Y?&MJro)WZ)2zo= zT*(NhL*Qx8y;G3Z>*M|s8G*SMI+Jxl{uj~M zI05tsb=}b|?o+qV5OfZYeDr3AkoMQi>TTOu$_6Q8!+5oBhyuNnjC`JYGHGHX5U(b;bC_awklhHvBzKFIxezy;;7Awitwd@E>ma+_y)FMU<+{PWl9#Hc zQ)fTyM}5D2&XT*o^%>ZzOoK%_?>gm*JVyO$^cTZO{i>bAIwug)7iY8yJM4|N_v${i z^Di_It!#c;M=tLsC{-05V(dAxIIY$J71r|FV7f&&7{k1xjp-F6x0_~!ImeT^fE8up zeMLM9goMLn0I{VzTHTk!kH~b$|5p+1KV6iIENCx|&6%FX6swFPKO&nrAY*uee!tU6 zqWl4EqOlCDdI|>sfo&cRfvfltFfN16-U~y+^9#+V+;r*(Ct;#Lq{d6F55kzg)Ok0D zFRqS?3V0b^SWv|-SRRQUH0Q_^beKgT9^TM1e@UwM z^I-Qsh2py1-slU1Oo@z%1%f=^z+I)E3DV;`5JQfAqxH>kN1v08CYbE3qE7#xgdkl! zaOCqW>sy{KqbXM%TJHF)eWSGuY9Se zP?-guw&#o6qMN*mZUe6N(Q+`~>~(3OwPMSNF^u;QT25eEc;XL+I{ z8w{wj&<&bN5C@M)EKxyy$>bd_UMhF7UI_49k`1jYp~A*FH+}LQlMY2oygzSTmm=|X zTi?wO%0;h&Bfr-~cH&t*0TTsUf^B7h!ja>d29k}{vSQlV$muK^b$j_}Uj>jxk&f4j zFa|}HF|l&eIqr_VPB)2o^m1nFP4o{7pQBrv5ivp(}vPbtaNF!DM03R~h`QwqKPbaieFOzVt=7MzJ(AB|I*_ zIT(z&WcXcw&7>zuR0lOLP`a}KeXg~-GY#ZW+;D6fUcLPao8!*OY{G`-Z;%aPf~^AU zR;2o2Kz(@4{t|ii6}9CL?R=z@E;K9s6qN+$AW9QIO#<<7ImHMKaFkppD4u}o$faHt z(6P^BG*jvScO(H+3!56^K~TK+un!p5Q3J*d3MA+gG!W$(pcCL=E^hI;bKB~ z{c~U9wu_Tndt|-Bn*Xjk=6W(==*X`!ceFfMbYUf-5=WkV2Ugc1Xbi1*8z8nq;ULu6 zq)Cwt&~J5z@5OxK;F*j)j|^4G`<|p(!a2RH4!Qtji3d;Zv93n+H9P50gM;-W=az`fYa71XMGxR8a0adOMguJ zssEjWSioTf$K>LQyB<)o{#Us=$U$;pfCR?8ejuzxo2qyMVg7?1WuOmAdGcy+9I`z= zKNhmZe@>3r1EMMaAp`WqG*%P^9PIzhNCsG_98m&Wop8B)xrE^kZP4N%9pYU__En%0 z2eRKFpr`OKz{0xm71z@Fzm);%l=knFtJ(lNadUaDQX2whzcO+r2VSuNo5+6y*5Y2$xhql6^8Ec3hg@VdL2>hFk zm;^FUTiH1*fuTI$#N|@seSgosl>&*mlhO&3?gALm)lSmft7HILlogyc zFKE65pY{UP?(fNMFavP^&O8}zV0G}_JLf6G#iv)SEu!PUANu&Iq-K^Q^f=R4D3~Al zO8^N9lds5sMN)?Z*r2la6bu~vf0ZV7at14r)5_F7?@~?BwFbJ&JG2hj4?{HQpGkL@ z01)T={Pz-ucgj=-03=^&rWV5OluWQGw}B{~)Rl|^w?OFk6d0J90`Gwn-C)n=(aC{( zQb{OqV8Ow-k`5lfAeg*O100yae+Ir3l-+B9d@iCF%gnL4JY>6Pnmxg^#Y#>8UaSPV zueQ)TM=h@x-x7pvjLB}AR*KrJPo90A`#|{Oi7C0Q3nE}*X!H-2VHY=90~NGOaqfZt zyL4zf8c%Lf1tDoC3d}kzfg21+mvg?LN_2~(VU<)L0{F=l{emPmms3zZ3FJZ+8a+Y5pxg13B!W5Y zzap0;ks$^e2kOS$-@6l2QK`4EFgYu5JTrkO3&K~f+$iJaWz&q8pv?`2%|LY)d%ou+ zk(XON2xy-`-&2Z@P-d-mfwsm0RP<*{5cLbtcN*VW2he z76#5~{h4@j=rL}Dc?Q@_0pxNZ?5KhnrN8H;Cpg3VcMrZ7=o$ImY}bJs;~ia=s|k9w zBhx7Ly7C`RB#`79fI?aLdMm@G{3w}nAr*tIHp+zCxn0R9ng&k@M4&_(tn&nRO}{G^ z+T5k_b+By*7;@4kcmA5}RyR69%m&!OO{y}HMzT`gf>tEZ$~pcm&{)QR9+VeHInZaX zf0Llq;O{zsdX=FZ4Jj`KXiOVG)=>azG+KV|AK@fRlrHL=8w|?*Zvem2MnA3Q!SB{c z{2xP7l0X%()$RkjlIE#3P=Qs@2L(HkaAb$b+~?%?x}avim}RU)!We>|4>I)*&;g+D z1_wU~2#a9p0r-3X7Gr!htJM&w6e^Oc;eqxjO89pPu&Rkx*u;?mr2w3s2(>3Kyf()eC4C_lLL=HMC%a_z!E|M>xHCC1_uEG zfAHo4v-Yfk`#6f5Z1wll<3zDOJX&bnfGDG}UqBxvRTJ%)s;5*p|_KwL3RGq%i-i>C)7PUG|O zdx-@Y#Ubd>W4`q2Z&$Q-D}~3oki)lIY1jXa&9& z)F=e-=mx9EV6>Tg3ZS4=ly@Qs^NqAlZWL`u3B1G#BU*Hr;8t%;r?2z+3{*7#JuUz9 zoq2sNjg@Z48vqfY$gQ{W6$VM!F0~RKXa{0Jwn;`Fm@EqQqb+d&0!Neo(CvdJya{+S z|Gjt%eDa@y!3YS6wBUgV6fOtCyHAg4r?$QG85t;k=CuMRxz)k<02wcg?^~IncREPb z7!GhrIC`XMZDv{m`ePp)nEv=5UVwR8O&k5Db0C(K64TiMGga0N&MZAcgZtt+6(*O^Q{ivldh!P7vtz zQ-|<=ufd&o4qmGCcQa}RWAC{nfc`=6PV3yCF+dbNBt9+hh`?T-|I;f3DmQP*+T9vp z&iSSTz;Q55Cqo1@JgC@UBn&Og#sc>OGC1HWL9lRU6u9Cp;Ho=eVH@B_`5*T=$uexl zOKfT{!T^)09wQtIw*!N+xZC=)nhjeBr*=paL1;NhtHqPQqS}71TKdglf$HQu33_qm z_y=0a_#g2A++JEZsJNCPC#(A;;0!>9bpOZK_gbuD+dkvGZMqhV_7ZniEKa~Y4q;mCpDu=MbvD8I{=V100=Ngz&u zak#ezEBau5dbvSj^FLJD(wz)J7-PHt79Wz}$oc^@DdPBNWh#75**i%e+{IJZXqpv3 zlgJQ195O^F!%I@q;E?t|LIh|lXqtm~q@F4act0$S{1ed1a84k%D0?Tv?QDZ@Y&p=M z3EDl%j6U`E?#G!5+jvZX$&8?q~t!!J!VytWDopJg6Pq&(k8JFrQhgtH-;#Sy&=Dm&Pe0C!gVp0fnJ=+fN)Wh zi(c#7!`RWCysZx^-F6lhikCCHbh=S?J!Qw<!J`*$y6L7Hm55=TI~VjL>K?>8*w-{Rpxm@8-Wte$bzg5c0v64 zrU}yiIK{4UN`|aHbK3nHtMp7HR~iauNKrt zKr}8$zkJeLkfXL=W*_5_ZaTNb1yOL$_=^~Dn_7ny1gO)`!7ItsmzqL5_c0D2I4o=< zHR~&v)lGW!Kk^pumDQ2<*UjMV;HP#ec1dwSbuwag;}Eg0(Bdf>Sd4B)3+YO%9>Z6a z`BXC&7a`V0z$d-OV&)SN1cd{g>>l) zNk)h%P;e>{hN{dgh(FhZuQ1CaNQT)Gq$^o`;u>R;KcsNC|0zgk7+=cvZT`=zX%(g!E8B@` zjiVCU2^2^d8p*g$tUZTh^zgTAhl~~@s*RLD;0V)%2$hY1<^F*9 zBQh%6jEPVjLcxLoSz}rdYju%~aD-1B?j~`2nUD;YTs)QA2+}1qWsq^ZJrxlPb`&(o zpnyVAx=_^i)c3?`3T05YR|c^t8G;MiepLcA2L6|tBu%gbJ(gusrW30F~%EEiK&@s_Ekn7LNq? z6@a?S`vWV`&D2Strb!_guXU|{oxKfAm#%?iymOBbGssYg)Mp$Xb1l^42u#uYND2KX zli|IOv1vkU`fP#+6MJPG$#@H<*DVX!VbIhm%Df!o=e9G%Z?9!+R9YxbGGgouN+9ss z3y42Mg8?pUT7%)J%A}o+5IaqQo%d2@e$*tTA!7G2fCatQjFs+^njC3A1Wfyv27{&& zA-3DU47;ub2Bl!1uai4a4+1y&=Jqnn}AMyS3R8%fs{fWFd- zmFjYu zE&>L?D+vW?MF96o(wFF>3`$m|9U5@-ovid zl=lxzq#>QC7yH3k)v@}F3B@iH(p|Q08 zy8uooKy%VP<}YWUJ{$p)0UQ$n&d8MW5`f-PWyZTvfNz3}ll^~zqy`DjqP&@LTUVm% ziYjwIA%QAt4C%_89N~R~(81+g%b);{g>)sf5p?zdYzi{Y!eVfcZIl9l3C-C?H85(+ zo+<$<3n2c}uiI;NQcZxW#dV`bH$4X&b*2^W43=^?q*IY^pJ$u}2m4l@J)T}4c z{_`I5zy-|(*z4B-a`^XXOpav!jR_CLPG z04mcRX+mUU^tVALk^#&M;XelPhfR(Eulv6tL_ect_nJ}CBN9k2B@o$CA@YbW03=%B zzqC1^Y=GukwjhU-JQ0Em0l~{zkm|)xm2KJW&rXn>9I<#Kn~V;Y@=;|P1B_100$)Y9 z1`E+R4)%gUh{s7rz%Iyl@l!JI11yP;r$(T=kT_uFHV+uZ@}1};G~B`2{7p*&HNspE(g>c?w`-3IOsp0_Xn&DY_Z;f(jH^<`0kg zNif8p5amn4Hn#Io<%wW$7AFb>w*MJZ^fSme?Q*>epK5M3RRor|96WyM`iRwF**|hS zr``T}4@@RwRXNfQRmpat43iMzZzLl&uZAE!lc`7~V`OrKh4D~j#ucMGc}<9;2~-dJF3ix+->{WzSe8$z(!F>5ErgV0ASj}Rbnwe6R5atPzLjH zmJ(#}0@w@Xtq{PL8wu1~U;y3yAiC6D(iVUk5l7$onPYY0sl|uFRh5L^78up`_t-`Y0CE;tTQ4U^q$HsPET;6(7uYp}Hh9 zVxa4OprVB#@c0bu`V&A=@}@xe=9_+ghX^wC=)=iF3pl-h2!fd1Yd7w zQ}75904ifJ-~We$hy$yF{pO3OW{%4NM*%cp(;lGmiH^)|h(6QBPelrh?onIP0Mx_t zHImVqn?QZX4Y*4(nv{yb-}nge4+HTsToZmrfc@qQGDC`#04CaFo(`}`CmUcB5x9iP zJKYR2_EdxzKh-aR3Rnv_*n$hHGFYL&90*~b`YERUPawT|_u6R_=F5+YXD6Yx#}b``*G6hMX};0hC{VW@3Xh`+;O!2t!^F=&Nf14K4F1AxO*zAurx z{nsS6;YMA!?=twgsWqN(VF+K=`xl8zCK03;mC~V5P$gym~17Y=nyL7IS3T#)tA61p_fPiQP;QWDR4Rj zAg~Gx+gya4_>vk4Kn(BzneJp?ZV>VjAYg|hXlFt!LFoP8C+sc|Ci#S@*bp%|ckROD z$n$J@O3*{#!Z}wV+kqHBDnAIIu^LZ3=C{#-d<}RN(~n99zSq8ufXED?TI_n__sJ1{ z3Tu1rm>+L$yN>@)K>blSh_zZVz#vtbhR?5qFo4X^F`}jcd#sncrRtMB|=2Jjq%%2>CiTze|pjq(%Hki9SoGgDsu=>g~NAOecf9(S~Wah6Y%2JYDc>X-ECL? z3fwZbGQ{Nh3dvE#)+=-F>F2TElMk=dSa{wq<0)Tzn|5eOr0+!6Ge0L^k1`%+-^ns# zN2wa6gL5~Bblrq7B8Q!FzL*NSWeOI^&3O*JMmW84bTchgygw)4W`iC|u_+)_x~tCR zyL;zWE)s_9%1X&?y{5jYKME#Q%OVIvlVxbx$%nUnG3tGKO+!gzGA%=XWpaI|P^k}Z zCtY*x$yX{kG$*<>nEhRyU^YG7*EbyH8_6b!7JRE-JhG0)m<}?3on4{i3A$ukSi~r| zt3fK4N(*eVEXG|7^KXTh8;(s~9nz>?*_co!7v{YlIWn+Zrq@-`>8e|%?R{nPPWAb& zBW9G&_fIRDTwj!l5Urg1ldPQGG>UIXj~Ji$C()kAnOrsO>Z;bIw*fX*e0y7U?N*-0 zHN!mrYg>2Jm2+;XuaxVG-0R&+9I>oCRtBe(ac^pzyIs9-Y3M|r-^htAzn|`*1u}CA zp#>%xJQ0;|P1Y5z`ValPfF z8;^jCXFeNUrgW|Be6e@KQKv*lHyKl#p@_2LzSXSaP5OPe@!4Mq&36TdTFVwA`Yv{j zm1O5MnJT&o3e3eD+Z3>J1#2xDNIf!s)r_*r@v{_CavDq(<>bD0$jSX`e)+Ys+z4-0 zO3zZ+X<~qEAF=JhZJZLck4St_K*YuM5dHdxZxMztW2X4jo*}HdVop+cd4;sS_K>sN z95J#&b!;d(s)8_9n4PrW1?RP(Ojdhl;(s|m>F&M$PQ9KZLrQi>Ol3_6JCFFyJQ~w- z3MO)hFuv{`Ui%`Z{$WegJ=m^i|3Bh0_xfXMmCI=RG3n!;nAz-_ z1*%i6QZ~6*@ojCaS_5Ap**9-yO_HsYFH2g{YFi1ytw_#oVpqD^c{R01w^-o!+`B@8 zS^fHLv--kTm+0CNuju8OS3Q<1E0>8RPS}Ur83iJ9S1^+y*p-JKn3olOYm|rL?_7BU zZHp!!&eZU56|Ada3e@5KInG6x^-EoQm*_t`l?OgOR~dNB39sm{DySs51=^`s&`Ni4 zLOL`5QM$j2>oa@3_u^jDU3&_4*2%t&IQ~yE=L@2(ni4NoYP)=7pZ$ZxEsReqd}EuR z+Ws$y#izv;2mdEXti>gq4gyTqCoQ7?%XqIH}B;;WVm>>n5b_89hdT~(U5 z>mH}htam)eE;RHNkr!&mthR=4bH&a5AqjNPV(ZLURC^CP-~;VbRoqtaW|gkX{S6p~ zcwD#0lmiI|tq5FSF{gh-Q-~ZC`L(sWz;);03YQfY1wZ`itl4b4LOo+`xD z%dmmUsBLfF?MfXnKZsN|NVmghA@y6Shb+nXoo6*hldXbXjK}=?)yUpON$-8%CKVVB zpSoF;oRgGi+R}Ebz{S9b8VvVbbu`;rY;LNT)vi<7Qhv9J|Hi4+{(}b&yfNwzyitdvYm4imP4j^~)AILe z0ZXkW1*S@vh0mOGwal^7S`1TWEN{y(vF;q|v`PMlv098-^f4s?dbsaseQ@yG-D=$% zT{`0BdwGuCVJ%J0b?YmX!vfa^gscJ<-2w#S4$zrxr;7%{ge)Dm*6X*NT!zY8!!Ltc zlcahpEf_Vc{^*mp=ztq}j_fm0xoh3IG9|ETStJz}{1!Su7j_!T&a~(*OtA1?_VP2O zuk@SJz0+pbs%e!DRw9m0Fjmt*RfUvs^A!V|M_f*iy+~^m%qM0DZ4a5ZPPUbt7HL+_ zB*&&`^!B-qIjcL@&z0?Zt}#Y#4xU&2u$9hXv9SEf{vK(w+cjZR!^jI|)U53720CjeWl34RCqUhJSsbMCqya@b|m~+J_=3GSw#)n0c zA_RKhD=Jv`PVKN@#__z-_##GwfAT-zJBsrSyoYO^DWm8_S9Fy+48JdeRVp}J6~jZf z4XAI&44$@=%vmS&Q$2oT)Q{1-xw-CRQdp*B6+Dd}ErGAlzP>G6a3dzKuMG4BVl4im z4b+po#Rq7ujC-A-xmbB_of5#?`n?3LjFxX66iX55`!IarSuqu#?V z6%Tr{6WIxxTg-h7;B5Z4c1(q}?MQhHkakdqK~~K=6hSh;_zeDrk_X>|pLO9rlljd) zli3kh{rdIhBQEQ0N8A)Xo@K2#nXQbPY?-?=Eevd~k2pR4*95Qv9ab$D*C*901Kr3X zn`eKKv%E0g1Fr(BT_~G@8{?A(+W-h^2mh%U5fOHx4(80+!Jbnl`Hpb*G-{5~gQ`^X z`aM7jT2U18&bwVCzo7ONO8jc*Ww_E0oShs%kFL)-;VbUoCI0@-0g4xGpg8lB!?k(J zXVa5@K_8wf(#Elmy2-ioc=Dxp$9M~GbRIoql1}!YDOlOsByXX++5$G|_$@|hscH|b zerC}JqI!!fh&^Mq?hwqZCJ*{i(kT6r`x!JR`37G|?4DqU>vvVJ&?<|VbLG)sZr^}; z^*{{HyRjW)$`9*)3RHKFo~z(>pf2K9qZG}Z6lk0ox z-JWAec5%UxV`O?k;75n&fmJ@0fz@tqXTY|(Dh6EJrHucq(8L^qu^Gm2`mt&M+2WQV zQJ)d(U7QEY>Nh48R{HBVd&hjod4f^zx42?-CwxxdE-dq-PYtdu&sa=IPV&=iT4I(J zKMI|>^TX~F68nrKxzCUMTs(+MlVV5d>OiFA5+;@4{CVL>;&00u-(myorLL<{N3Cf! z^ca0h7)dEX+EI6q^hT+DJ>`7|9!?&{s-ic}xC;!o3TT8ItZCl$9E1Ba98*=%*^y>h z3T)J7?8A{QfE2~=^pn>d_&PM85FE$BU@QM43xLbN-*Hv6c2550-A_*4Atj#CPUtHG*(CrC()E=PY zDdzMyPKCwf&6Uc{DBWqt_o{axiay_jquqb_J?t-ZNmKVRiMM)1^!8JC0$d zQXFP~MJlWmkB>1zyjnC$c0M-PDWwzhjY)|6?pDXju8$>H=fA&|XU`nqRO+l+^K(R&HQnB$D1Fxnq&vc zu>glVDgpBZ3XTq2NV7fbz;WuQJYt2vt)ghSy2oUm$bVCS8lU~;tN}<%So=JWAsGNq zilLkbEyHwy*YEj**LTO+`sqG=^L;^lYgI>m4d_uLl85-~!p)7oebt3no_hI~S7YIE zd)*`Z6|a5^2ZuDTSL|Ox^^e}N*2!CAL5xgs7L7kKt0Qg}u$PK#gVZ&Lmo3=-4h&yj zR(Jx*Qs-5L>*&zr!;|M@un6qZF{D$I`(TNk%Nk=kf^s%WQ|E_q2@K0Ns7Fe2@{zcf zW$^*s$CMu02Com3H#Vb0Xwa$GHnUrsw5@!tu>Ey%j~VVak0+E|t)dGTlJ@QbYMQ0{ zm&5W4!ojvGq)%RJOd3r9T2E+4rK820<5?nVo`1#ivJn>(J{azqNw;o%wgTUx!(p!vpt8_cdxYZ5sc$MC`0|$KuuiM^1@ly; z&_}X+a2qwwW9j)UgrO(v~0z{%0doNxD}!!fDp;=PwF(ZnFqp8FYxCm(x%GG$cG~e!TmF+|-HA z)3@Fy>T*jVkrVKxuTt`BENDix%W%cY+Ds89*Ijwn_xHEjt#US0jglR>Kgfl6Dm}Rv z#h;PvRKw`j$JOD^SwD%in~-Z*Zs1m6B>DuQ!O3W{hd1$CEPP+Kfr!v(*2lQUjWi6T z(cJh6?z<{GcrxjB4XWdf5*-HN_H4_ik2oK@^!u+&bAMhjje$uGo2ar_;+}E7H14)K z`09^P%cRFak_Bz{?kPgGUE7WIuanXx58vN}(qh86uue=&b z!GI2!)cSkXbIydZ>_ztsU>5)&n0|S2c&>hPrr!Kx>HJvGx{J6hC<0FpGWe#_+-+<3 zzFbNyQ~-{C-x67(h-1W3G@}xJQ<#wU6q~j$yU21daJ>~OdDdS6%4Y|w${P( zl~2DO`Gd@ z*WL0LG|EnR@;4~dEIes9f<fsa*_#t_CXUsXC3$G?FwvIOl>{erHA5-*!!60fdyeb#xJAlPxO*YWYfmAmY6=>~+bhUn9_tl3GNt}K z*I1T(QDE(I71luHrk!R(g1m#VmTpfe|6`W*ECEL5?=xM621=w6(MHoJ0)kD;AKLwk zYPWzaV0Ij;?vk{-D(hWSdEY1glD#Igt#Xrw`vdVt6s_0PM`E@ zg715frT)NW4fRAlNmD0WQ7B4uJfWu07mgOrI_Ctz){E^{+qZG<2;iU$)#!$!&x3ki zcJ6Gt(13Lq=i*p9GO+J@IqJ;o^6Uyd2eoG%;QaC>me6$o zVYxR4iX<}m!*9L6>HZ)^FFiqKN=;X9!l~rm)dQS2bnm*hImwpVwhF-W-XJb?Cm0Pq zJ~Zi%jfi=wtw;CSEyvU;G?o|fi{j&nkBgs$Jm%*3{31*Hj+AG$4{cuhXXYam?zDNb ztxwR2+sF%2dYMQYfgvu>_)hasdcL0}PU3E2NnA*xI&EfzP|8io;PTAc0>L?87WtZf zEW$%Clrx2g>weQYhhV8(g1AQtog`<663^fewHBLtg1I2>Y|n+hJh`JeM6tK=b=*zf z3@8`ldfW~_l&OZ_mEHZ>0jli%P8W5(m3N-2%(od6a>4qL6uWu#%1U2p4F<;3cb?k2 zFk(I4@8|H&u1OkL#S=30OK(CXrN zphf9)s8>TdvJJ3yw%qzBufMp`LE8CCm(o*PE%NeBbYc14n2RBGK{UhR@?bm> z2G(NFpVmU8t9uU8pgPXVN-*?Ljq%j}EpdS*dVzmh-LW$rG40r-;t-Z2KuzSLK!46I z*$Th7$itCVG7{cl%h&%C>)s^eA+k?+E&8!`l;N9;t%B_!n|qHh9V;+X5h?(vjZECg zmWbr9Wu=K5K1@M>9z3DB&$Y?tWRBRL2Oh^OfIf{z0p6xfoL&sj{bbe&By{feM<0Uxyj7HC6rRzwF&- zd!CtbMjfqpcRkguPBmE*L@J68TFn17_Zse@{9iD>_d9oo5W9A6#25(X3b1Qdngmf0 zy&0*$rhPom=&nfR=)@eK4ov6xw5_YO2F|-L_uj@3HacUe1jfzVKa{$su}rbEG_f!x zalL%SXE#EK8kz4`f6Gg$y^f6B;H}L%8Qqs?g*u&$n7Y!>Azp3eEO{e) zSbe#6H&lbOch7~LNsoji*9XenlJ!rf1zK)sT{o~vSGo??%6L1qk^WOg?~2%S!LAc2 zlu&bZKYCt8&Ke>rNdU>D{C%YRcK#qg7ql2@_0bbS-Mg52rjxL@MCtCTp9RaGaslz|=j?Bg zNsQqm4|(eD(fO&$_a%zAKTAVBUK!rnI<<=^oO4_)!W#i^SOr;7n{+3CO;$%j%f679 zfUDWh;>W^Q8V^%JR>(mAPSKxAJhfBvz6Mw-Y{CR5;@r%W&G>K~##PFNUh{>`jj1Q} zZt#t)q+ALt%FfdzEa+Tcexn%FfAx+#O8M*u;oWZy?qll`4)RX+KS=E0?avO+Y;joJKbk=&27F1d|@aQx1Wj{#6XB(is zL-#jxhxlT4+*7pss2vk0?-5GhxlZ5h9W|4-~+*r@Tw=ZJ~S14>W$ zvLO5DAZkkMJ(lJ6B+|xe{Lo_j9qXZ*ly5UTckP{+7W|baFwE6;qBFBW z{If`R)8#d(4WuyHqy4PqX4SQn3lW==&`?d3AH2Y&V&yi6;er%eYYYfVOWLF zf;xm73qQ7Hfc3+DBpIWilT4kD+t-(Y!bQ?aaI%W!go;q^ZhzfDdQEP#U~5{9suakk z-kyPWtB!=e-{X9Y3T&o`TUipZj*K*cX%e5e?Qi9PRt2f5K#$+}#JoTCEhWMW5%&0z zOWVA01+J8=3dc3u?>V;5CrhQidOSv5gFxE5qtC>5FTx)@%0arp0gKZ9*L+KaSZ+xE zZSC8oP`CL7Q`XinsO!} zlcV-w?|T9<<6x&k_oyt+_r6$2%uDSBx?dJdx_4WdGRIS{&A!Y&$N^;?@Ouq2e*UBW}f- z2mNiwyC2A99SJ#-;?tlH?vkJIER9srfumZ>k8hrnm-rHs#R~?Rs^%*kO~1U0togaL zhjcUAKr$TNJ@cu`CT+=2+5GxpiNiPVYt}u-+&C{G2ukvj>n}BvYm#buk6jYz->yZ3 zJ0t$YZX`~H^7~{Jh^V;EO2!;gZne>ijy-z5;n_jaH+gZ&6bs9?kJoZAj+X$>rYtD=`KomPdVk1BNRd zywd6}KxBpJUUikU*H1b%iF8|wJ*r?BA~pqsWV4V@QXRBl2{BV=7B_bLzjm8YK_72^ zO_;!qsPFd>lM_v9x7MiV4S~4~UEEeAu)3d0B_NFRYGRGgc~Ld7M+|&^t5hvhNj?xJ%wmZ;VzMd+k)a==`blh&@ra7>!eUxe3rB}w9M=qmY%Eho-s2J0S`atif)m#^&bSo{Fu%sV1~_s`8Pg!j#7E7LtK zZLiLPBe1_KSk?>#Gl66;6sd`l&)EXuW}qmT?UZL(3$hT3*tSMcyRp;`+vF6aGGg7i zZLY<`2@I&*tYxjg--C?>nBI@)#WHW%omY58OEh&ZK6iJ38X2bb#|<;!cmLLa6tso70Ms+R#m89}Z-0|$N`g)+1 z77SG?c8!s%r6$+EA9VXB7z|$azh3ukY1z;{=Cl1DgW-RuX2gMxu zjZVbPlk4lbZ?*YIu|ZvDQj$+@{Yvs9o&B8K3JYfM&&Wp;&NCj9Z7jtwrh6JtM+epo z*Q!9?8$m{2^$v2t$zFLO$}-$9dN*nxif3-?Cu1mw5U|$*ZP?mowFMlvZ zjD6-;N@*8pKZ+9Uesw75=Ejt4CxO#O2!>gk&RI7<*Zg*CTa6Jkyd<%R`!M~a4DJwA zdgN$(BQo7M2FIH8>fY2i{a|ayJBDBIOvx7`Up@|29h<&G+N(pmR6Kv$p~V2Kf8r$C1mNdL#5|MdGDK73-&M zJ2!BunH;qu%+=)MoW7fZ*r%{aO!*Dz9^kmR9!S@M-^J!g2a6n&WtlSJT=13A;V`-eL)c9;qc{F4rcx zeYVOHp3~i5+FQ1OOzOizUBGmvUyj(6LLfKA(cjJoZ4JBCkCJ8##bj+&k;~U5(gCT# zSt{gf>dY?*!}L=&Z9`%X*?-geCEOKr0#z3TG#G&hr)E_yk9&0}7;B=5lEOWYyz7ln z5Rulkx&8j89LfA#wuVim>*&UYpJhFWM@EI0`won!)>Jg0LG|jQ#8>{|5g}ocFe6dj zA!eF$Cg#F&4Q;#d!?Ww#>C|JdrTPw{pS{dEpgvAg)5P_>oOM3*gI>QrN}C<^AsaA~ zH?Pa!ejjkwySJ%OMU}L=f-NTAQF_n~=^||_sCA!1RKrdz5yS)U(f5o;d~$lz5Dt;A5cG&vPkC~tn}ZKU;lb=K&`ZiR9-={N{%w9Z^oWsyXJL_ zEk#6|)qQ_f!z|wB?&nfPoRV8=SOPUZKY!(L-S`&W;cc-^ z+wSDqG%F6#;;$IKH@o&8_^L7)Lxrsj*r1cXXJ1slf6*VOWF(OL70+L#JF7D0+lUL^ zWIgqKCt(^FC(#?-sokKH(Apa9Wc(xzU9t z{`-d0vNO9si=GAgg@kWhUv6^@>&l6oH{4U#%ElX`r4Po9(Nq;D&NE9sJBx3 zRzi2uF_RYV)I9=JXU68U3$wbe@#9fKEkYk2gf3C7ZT8LGu3t+6;(Z6a{p!KC7Wy%| zx=nMGIonpM>Br~Lz+KvZ!8GxIDSuiGTi;wtu4fpCI3Kbe-*=+U&#Oj56XfM$93;d zFh5wYGez85LyOe5T@t>`;{#gsY ze4$!#_H&)Wz_Nwdhne{q`&edhhgE8oceFl3%5MD0cGHK*pR~=+(G9pqg-;LQlLRuJrKculxsvIw`+F5rJ^j@D=8A8C|Tqqw7Nd4SrRp zzB4HPgubbK>Lby$*1bEPo?#ZN38T< zJSb1RU?!B%A^9miJGxVNc%pXRe?!r+RXh^4&&hVOEr~Gos4ma^y=g?Z!fQ_B)?T&)0}pS+LLyr>oAl%j|3po6w*inis9J ziaOjsDLgIS!vEoCXvb0KtM@F<-!`xIn&}(6U5L)wZnIx;&*Jv96-Uzf=~F}H%n`Ra z*V>*!LSAHf{jz-Z)-()PBHeK<;&&1zvc5iLB%^o7Upp4gr;2veT&#`_Mx+~SVf}>9 zxxDxKI4-7M?+?wpUQpOuJ+WV?`igy>lheUj?=H&`k{6`%M5B-^yZh={tXrk$RWC^~bK@f^!^c#agRN!nj=#qG^#-rPthg zaf)L#vc0B1H^c4LM8^bcn?dd_h`xNq9!CULrW)&q2i>* zq5U-d@`_c(T+hCp^iR)rwGGIUL`bc#J9(!b^BiPE*DWNJcdU&QrrkUncd%u&QMWi^ z_T6J&rQr`aCAv$oiHkcoQugm|&00HCR9tvTN6ejgm0MuOdYpr4e`dhk=rzr)>i=5% zjFrK-%-MYUsiA#2i644Ma&EFX)9&9Y_1*rwBCb6u0f{FkEl1cL-;Y3h0zRu)4J4L3 z%@!oJJO6s0q&(9TUE#alPv|?!5xC-zYCcp^%Q|@4Vo~d~*XACR(yn)X)ARDUa7!C5 zhQ*gnXPq_sy_+!mMXl;eN{`9nlQr+Q6uW%H;CpXZVbjCvIi7Y-V=KpI)cvD620jo0 z)mtt6?`bj*;!FeIgRnDaq7tL`dj?6)t)A)Ew3k%P?B{u+$Qs&!2E^cVC#*ig`X$pu z2*H!hPs|I`YzOfgLK`r@j)}_4=^tz^TM=Mv zP0Q!y3BUb(t@t(=DF%DFJhCn#Jz*`-%n!&X-Lr{U%D@w<-vTQlc6{1G*&k8Xq+aYvoHfIBlGpo#tn$efsX(XK5BC@k+J7A7Wg; zpG+-w2M;3DU$!@L4J??e1P<(rTv0PHy^~;adpKbi=isoD2@9i@aU7|>l}B=J+932z zPLK61y%EXRZV|~JPhRmp*t@V0;0mAW+We__A#_mY9=DWZq~uJ47k%BC!6f&ygSm2j zPqL%x>OTakC7wU&c!rlE7UtJ{ML4v9k(<6QPP}tyB{1B@XzuN94ZFTv2;WmBEu0=# z;x)>Mdt0Y*(qqzOKl6%TUxo%Ms9(*V=Y1PuE(E zn2VxvA?b7{bAF+I-3eoiA2)dOW~QaBo)Vy3U##b~_fkL8=|m_~HmP|mZ9TBKZo+W$ zYLU;vOv_U=L+rVSyr1VaUhi6s{?Y2jmQ|@?H-%_%w_6WYN(51=q&Aa6I|~flY5evX zI`hUWC<8nIYPCM~OvRp5Mj;3Eti=f16kU5W!GSBS60|YuJlaCO0>3TGWSu}C2|PP; znuTkn?VFLPk)6DAeCq1cjVYCt00IrKAw%e+je#AtljjEPRlEbg8p3K5({2}51;YoN zyFb|7I{m=x-@O1%)x~B$GpddsNT18R#D_8pti<@I=?nQA!{yuJD*;ZqBnFy4ZU3-1 zd|Fv5Sv9IHYzlmfz+P>ES2Rb9U|0cqE$H2vwf@Vq4)FC9ZpL#l|Gz#~r@H@L%d$>9W+V}HGP%;^_e}i2(MFwIJH^|MZFTp|8aTYXV z&=tS$(((AMp7yu)@%3s*T>wQ{s5ZRu9oc0WF6F~w9~-ur`6l4tiLzk6tt|~I*xHm* zzvtwF-;z(dX~1|8oS&%LZ@Mz`KEXntEIX~Q1N(hS-9 zo9FS;cfXP4LSZg!)6|a-!wh_b3AOY^Q?rE*3dqJ5VGD{??k8eTEYEzwr8GNXL!m#} zhn1}-JutL{Sg0J)Z(?Rv^S*ODJ`Hnb70|fyM|Go{j=ZQ#z|hL8goXoa{fGbBLw9Md zB(E+DZ$0TI)5H&A`-hK&CF#i*=*z6vU_{-(CT6Rz`7$rbON^nD1jby2m$&# z<9RVJ`V(pjG7@A6u<-*7{L)vDUBK+A0Cm*b_+j<~J2jaky`@TW;Wp-XevU_&{kJc_vp1XSyQ z?Ve)E+CR`n(5)Gi6;B4DQkk;L&;WdMkyjnG9hhft{p1b)kQoablCN96F9Hv$!N*y4 zDmA_RJEp}caj-whyXlTa(273%L^}+pPxs6%Kj<-^udAH4Fvi%jN4SL5sQEhD3a}!WA;6f6Tn5b8PgZyhL_F*bJ7WQmrcr^NFd|aDQU86&F-A z(5O&58yGk_hgA0O;s`!C|1)*hFNcU6&|Z_C6T}G7U)|286x|M#>R9>@iUk$pmxa$a zSOz=1iMG5%ey8T~hQjNRKxb(W*Owsk$dy5EwRTK+Pm8JN$1y=FCGov;l9O`TL7x$) zSf=>B(Cm7fOdXDh=QFH8iM0&e%HSuTvBj0<{1oM&K>>2jOLLjD__eIw6xp@& z4?k;&XxLQMYFIykF0N@}s4SsCEQUw;AzQZI<;qx^_4q6K6(@-=SMD+&L2)5?XAR%L zp_?KXZK`+z9NzHY&NpVe-J#&EowI{C;-W1o2K0N-xOK(GXTwg$IRj5`ot_;Km&O~Fr1LC|* znpH-&(w9>gUUjTLjD%z42_gyv;bavO_`N`YQ9omWyLOSIx!(0ais^{xm<-<|x)z~!8hsfj(NOE=k z07-4k58qC%$3Ln_^RO3IA0OH8-RF0hU5gcuMqJ&2VmU@9E2FZ4#_zuZxU<16Z;jl* z0Y0Z*+Qb?&gy!X^J@VM6K3!%ce^q_Vy=b&|T&{YlDs?VDK4~_qN6)l%zfui3t1X!} zf_qu=)hdfBxNGmw;ePLmrCT$;^;GeQUoV8rZGrzU^nZl03oMHwys9WcC=;nWaif=` zB%Oo;=wY&TZvG3_>h)KlG%34&RjF#Nx2Z9g3ES>@NTYy7y8TYD^i`AdhWA| z4A$f719cX|$fVBHqWbqUGw4qPaaF}MRr>(s789>A80HNeU=G`TtHw&>v<(K3gALk7 zO246MW)#UTZ^o@6cp3BMs{CsQdi~}|KZlJb%WJpVWXG0YH(_%&;Mw__^@tqvlci!* zMVq#b1+iv{#49>gr8^%B%t&+vo#YtkCvIA7=OUK3ehkJ*1qMpi2@B3sNJ8SleaKaH zcD{Mu+w!WPM`o04!*A=}gSuWQjmR@u%YF=JvuwqM`tA>&Di6@m8o%b*x3w4yZ&Zmq z@hjJqFGl_3Jgs6|*`N5sv*`bRdO-BySZ?XE7_4DW72b=uF*`KxQLeS@zZqp7T4y9#yEy4G_j`E0!fAf~ zzR*QSd+GMuOtO>#Vaz2~!~V(`roTN~>X!|Bl=f?#*n($3Fem3Mikr3j(!bp5o5~&@ zx9R@;{=4g}P2@-pK1vi&uA!v}xQaAUjx*-vJCt0@{04UoDytb8KpLs}yvKj5lI(45 zXhk|}{N=sX_wQ;WL9sa>rcZN-`VsL~{!TUR-nbOPxPR{aVHXV{wtZtm^r%>gO7fW{ zm{d5jOR7`dXU5e5=Tk>gh$fwH5v5g;R7{^PUh@jXrR-KgF0-s$fV#SMFIp8>_ftxt zYb@W3(@N#7xOMG9Lf!X|f29-^yp(Y;zpKNwFt1SK*zWC8*u$`4MCv--AP$1amP{I z+|0CP{AiXBe{r~_-u;9pQ`a693KOTUKJl)hTLz8{hTXYYJ<>~SwQ+4=e?y!^8bDO=PbZ6yDzxO6vOmd`P zn0O$F1y{7vkiSzdOe8kAb^m@?F9r_B*r|N52IL>yGqD}BSB7UCzMv2Kf942`WhPT} z_Ey$T8V2+Jy7X-qrJsqJIh(rv#ome&7fxP?TRyh-41bwas<@Yu7*oKltP=(3T01S+ z{IRCPtgoT%@`7qpBGldmtMHV-mHXeyyi(&A1)$%{swP3mffU5W0tM4gnVCMAMUh#7C8DG)~q3J z1KVmRZ3xS45fzs#Vf2x|x>izBNJmtaH3uvZECm%!GnQIdIy zBpT$|Q~lK)_y)?A@&^9U)^Fn)98aT3Oi%Y z*oE$BV9$Yi2akn#$(v|-FYEu0uQ!c{vi($kHI?m(sd9T{q zyRqeI`+ho@y%tnd$!HDPZzyi4b^iWl8a{hm;iOB@&Atz6(pZf)FYQ1*6DsB&SQ@(y zcct`#A@Zzc;oM)TVTBGHV19q(9-u3qN<_n*)UK!SXeL6YST6TeiBp7bPi?>VG(UC( z{O6kA^Nvt%y;D4#UC^d(ovHcxExALOU^D9sDb!`|61~}Z9aiy=B z^*6c^|3-h8k?8tpxpGl`&fwi)fpEI(4XpaR2F9o9QN_FAbRu3dcdj#&60;AR4a+HN za@Zzxa`3BedE0smkH%}EY(yyU`7@Q>i*Jc&mT+mSgUQcPtM9~FnzUCm7lrt)R>Ca9V5HdZ=nNj1q{0dM)YZWvJSWw+Mw0(h-2I1;uwT# zUQR>Hc09Ge^k2?1`K>|*-zJj@o5a16UgvHt{OJwc6B#(Kjf0UbSf{43tom5NG1g*P z*!qvCV?v`e$8KT#ZivV3{X*P%MV>q>MT5iQ?+!mpzhX9C?^q%w zhli(zyJX$h!}EA2vB)ZRw+G`>Ry2M%^VPqo!dz}?W^hO#$SXw>b^CoX4kJ$i$yNav zHEtI+1A1z!4Pg>Z9yGMT0Z<8f#tCdyl4t%RnJesz($HShPhc$kvXkJ)ep5e=qAnzS za`N%;RP2?mZrBy%!Ak3c^Z|9jxHZhenz-lfKpSy;)_BHVn|uZDOa;%!yWLG5tf~D< zk!i{1IgcB+al?ab^k{5Il5%b-`HAQUc-uB#wN*o1x>?`a#l!tAiqbUxx!Y%H$x5&; zj0!o*n?!_tG+H8BX>EfY3t^eIIY~PD`(EAI{oi*z3b-#8O8Ei$q3hVTXxwG^uJ6v8 zvz0C87YdTcCBwac7ECu#_XWh`GF_`WbIo=)#T_&ZRo=_Q(FDvaUS8d)*Qje;5)brd z#^WZeEmQtUq9`Cpq~fI%14j40@!CQU{FpEEg5QDN-R_bhGJ(XlnoZ#K`F+PimXs`A ze?fr6IunnP=p4=IlqdMlYz27Y28VZ2U14gs5{~frEm@}=4%#XjKFhOublP(apzr&p zp89{DH6Bl3*k)cgGvbwTpn>FS>iqvZaIKkgO;Of)(qXnGq6BbjxGxW~99qIT%YAoT zpOn2!I20fBV7@#PCCI-|2-;YgsHrG>(cAE6xX>98kww4(%xD83Bwa}k{otAuCk^mY$tWoz#ci9Z~k)Pja9do33`aG);A@+aAb~eZ-`h?sjjtWgjG3iQVw~(K2eX-o=r=t+5#_HKPD(3NpzV_3HT%JMSSO*YqOh!Q(UpB&74-%&3iYa+>rBb5cwF z#w9jYcU2c3f7NduEwi@;QvO^I!sG-GV&%p%5XtDYfVVm{Z+W$H2$+{+&ekW3^RWa2 zk6F(hAe!2@1>Pd6MdDH`X1_%yEu{OJmd|r|qPW>gW|(*}O~DB`NhKUG@Zm!jAiv>5 z1!ndDQ+D0KnxJGHKRV)yn*qv#ufq`|*g zZWm5cH_~TLy$L@Xb+aHsO(-VSFas~xGnEAEke~EG=@8i%Nt@DnEWogvp-T4q{avgiI%wg8{{fU6?5`lMByk99y7fspr zjO&ukMyA=m<9<}-mfA~WI_KfU^0bvtcni?Ph*W?*Lcdy0l(FemkvP^3Uy8qz+k2uw z?_$bEXxr*H&ld2jf-9_Dvsso(btf+bnI3!s0zP|hzu2L8OWU~HVh`#dhSdP3@}rJe z>(riBz&80zmpHJ!7_AP>Jyg=+?@3nJ^&)FW$255r6v zaRq-=)+lw0^mTW57=%q0#211o`h^K|< zgmnI!0kM&;NbA(cfmeWzUQM!!ESjROd5QP=?e?QgfbVOyQwr-|rK7M`IhzNp4&pwn z^ItDOy?+3rxXWO<_1E3_$SIEOa;+UDQje;*6Yl5ha7DHjv8(Z{@rLH`9Bz++2V|O| z^D)rF)GU2YaR8!CyF;k&3CzK+JpwpKR!jSJi5^&a0uX!NOS)d~xiS*dOP>}Y1-!s$ zD)2v(2vi^!bxx+GZ{UEU?ruh0fv!-GRcy(T08AE0D-F~!?fk{ISanQZlD9~2$)l-) ziPZPV^dF0T!w9J&q;K^22@XVJWd&0h{i-sr3XHqSBWkx&RAJ%l(J+DK)_?sd)XX zV&WgpLvGs!-gabG-4q&8f!u5pPXA-uNT-6%DE|Gn%5xLJJd~@7HvG2CpV1L7GP@k? z(NLWXLzF9FKSkP-sKG>B119R!X^=)+z(ic<&Pel~3H9u_RF5pLn z#sifvTVwaq;Z{juPrLWj86ZU3;P1~|EY0XtaK}Q#kw;Vm(~mm8f$r^8lyUpig`{mb z%R{+^W?s&Qi4BS6bwllj`Ljz7Yf%q{m%52{l(t`?F52vif-SiF>#aHxV@;1l%@zve z)dF;<)H_pVt=Cw`KLsgRmizR--)~dPV+~vj7fRJsy|1a#JOJC4aU*;FIolLS4{JXQfLi-!T1^-v@g9(eStlLZW0i&urRxe4eWo}>htsY! z^CsdSgsus|^uH->>>(A-odhp=7Rk6HhjJ!MVMUmD+144KG;MQ7kzciS;=M5sPr6V3 zBHs1(hsQ9;58sJ}9WdJz-X%@VLq zH8puBm<(;VdzufW;YS~K(x-K?#s}I?+;kpplQms;7)Rk}ztD9*!TbEisq9c`L{u5Y zvy6#Lrh?dRh{gTr{f3U>ULqUOBWt>8pY7BC_Sw!`!r^=? zQ2y&C2v`~KRyy>xAIeKktURtrtUtl)E#l4AdPto*bo^@%-af{}?#(90==ogKZkcZh z7`_*CFf`kV*2=z7iA_WVmuxqP3b3V_xum|uq_o8ewWCJMmlm z8cbi^OHYg7twq)8feeF|C|;D2)mwgfMbli6hkyy4OLglm5-q4~h{MNc;vIIut)L^=E-6BR5v5Rs}!?Zx0}+1eQ;1zE^vXG+YsBPCHgTl}0YZ$N!wU7bZ7+>)E)CWq2L+B8F` zW(IG8^5LjXNZgAx*=KK1(z+t6ub34YcGh_G;8ku6SDtj8&4}mmcb(>|`SDxGTmW{p z=Wvj4K4tyjeUP%oU5nnYCBos2#!HW0N}r?OCjXBXpj3ee(a_NtSGj=PS0i^%7Pobz zQve$z+g=$3V4VeIl@NcMaDmBh?A~V6NdQ$A!jnCoLmMtu)$vbW`J~&P=GG_Y1--g1 z5~cffJ4kt|wznEOF^08|68atUSZ8{ z#YLC1tlx!N6`G@0KQ2z6U-u>3OHSym#~iKW zykFCx%;AvPz$W0G{}Q!Dv&`ELO37$GU{I=~ebAB2mAcP{Sg@pVH|$QO{v?Xn2-J}u zFFaY(LM@$(O}{ZOJ@nJD0)QXpK3{py|J(+SD3*c_YSs*_v$%=8XkCC~_Pdk<=tA9v8JhZzRd3aOltuP$G^2jIQtM0k~#n$!&G zy}fg>@bOxw{vqTGrV8ZJo7BEZi3l!RS=e?6rK;;*#h%Fez_e38H%AAntPQfafHHS=P9tQ@CcLZ5;0$F&jAgv z#ScKThM@3fUG0Y7?Ey>dM589~g>f(O)!F2oy?TafR6Yit1(SUlUsiqaVZ?Z4-fFh_ z!Z^8gRt7MZDP{BL5@!U^hiz(m-Q@<8`-0_8_o_Ki zNM+QUe?Z-s#&uscZu?{A`W7bTkaW)k-M8Ssm3(b{H>Z$SMrr)8v&6h04H2hkn*^Xj(iM&pgK(d{@<6 zU^zN6M6;mT_)mP0Mh3rNfZ)n%#gxg>|3tM%hmcInq{p9uB4DGa zpTcf!@3je|Rw&!e5`Mo6V=N;te>OA*LC6bRHw}q#G3zNaDnGBdV~@{(DdS#n&2-AJg9v zd~;NAT23OhXokn(DdXnF+nv7aE9b91T(^C8jt;3rCG}IO;dFf;H%U zT2>F(w}`fiV6WPzKD_i|yt0U?AE>KZKgu}%sndAL5r3TJ`Xq^i)4zq&cKdTENc;Gu zI0T|%DB8yym>HKGV>=&S%TS@C{APSjTd?DnJI@quIE0_zI-eOzz0Q#*(Q;HI!dqB~ zC-NNMD)LM8x~&u=#YPu*>GrquE~ZZ2VR2w|E{G6%5D>|*aN+3CjoJ2EDLqEyuA0bp z-N9C&-wNGq!)LbaoAh$V%KiRBGAOHwSN<}P^;*&@Xg^0s83Z$Pv*C+_4;X+E7SDCH zTYg!Lmus!d);PpPkXdhhJm4f$0J> zwB1$$QXV>h`u>A06t`YqTcWrmi@pE-@ip3~h%!r)qeUHEj<_fKAm&gNBtff@`2+mC z0imj0oa#E;darLt^GWt)!kw1KwbKIMC$ir%Ek2eVx9l?US}(osTJ?`grAmbFF?sxR zNU8`9sYCIvf_}c~Q+2g0-!=c8pN#i+E+>!M)VbxO`Kw)C+dI>YYuX$`72nFZ;I1jI z3nUi)uAS*tU&X-EtpPVc;9$C0pewd7N;qGa{6aAESjxI1dw~9N)y{Pn-p*;AH`JVn zi%up~pN&d@OyTJds~%*bS)dipr$bN#KdqEVKN~oT6+(3j=hCly8lbC>tk79A1`sjA zhg=LOv+iAHE1koXvZWU^L8XXK%i=dK=Pj47-nWswPg;_8o*r#rvYHA{_%cOI6Rr+3 z$Ow+z4O#nCVzVnpA;qcpVN}YhALnW@Ss1V!`jfklwtu^NZ|sn?50ipPO~5Ali4=G2 zUE$oaM-I2!TOAVzG+G!{`+W! zMB||Z?0>Ix!zObev>FepZzVSTk{VM zD0;Os0-W9iUit*sch+)ExhAotsUyhGhafYE>{iL%kTf9g7~Lv#J}i0;ZCd3DXM>rX z61W*dpoNlAFA2&Gt1%DfKN+5vL8|L+D#oUiYpqDOfbq`f{RO%m3cxV@bXP8DnYuZ> z2)x7iX+U<9bEkDVob|S@oeNu=rqgJlQBfw7VfSszI*@rHZku)NMw@leWhSoZTHoU* zb$rqgO{T>m^r4qpSoI=X*g&pGs+P9Y@!e1{YbQ-JgUPfYg;1A;w^ehvr@aitNjIPX zPf`5L_X^IgIZ{%|M>Y?FTSB2+t&Z99vmv^nxf%{tuh>0bNi3ZsatK1FnAVuW&KX_! znHlAsvk33jYzn^0EcS95m)TAiM)#%lXNlIBX&~YF8_wI@qfAr07~#_Tk~fQ=x%&v& zSU9th!&yvLym!$Cw0_$t{wy`myhCyg z0K9^{p#nWq2Qy5GHQ8A)p9Q@Mj{DKVi6Zz2hC4}-7A5UMHzdz5EzY-!4y+4$R)cMj z&VIZ&!n(u!=h(upNdoSi&FUqMIw-M9+{Q<*urS%hwj25Sk+RES~y0Cv(x!(30* zu(ATf3nU<;#kM|q%DGDWf=K9#eedssi~OQSnQtnBzvP-iR|V>-#2Y@6t0D=><|{lL zqen-y@!R|y6O2PUdtM0b8k@!w$U4ta)y_CI|Lvu2@oW)Ri^4lPq7Od3tJ6a;+ORY5 zdEipgcC;q?_e-xS_>HuPnOQno_~5V|=`|r(4rDe~b31s{YZE=DH7NC&l6#jtpeXQh zqiK?0vLoEL ztwNBQcC>hLKSK>}aizWlt`SL(Is4kSsyi?W4svM(Nr`Vy)MAk{@a!nDh3zN)2ItnI zJbWhcB3qb$w(zkxvey#Q$?Dug0=*aoIGz$Q2x0+y22@iOeAoa6m5 z!9IphxF|wQs5d-B^>i$~dTp<8Y@T5MaG?bOY(TNeby`X%>hGz@y*^@ta%B)8@T04A zN3uR*?w_Ip^X+=JxMi}tcWF@0z)jbLSW@Y2*AKDdq-)g-iaB3n`cqZg6F0{gXMarH ze8U#X8M~;tcBC(EXZm92Nl6*O9-K4JQmbwBw|GwBDjoTc2U0BK9D<^bCHG$wvna`z zSHl_ZyeNMCT5__JYbH@n?LwTQdiC*o?Mx+*%Kut3$Bf|?6L<9Y_yv|Wx3z0uU#!hW z`H>(NmC7$u;B!i+^vNlTaRtIfU6(-K=@4E99NuR7?4lTgV84iT^@_02I( zi7b31oOwe3>Kgm|Ajgv`7Dg}X_xUp5k8#zn|FF_wvV1kR*EYl?W#jE_on8dP1~@G$ zf3+fay9CY&$^aHpfzh=|Da`zW#rDA_LCxqzFEl1l$6VnQ4I^3_{@xs~FxXYLBUM%NXPai`K1?R0c< zqlrZA;&BPkttq01k&d-#**R$=4Zd-OzE_LXtqxX`T!lOpd7``HE+~y~>{rUZy82)y zC3daQcm30#)4>Z9`r07>bWcsCxE~8%3^iE0bW1-NgMx^M_GgU_ljk?x2A9zk*!eE+ zP06*==U$Ty)@GzQK~#-bZimgTx(LGJY;^9(9SVH_Pv1Z(4B*6i8^L|^osJijM10Z% z)_I2KoV5p(#tQ51ja9ed17OQbZf6(cD=E!%$8_MQ(y?*cyf-9}0J-yJKlVfOb&)_R zZ+o^fi^kcBFw7)gXh(GNiPE)tl#f5BYGvL2>9M2N3#*tCHuSf6eWjZ@go4PKWAlni zlRNMlDMMCX2-8JxMa^CsU)~h)Z&#+IPN~|Qa4Zw<-L&f6t49MX?NxonkFf7qC+WF=hp*hp1-2 zv^en~EbnwNhl{UVKsP-d^MciQr3*({*M&wTWa)15{t+ey71yLY49{3qj=**LlmsW_ zwyFB`u*WJT_$}aGG%Ju~ZaJIAV;iY;DVS{h<*eBo=xcXj>uz7jj8^xrNhWjK^hGQ8 zsy))Kr^p3J+j8_JTNeg9`1AoEUds|f{d(!=I3#=ar2E1LYGb1%OUtD*tFg?v@9Bmi z6Wj&O7cMBUr4cSrU_4@LeDJ6syuwZ7E{SO&^3I88k;Yb|XJNSp@47 zeTOUkJ5?9CTzvtH$-2Wm4b?w<_DR#-7_smkp9EKHDv3fEDYKr*+1XJn`T4H-tgl2P zvgX4TFpF-wWHFIE@cO3o%xN-%-v;e1DFa`u9{stw83YewPFtlGe%|I8%}x>t?mifi zsFnNK@ilHih)%aSv2^RpTPD+oB}!f|P~|aS^w1;y?GMpdaLJWjRC=y@S#J~8lhsVJ zQLqnVUM=zZ6;)Djbkg&-E`93qgOB@PonZSOeO)LC<2lJHo2(NMdbE4OUhTk6<)EmU z-@&~M6dBnT^OF$CWt+A~raW{B)G#p~^ohvdh7FqjiEHrtg4D1dp0%EeN`0OIZ2bBZ~W-v@3g?)5`( zjl|b;gw2*G<}H4>4OK-7D?f4}TjJw1&wzJE@`OQFfzmnaZ<7S7jk5>aJSW^UtIiGj zYuuikV(XW_eE1Hw`FAVbxFP`Fn6hU^-D_2j9xjYfkqdp_h8r|Dk|0<2ICuXBnJsXlK?n!W&^96bcbe@mq zhyLTmg!SKzey^C3>IZ#1Uk%Am)L+GIM{o;E#$-#)u%FcCs_i!K=7)FOj+K8rs;`os zrH4{XKZrEfARUBgXpWdJg6R1?r^G3%jNBO1g;Ee^(@Uks1Zoc5h z65lZ{7=Ip6dUVmU+57C`vw$O;$qzk92di}KkAvQxO65Se^8Iv+SeZ}$y>~v{3upj0 zC+2Db#iGntZVLtQ{frq~k>zDV=3G;QCa^R}wMs=O3*&Uh!~{bsl;jGFLIn3yewJKR zZXr@_M;hVdwK9Qi zzA^u6Y|FRVeCO$x2s6w8WkJ0uwmQAUHkfIaV+uZO?X+iJI7)P8Uf&#!lPw?;RaBC# z;?lNYt$R`11J;!l6X47kT&lkqJK-N!n``>6k9p4%^5#S&r+uNne4jx>tMzW>R(&%K{x5ZGTj_>R4Q{9o-fOJFhoo@b=)Xield+ z&Op&~VLnjAAaAcG(6KdJYtpcZVjIT3D{!2wYin*tEMtZ2E0z*=+M6i?_e?Y>97{TV zDahZPhy7^ttzyDGld>`m1&@t#A7-8zB6V=#Ow3*@IyC)g`UyY%c1)KJS^(Q9h2E<+ zT__RNXzlRb*{sSw zZ9RIF(Jh+{f^>ZAoXD)X*|+xGgV8lvabOlny8-#6H3gZmJa$dxLV&K^E&zEg_@V;j z_OJNYU7p>P>pV4ca&>7;W)F+2 z@fwNEvZ&!>#`AmPc}HfgC*-2679#UyoTr@h)PC73JTf9wXRLB6l!Ko;0sD>kbObi5 zvE7+{#vWO?-mJmAy~AicI*x6qqSoYht41MqNT92hJN$^S9e3<1$Empi*M;y<8P=tE zPmNoU36Wv+`Z7{HY1lW#gkDkJ0~w=?N0&@_`*SK;|Fm5j|ATm2vi);xybPA#RhP4> zngWK&(yFx;*@NVDT@t$NBMq0sKom9 z?MjQ|?ZV{n)rwPi{Tx3B#4{&2PXl_(YR|?$LM}Us<0PS9xYid&I9KJn@lKy?WWqwMP?1fUfz8`i%FuXGz}7M3p#IZFWBn zf}ZIA<5ua61+fMpGVNs`Tx2xo%AO3QB#Sbp9%B1AqohvKk?$DJU+%GtKy4Pq{`1XS z{%-N&W}_^z>-*VFP@!3^%LWbHUoWsN3Jz59*m)LsfOM%{%Oh$Ifyd84k(~{%qj~Vk z?^;f|XA4<3+ofPyy1Dnl`;Tw#Zv5i)lH)p)lgIi~^Cbhs@pxO5FD6x4*eohO+)-9p z`Uu-V$Rl=HhBlq|$xYX11-LtTMnC0wu1NJ%x#3$cMLQi}KrGio=*gY?$5BAQmNR>M z*9VYz7{&m0Ol={=bL1S)Z(dB{C8%L`Kc@n9 zA0)sK=+jm?C5!#3l-uBS#71#}43uY@FB1jD_e`9%6l8))TR5g15fO`auVCVpRi4<& z4Tk5M*MrLq{L^dra1q&ex}(giTPJxGhK>VgFIAD#39Ym{a$GOz>Fnde_07pvk2%@Q z?X8%sJcq%()$Y`{NYt`|>p!H}X_SQd;*0`09mw}_DJg!vxsK$t+)+-B*)Vo|Q6JPZ ze3HjiBx9b`o2#(a^eBg8quMzUbxD4cl8~R6=G;(yoIP zs+UP@rt1+29l~wp-QqMyP(1W>R7$ZF!58iyE}sG`NYKBab_EH_EJE!u1^i|5&l-X> z>CYzz->T6EfoB??zdq}+PKA{7&1veXVzDGFAo2<=QJ7bW0|%ErCa;3pQT3DZ zY%ls1h)@@Kb@f~i3p;dO7JDM6E{kw1jB{opEW81hmG){X*-F2+_XPF~)13ynecd;y zY>U5nnoqf}sn(+F0-CQl`2VzI!9bv>PAS(!{RJAdztPJan`-~yLBLIUJ7;#==sCRc ztSP(G5u&OzDltMZ#q^+=-U7fC`qU_`smk~7ojd7|^!lYiFtH|3d_jiwu@VF#FZ z1hKt3NIx7kr!N93mlnarAcs0WLq?}nk+02 z2ZP!n#w|J-k%C(`&p$v;6`6Gr?mULl9JXyBEbD(mvn;LB+MnIj>OSyjx<2R1WH(k1 zT~81-tZq^r5$GXQ&N6erHMN^Yav0?8h~D&R4EARerC$!b5(y7Evosw8(b&}!6ex59 zX@PCd*?dByjgw;`8ckvd)sjOgp%yL7CcMeHl3n1|_fzie=-|C`6TwCS094X!1ebvH zU9D9TgS^nDD%;^p(C(yD85f;lBF@d zZ~1;h(=~QmJdfOtHF*0v$Pc7@pliKJ_4cjPKPrzr(7hA5jto7&D7MLn2+K8WNV^g3 zhsV%Oab0B$LN_OCV7SKpwX2EH2eD~)cpq9#L%#_}H$>grA)dbO{}37?`)gymM#Up2 zT(Adho==$@ERU{9tE3fg_J;alN_-6)ypk!#4}Vh3gvQ^VHB14Y6WfHN0T|NAFxm7_ zHqU$K&xdOWzdfCD=m&_`gN~Toq=YZ`8|UTsN|m-OS-!jbt4d6y*E|*RM^Uk&1K$V) zEUu*g+^^eg=7gf9o=eZ0ZU5E`g@f)~*x$GIpCVmh(B?OzeVY{X&*ewDeX{X!m~mUs z)9@Q{FmP-1f3yJCgJGy0E@Q;@`fnz-MaGg2p`O_`DRWiR<6k4(JH-TFHBJu3FFJvJ z_+B~`XF%%ZyWw2D^f^d7Lxa%Y#k0ZRJ6>$vQMvS@g$T0aOb1~-I0fiWLi{C-OGHJi z4%Fyw{XS@t=-I2MXN<-73XO{xU`_e6q_j(w@p3|2cbnPO`p zRQ6A;O*cgfJ-iF^J9*-08i5nbpIP<1EjH#D>$o9C>e)dIPIGk;wAEZomtt4xIkC%& zJ|R!M9qPp{GLEE7V4{4)N`Dct(0(2_R%aGc_~pO9D6d%(crGwmLQ70L*m7tB3t!C) zfB(>5x8)qk9XwS}({>P9r)C zA=yto8?;Vzbv*P3guD3%g=oOHjc1L!oqcaAfi4~~J!c#oKIeA3f!|cs&NFC!xviu}M!kHH*@S0k#`Y}aKn)2p`q@iGOAu#syJUaIx*#7z&&}{E4i}C&De6Q%8=C`pQ zgsx*96r7=Z&^^NR&y}+{`}DULSMWR?J)cw|3FoiW^K?H`@?3Z~Z2bJJ*)jf~L@MYn zx|9A0n84}M&on9Qy*Ho+5In^k9IyNBdnXd&AK>ME{m;&VFtq2NkI7rl9~FE5G)Dc( zZys_%)QKsUbe1LB^8!23%60Peu$4RLxy4}_#}4(q=R;!lQ^fP4#zpTY(h4gl zTnukZ^!g#l`(Kp^owik{;)}0(Tr^JMKWw!~Lcwt{CYBoG6r9-GJ53i^iN z@R!-rD$d=haxv5hsjEG#AApmgIB{s9cD%}M>}SAHvvz)I);`iPmwligF#(k%c|eq5 zzNS$6b|5z%iqbgM$B`|p@{inIm9)9*i0=k$&{iO<=c?&Z3qNj$fH1l5z7w-{5ObJ@ z1<6o2Ty)_c3(+vV)*m;XH(M`Hxfe+LZm(-TqKlpXG_FXWfIpF}-B+U-BcPc0@cMN6 zFL9d?;U1|tQ+2gqzgNI|na=8c*;}UJ5=}03>=u@bDkzQJzi|R;@5@s8Yg{MYHXZhj zF6gar$liKhEDy_+2pd^UVA?$R8#6R`90De&?@-nKIe9UjXZyYsqaU%d&gRa+YI0K? zyFV$Bh}REUreJCc)X&uK{5|mFI`LOnjel&?R3fk$seRC>6)C5@TXH>&KqksWZs0u5${?>nFR>B3EmEW{W|Gl@9>> z-eFJ}AE|CCKs*ZC$=n|3T>OA7(R_{06L}Oho_%dn^@6~;z!5=yGoW040wi%v%H+=r z7iGUG+tMA)8B>){f@caUB5X>G-o(y~3oi%=<^kO-^3gGQN}B#kC)~UHZ1=MV48K6~ z?fEK2CU&FFdi48ixraywc{YyFy8^rqCi0A>P_yAb>Dkz$qW2ff4K{g-y2@DV1+k4P z|Lg*1*f*|qv30pM2=>0_3rJF90~@>KeHZ?ffXED+0;97H#Kxwg$2rWPyH9-XUj?8m?Fn)xaxdz?itmz zUk2@6C;atrm6PneiqrV!y;_E9wNiG-3l{L53{j_tEz=5kHUC?{O9vY7l7*_XrK3%S zLaCs;s<%T460cP(@blu$7t;iOM)+TqP=~3xY6hr4TM~G1rnm+0bBff{ebGn1YL0#^ z`r#~1U!@Vn!x0~@F|GeTy?EgE)8M|@4F-A3G%WvPRun+IYBV!wMMgB`1)g6L^pq_V z_?vf5t0YpQvCmMR+5vIL@gC3ZR!mQv&41QQFZ2_~rLaQK-d0hN0tf=%0bC~O=r=kwLcl!>O-;zE$W9bg!xG<-h~2wAg_BL$ z3lURakjxF4UwnH6j87r0#z8(d&(fn8N&^=0JQ@}dGJ=&UOw!2otRNgH#`bYYu+#~h zbjNUEp~P?rm1p$~Q@rUV>*(K;CD(%vg7N7=@?j^9ZvLb)F{vjpt(~0WPk$0S2EP30 zr}a$wX;qomFc#y8bSbhYey{UV$*Um3*(Vp*sh=l63ESZtm!gnB`@YKwoHO-OI^d^g zp)IU@^E~Y3KOQNAPa~S1f!IKuS0uttxuS-X4%cCoLo}x}xMM9~T3n)Ntt{s=4s^XEY?kKrL zC!ob-gtA4N?_Eqmj@h9oBMPa{Z^WXSu3PcjMV^kLvKR|uSd#_al2eR&yKFV-AiP>{ zATCxQ(Z5-go0td#2vCC>KsF|Lq#K1+D{6$z|VW9Es`u($5g z1V};EaerI(>>H9P%SC)al84E3TKhnoc!ymfTE#Y93*PVKZs)lsd!D`F!jcqLfpXJx z$~m1SU3DS4nJL7H9mzKbH+P+DeHM6vg^YiLe`hPd^0vDwJPdPeTbu-vf}7#qpWzFv zf5a5|2YJ4!1lb0DW2hK+4YP>aXbNn;;LBpX@>A*`=R!}6jzd%rNWe&(dv;rSTQ=ye zbgO%M#fX1Y!Ms1;hyPyfo_#V|CtY*8gt~>g3s?TunP>vi^?$L(F~*kG=NqCnhvHLg z^c?2czmC$vJNv&}Vzg1?)^crkbMy0AjS0$ekg{`QE4q|j9OD}=j=va>_?#zax4ejL ziF?s%s^2Zx8B-XdAjpfnt?4vgc|)IBp_;o%F!OAEXOd>EfB>%UBZmKCBmP#D zlb54EgI)#|5!J5At`M_@tL0IpjpNbxZ3|Zxt4s;pT88~6T3Q+cyxl^_v!Bbj-A0VZy<%>NdrL2NUAefgFub9P(T!~{ zJdgyx!otJk7Qpa1TY>tt^HL`adz#pU41246ES?U};~H_FUP-Di!S99=v_s6NwN)Ts z(KZEBVj+i|uBoT0y^N~{5$kX1e!`xIlM;xWyhQFjhameNW=aY^0`9xFT0wQ|WSwQE z#Cx(%8hpOHK{&s<=|!?+Pq#DA@*lTdNVE-nd+njeQ}ITDh;`E-d@5eblj+S7tQeMs zI=jbZ_F0JxEznEJp5

    &Ab1_w&-Gv)alf8ueHJuyb1EGTXN7j1(;(T@!?7{jay@ zl4GiC6f>&!?k#Gmj1^&eN>Fe!lC1Jkfh?71FD&nvV(u@wH<^=xB5`PO7M?NB)w`6+ zRVWB6eCwIn@iTaMM~rYs_?Mk*=Xs_xmSYjJxu5nCN3`x%bJ``FpY-PA*3(WZm9n1b zubJA&s3R$K($)QXe7-Uk9%VLHf58ebC$+jM#~{;i%Y@ICoP3hP^&I-;%Z2kNKRe$!qY>UoBSjU#sWJzkW?d59T z*J|n+CHIt}0e)3QIg~VQ=c1mxk^sfT0@tFjaBaXOPgB50g%QkDn)^dxr4?%5yi z79PF?3dag*`yo@=HaLV$vCtoSiwH_{i^Tc0~42XvLU(=Av^XwofBCT#~=m{B&)y6Hxc}dPPn1z=d*t8RRPI#p=S<3TZAAXW_w_#tv z7VM43PIczD($+89C?GskgzLr)T;p1;I&d~hJHcDhmp~}9od0G*)iA;R1j_q7NZxRo zLc-f!-=PneA$}-bq50LFFO|7xQ2~ucqE=Q?_D%XSIN1C zSj&7|W`1s2X~rO>+#`<3J#u+scyVBV267^AIGO^Jw#dGFz9YFXNaBe1@B9GreEWQP z`>|@a#o;}3>zuzL%724_Xa(TA|KB@sft(^mOr>og$CQ#`9p-+As>|CimF$U@dduU5 zb!UKF!Demb<#z+!=U)eEBbSx_f1a+XUO~2LReMtyFWY|~Y@QH9WBt@uL;|EnFXzCI z9G?&4I+RLgT?|>=!W-10*AjIrzQP?^WjIm^E5AHUb#=d*f%R}BXFw!+=QV(k6n~i9MT?~QODwv z^56SQnq!>oi<%2Wk#qqTM}YhV%E*pZ_@zaAM}c+wDrz>3gL-jx#^>ws{#a_WHYuFZ zeU}TS^wr8TU4JZ6w^1kKuTqEQ-;_FPGqEw*o}|6s`{BL|+D%^SqqmT|rA!?lYkU;o zqYhITBq+-ERPbKUNCSowgoR;9=l>jTk0!ZH4%P?;i=D0;i4y?OE!SEe9tmH4;xLIZ zE8kwH)3bM0Hh~ObbJv)7=A3=#(I7;sU(a!&J6}A>FcoUqU*TK?GO$ba7CMU`Fma58 zb3bvM|7vBoxi=Q}9G>@7{R(k(|0u#?^PLBIXXcKK1NknOJn|zF>h>zd-;cR1S2@lUh*qNjp$*+Cr|r%R(a*!TY+)JQs;wM5r|61 z0Uf#{0DZ~xi58<7w*wtUOYOu5g?gGroiv8u1a_Dyjr?PW*vE0K zbYT@K%f-C#+CF>{(gL{~q(k}C|Jj%p9qBQ=HdOiO$@k&R9N79u9Qj4AI3@~S_Y5_H z591guJ{LTDxh>{TM9 zw6)rOX=Yf&wDN~FHhqEzNqWEq^C?Adv~UfT+8NX=7u5XCVpj*5TuL|p>NUVe&LRU6 zT`}sFF0MiE#l0R0RIOQqFG_4;A>3ZN>L^%X!p%gL>~56<4UNl#gE-!=?N)1Ra0U}crkS0Y?S`d&TO?n5F-m7$o(h_PYA%TRz_hha$ zzrD}dbFHH?eSDlFT38 zG_9;iVuF;H{%|mjDK#um2-}t`x^1|zQ{%L^7dN`{YJ)HcQfA|@_VY0cN52~7|Li`L z{^q*m-IDUd=Tg@I8)e_SM3z6o96bbh7#z6e(y&qOTl4L3z}`~V0?VT^siyy5nV%4s zVR>94CEVmmAmCe%Mjlu%NH+m%O#ujw5FU{6Tv^yo83S8F7d}mE^w}n8@nQHDS{MJq zdIRTD&>DsS^KoPTAUlz^vHMwTs&4yy8D~wn$;Ka_ZdeYwB|vp=0SV+2q>w4$AR+&; zfa9jRAR=HvovleYu|Mq%bf9~D#y8yb6PbI{!z(;T#x!jEhmh{CkufQ^C6OlpA;vpC z>o;uK=rW#8Tb}7RN|9Y5zX%BoIk}fIBeRw&()j#tYSr^gb%HJqmbgCS@7ouJ9ci_U zo*(ZMb6XHdl1`9qy@4!2taUoWoJPLySK`NcEG6Gwr}Xd71#RHYxY?&xsXyvYXn1kq z`lG=##5xo8{^D<+K*;uRd=L0OX*jymz~hB1Q@deV;^x(EPTRn||0ceSrnTF&kA^Qm z*4u62#u`oi)C=$W`np6<-E-R(rIhh8asLe`OWFHhlxZzJo*U23%_f3Qi3Ae>iQX5k zJ@|%+5Z}2_*KX1@Fr)QjXa7s+T^gz;gQp0ri+=n!(P_x61xKOd?8hjvVU}c>()Mzh6x??vBXA(v0qHy>|{K zoo~eS7roQ0(hNWt*AjRp(T zq0=>TVJ@-g4liYxm8`A_dWTKK#c)NOkQEqqTFmTch?LS#QM$r3oU=P|17BlFUe`dC zEl)|9hM(y-*+P6K`}WAoe`s!(hPhC6$1sYUOa9Ek1Gcprr|IYIhiV)8e^i!l6&N!7 zxqWDk9ZV|!Z^a;Ej4TbvJXsOW6iAcQy6hN4N%QLYVD0p7(0;9VreyD&d(PDIIC zxkPfq7af0;nbB%~;;RX-ljIlDxn76f{56`_@7P!+sh1cpCV(}?b<8Wi4`^#LtC^-1 zWtA{WhZe_-)9;lU;;KTXyi1E*nDE=!E3+K3lao&+tR%g^4JC+LGB|G9335n!74%M& zHBT{V`0An87<5XL-9emGu0>NGY|G3TU6x9jMDK5Fv8~4kiq&*{dLlYs?XP<;dGALn=al=^ zr4^4mHmmuN*H(4H{D6MxB(_^`LA>Cgv zCBwS2oy=UQ4TsxSqhz|CkUXZ?n~kvLf5-YY4yA)goRYT)q2>d&y!#tjCu7W>nNB*L zy)5$3zZ-NPSt)*CWjq{k49gquxPwLY$bb#vN1m}bqaZJOfR3tkFV~Cl1v82mS7~cH-X^mUf2PiqkHv-8X4hs ze_`#>16d2wd9E!)(PDzO7Az-0LG3m)FXl(6wMc5Q_+v+8a<3x4URH)28uyhO1WYr!6GYTBF~SCu=a$yCdeeS| zI`*Z4k%Kz>=myg9=%AJniDT$;`zi67pV?QW7Z+H%fI7wI2geCc*n%UD_D)s(9H={O2eqkZb0uVd5U?e+jlt-^_;dw&|9fKoprTKBg!~$ zxZ{*=3U*A{C;Gii`=l4{T|$S*2Ihi@WiPh_dN6J~zBO8>3pxn#S<`6Ru*3;3pb(2M zKQ=;Ste@e0G`1nxu`dZ!*)7N4mAXzr!1tB{{_935X20o(+%yH4mZ$DZJ+8}~+T~_T zJNd@Nl{`wX9|9ktnH$I=n$%3VVNbP(V$u+Os$j6@5O)goKXvH{EJia;7Kh6&A5s(G zi~rn{z6cAzPL$%ecOuH}|v17_~sMzAS*L{Cp|F6sgOUtkk-Kw|2V>E5oKu9k%Vfkxt>`s@hm zlbMBxj916G#T2c5{6t;V)Rd+Flm1;~vsPoACja7$%Q(OIlXV9)RMvuqi$~{?&(OFC za`PkZDDpSeJMNcPP{?^9U9-BDXwApW$zsE;Vq3i024 z7ygqv;O}T?^-ooG&w?0b2MNTT(kcn7_i{`h?sR&6sIi0Ga*5)f*E0IN9I$vze^<_N z@MBq`GWr?1MwuB=Kg`y$mk&8pQOgY52y<EA5FSb~Q#~kz- zXQd?8*+M{A1G^oVMYmdyXOWwEX_p*_URQ`a{PO3hdED4LUGk%Kf3BGfrTD{J=+RRt zUh1Qw&WB60{x_e#38=LDm@^Wy1?f-u#o*D#Nl+9q_#8WfUSmOcV$}j6)kS~izbKk9 z{teE|6RVp(mT%nutUqnt-r2(T$kpN~2T9`BbpVSE_x>nd2MktfJduoRa%tM{by))h zW62EIkCb*D0)nai{g1UIV&`ay3Z62+*}GjU57mvK64; zHVyV{Q321o6Gf^(T#Yj6;z_?_QinkGu)m8Wl%XEw>3wqQiWd;ZD#<_k{VVs1JZUgm zcDe8SF@hnOMRWPrjzG+r?-4a{0Lj#e8ib9iZ2uFv45XZto+G`IpnKT+x)+K_E=!cS zT?t0edQQpPUfMmj6XE^^u>685DkfxaiXVdl zjuh0U&oyA>AURPL1+%vJt~=?2!QLqLDyfYgH5UFXKp7AEkgV^gK`Fa*N-SoN48At zcfJ4_a_bC6mR)%d=qRW>9sxY2Az+w415n}AM1Ohzy)QTsIp=9f$JzQCO0)dI%fw*Z zkNiabQ6=QKX~0}d7)zdIqrb0iG<3{<9!P5{sabMqvc3ltu4{UUB$ns zPe_nX27<7`HClub1Or`zK~P#%^@XOKB&zd-Fq;)7>@7gY9qi%2O5rd?9+vZWm3u_A@~^_WREx0wnBz^tFnCrM2gQL1q?pyOmaYaU4zZ zFYjJYq1CLlyQ*zbHvt_z0-#SDK`6!mfn`LB01v8Ms{B}*Ux}>)4Q#!v%C_I7cgmxq zUcoZ%`apBqiq!V`ij1fElT+4Bo2@5%^vhdvAU$k+Gg9CEUH2@Ob98;s{<_3FzI{Ph zwIMX{($*~!rU{8ozdEd|W+nyr$OlZ}seLjV)&UR0S{VNb&d7Iv& zMXK~Ytc#@!(1}`EPJR^9E_KipP88)m&##-dMw7aY1^d`MKXNCVf2I;4PW#KyWA>>wmDf#j*v!GcSND;8g-_codof zDgNl4GhEVpa+nfpsH@KPRIiOjvNJ@jJeZAF7Uzx;DV3mWwB@SvsPbjJXm1s){v7BW zqOn&7wWVA&gP^@JmEMa&8=pp}>c@wP+}=TlGav5pPg&FYd7boYxH^h#$q|RIX8#@( z*i|h0bY2>`li_ATjZ;0u3rOn`Tj3@akan6S3YJUmZHe3VpPAa6v3C){(>{s3eB?Ap zlh~cdH?2?fRa1~Z@W{Ex;ITk#smL!pgt9SuEF5mnhX8-6b@=anW@Ely{31S6KOm-9e5ovkUS7B;yhg+@?28L*I&Ws>utSPmHy&{Q>EQ~eJRGsgJJ z02pj$T;~fs77-N6mny$PRptp0Lv5!o;j-Ci@m3)xm|UVn*os&l-L7$F3EJSB-mz^A zmf@SrahY;rmYtL?rSrS?OQ(~(Pe&MEi9aV-dDHeF>Kd9`%<@1Rtw=-J2W2=R+=>)E9kd z{O(0+eP~D&SIdHq_(nE-ZQ7d)XN+9{UIe3Tl&tSicZSPkdFMF{y<_a!T8W$+&`F1e zIO^Sol`-J&e{TR5V6cqg>^7ddP@V0aS@gQdI?s3&$j0GYm@o}k8Oa0NZtfgi((DM) z+w9Q$e|*-L>VZEZ?X(MCIa!^-o1oBC)!96XnSUZoA0WRDPBeP$7tH0zIl1y_ruI~6 z=d-nOD=_PpK5b{N`K{?91O5vgX~158z40ouY0PcI8xn|gwi}C!7=fU^*_96R`S|j6;A5lP3;z37m`w?J-f;k`cd*txXi<75GN5McS!9V zL1^tHu-*7Qkk2G*byDpFK7KHei|~(SQRFGKDyjXh=|^O_K#;K2f4%vsC-K1a0>_ry z6I#m5%_p<7%ere*oPoe`%FfoTr}j5FMAy>|{CaX>_o|D@Co*I+^AK9N_Q9AunXAI+ zMA<)|SU;wi9yiJj`ZuwF(grGdxttFzFO=?Y(gROI0 z+iMipS(N)S@D?t4&6EKT*_6rpmvk7o;QQp}KAOqgCSwOPg_CXjQkLCPZ?970whm-% z#Fw`f%HLo8s1sXf+n*K#>r?up!EP|aC`+A1P(M2Yl&qe>{ccOuSsa+WfvPm)2z9uO z622yJM9n2^B~dd8i#D&i%Gq?B6(Mq8ky1pRl%W71GM=~vVrl}iW;EYj*GLZs`p|!{ z)SxU)fIccy+_PJiZEj5{>bE8S#ZHJ%K}F=F+VTFo7Em~5W9n&f8Jy(su z+V24(D>l?^2$Qly9nTv1{oWF;pfUYmXCRgtzdF{xQM+0c>Tm1%6$CNafxz&s`IfMA z!m8AXn!&?W6N6_bP(cXRV&`WvZtb~|WyWCeQD z&>fBow|FldKU(~}C|p?lNDiu5nu|Jt8BIim8snoC^ElHn1#x<+e-`usBk;*YVDMh$jM5V|}FE zxO>V;UrAgICarD`Hn40ASVwrz`&()LM^#9&1Q{e@IfDerGGOGgcy6wI1Xic9*KAPZ zU*PcR>a7glU$wtvFP=@2a=$vHx)zAzmHMm5MbW^73bivnz^cOI3+HGOSvNWyV`t*; zAxVp~7TFCG`nsk7IIWQd<64U(-!#kWnph(c2Il;rJ|jHz0C)ziQ%UvDK3zw1X!N?v zmDX%1MVodD&-lCSh|eHM?>~>&F9`T*W7819fSxyO8(@h(%jBx2 zz3*=li=DlfuFvhfgX%tDTZuHOEa9(fSm4`)09?URuskteL8C55l?&A`Rp;%anYvnL zD?RoY=i4HMDUtjLh9@tV`H(`D5L@%{D&LYEG|0D0iM8toX)25)3Dv05353_)`)cM` z%s-gQe+5n~P6Cmw-vc)?Fmn^Ax_rySZ8mval+4ESW$jp5c7hzH;c{A?$Fkd?n8wGZ zqeHUS6ue5MkBY_f;-ERAyaOzldMb#7gA`aaOb%n#iVyoiBiG1G27!WWp!gli$xF$b zRRQG6YoQ~Ck<^avVOR&kQk_R+yDLMl{t3@Bi}b}*a?;xmb;TbB?v(Wx44%`iaZ3V3-?P#4!6a~c(eImHT9)d?#6qJfDz`{QZ3H|gRaN8OJCpT9^6%%Tbw8Gi z?g)hMg=ztLdcWt}4gc)Nou>(h3!Q0!YJ?D2BN{9q(fR`2Th;=p8Wiac4`nfwiqo(+ z;kw%MxE0kyXa@>G(M|^LYW{wE=9owYr2W8Sw$T(V`SGcGts@E0#oNeWh9O;@(1VHS z)WGbkM6h6279WHPeZCY&lp=zdgSGh&qV?xx$pgdOl=oFGiJm^6stgOKI^Mj?UkOM@ z`=|L5Z!O+fvz}|b`K-wF*DPt2^okAM79|w36%7072|^lz&jMf7|MU`vw(w`tq#Epj ziDDfffZkGESEQG>l|s&#UmkF2*c}b^2?W(o1Z+Fq{b8Ku!7sqwr<4HTA_+I0XD3O( zfWo$aBNovT%F-Ajg`-+L{=^B_07%L_CS=)I4{*Va3=e-GFJ9M0lJpm3^>zh~iy}gO zz(w>I)2W-T#<)gHN1Xi0a86cC+lo}#wB&xA)8?k)eiSF|f$hhkchsnYDJn(-bUphR z0X6QEq^w=X0s!^;<>6&Eu456O67wzEyFcj8)c>LhifX~^#Elm3p4{)PTEef+xS0wk zf+Zj)YmrM%E3>ooWI*5}hEn2X0_ve^-$oiqG1mu_&@N4)P2G;9J2pdClFPhv3N@v; zH5}r;gRl<}kx=>BlLK)&CGhQY+&D&zqs%F+FoG3(U=}#{CDOFwdm7UEh2dw4!piKH z_l4T$eH+)~6Yh)5GtvXVcM;L*E`-jPh0EftJ-b}Nn~>8WR^Lum#RMhwuDEZriHHz{#2<9n91v}kDrG;_pZ&0F-~Ds;m0)yQ=NqziStC2qHcwX1vksIOvf87ew;;&lkJc z!RA2F{!PjsG|N8(faE&3&o=vSB>=X}FU(tx93p@4P1*zdI8!yU^pfZ^pFF==5zv$* zdLQi;BiAvMC5a~2JUQDwP70kG3*hwr!RCZ}5ZL(dMm@~7ktW;AZ$5Mc#ET=9Y0`y{ zIc^1u`DH}HMjA82R|A{X#*LFDszY@yY~{gYSy2`4$-7*Hu&QC8I-oMAx>-oDf>Fz= z#r19bZ1gbyfoO+aAAGVlRm`XS9hFk2N}4{&V(4zIA!1O{ONbb64l379xP)e_4-8MR zxSgtp#b4s-m&8i&VMBD1ml$cUiRx6RO|WHgIKDx6QCw_eeibr+-ectnvZTzX9s`;BU zx%@9UHY#EL1_w%P_({Jzpr_oWd~e?8{G^pw3F032$ox7fU+%s<^$6Udyf}T$2A~UU zw3R~S0uea460<=juo3uHsM8TOHgb7uoOJ^T@FJ5H`ag);X8k5ZlN#@TY*5?nPshTa z2=fsDl{}Cx+Y6ne;K~iH$B?Al7QTQvdy;zYb=%kgyxeaOk|e8G+J?X-t}Y+^S1)=< z10#vW_As7V+lpO*vh`JcJI6l`1ab{)dwXK}PT$55@cmAxa6AjT1b(^J{$=cfXeGR| zSRDREfMaZmDhJy7MGn~h@TZ`Y)a zuABg3#I^a~C7(qk7V-P)?)y&K2sg`ZlV-fc21RuFfivX= z2Ht804+R7L+Jn*C`_3gw;| zhaQBttt$CpUdi1u{>U8fiE2QEXrmijpRG?W4W)^L)@np{Ecyy=xW#wvuFRD=sl=U! zm%mE-%aXk&hO9$mVJJW5K9!-hWuedkS9p`e^$(pFsKAt{ca3GFs1w|nyEiU8unL1wB_zY(_i z^@If>HDEf3mL?*3Oud;6%!B7JSr}iK$y?!vU%oENg!zz^(R1cnS0Mj<0FTt%+OBp^ zcym4qzoxckao-CTRnUN~DA!v*tSM*3v30CS!h?4*yX$QiOj5KU%Yu63Kjhl+WWD)p z6moS3Eyv~^qma@lYRP6Ue=cv+CxBu8O#|Hrdt+)EiJ}?P-`zp15WT4mo0jd-Leqew z=UILpNit~)YF7G70hqqjG)XjgPi!Fg0b#e8p%s8ll>W#!Mvz0DSr-P^If1 z9(c=jud4gWy|l^E{Y5(XO~b873uP}#qS(dg*2Sk{4!+!c;eK|POjs`i0%;$JREXoN zEQDmVYw-TZa@l}51-8FL(w+;?WG`_DmWlEWh`6TWfm*$~T zH9hk}|Hgy+-*vD5|L+F+YhVfg|N5Dz-KNJ!faV!$*CzwT zTlM--W#F`L_#L@l2Uh~;-@JbGAZ-#t<<6s(FJepFJSa8if!aR4P%eOXS6%7}$RjFw zhvtl|Z~9d?4Ai{#Q+qR)rkrfyaj6x+R4VT8-DZiQ073Fp4Y!q~Af)H6jdSLiCT6q+ z%62U_p!PL|VZFWXFsXdi5=ZvTq!y4+o4?hUgH_RL)K?xFL+dB`b|znktBOk0$49O@ z%}xFg58TyEu6B;3a-bI>vyhl1L0zsg!Lf%h?Z}dbumjr!o0u%`+GOYfBPV-8^R?2(gIw>=JAp_ zrW`QvZ$U6Bdqo|F3qbd0lt1`#baN}miOOOih-VTP=m{lY9elN+pc6=RqvFa0Qb!Eo zS9u;)K1@}pA0CeMayV_poT%KG7H~n-eSnMZv`7yT{J`+oG}u@n`9EWy0?QSWPJsxg3MR)rmyP!%y>`@REo{@;B>r3z{hv8+c{ zt+x@tl>h)|I9r|X>BJI*!-(sx!ynnZY2#^4$STi`DfH=t+{Zw)SDFD#A0I&&EE1R> zz{I|EyLue|t57`(7hW z-y*OpdzY|L?V9HHtmh@aPPs3L=4GXrFnSEl8m@{HS{Z=G(({SG?yfXYzb>bBG;-6V zBKjL@7c0%EsI1pi>c0Ok<$mJpy$m{3-Hw2DL^j*oZ00L zvxE*zXebW;{ri6f-u8j|RJTg$&jS~~``=w}!Do2`{=_UrmJkVra%m~%}Sw)Aa{x?N1`ucZ**NVt1ShQ48i>j?!%j5IYn<2 zq9trgtZTRt{YUrzOlbS}HW>9gLENw?CXDVBs9M@StCL*ko!ASaACH!59$OOdX(+)OXROP!lYYyzem*h-=4XCbZ8A|A)Q-Uqllkj2TEv{Jp z#byB>T}A)o50I=;ftp6>x(n;}7Qv9YG+~GEVdDEsM4<*q2rANOHLg86F0v@+jTV-% zTjJ~0_}mU^v6=~YCpYOU+Drr=jxrO39S;-;(qSM{?b`RsU#(%1dgPHV%*86}D%`L( z5N#@}-RCPa)bwuE=2Cm{4(#9hKN%M18b0^IinQ>b$q@5Q&tE)^AG0=n3!n z^ZKLzb2q4#!GN!@cVj7$1R@w+lyR;hno5dg)XfDj`CB>=+Ro5;fLIWV?=X{ejE+`* z)$%M=4vMkg1!cAD0)N!_Tr-{1*7=c^4MVCuAK<8-G<%Tz zYGYYowuE{roWbXZMQ@)AY50w@SAHwPqI4WI2kQaZPB2`YFh=ecGESmkN9vPHeS3|6 z)as@jHA0PO^(vtHsv8Ovn>I3j@n zh@W3An$Z5joS8s|L;fzx4&z_*Zo+OJM^?VCD-lfCci#cHa9)2@f3pe7WhwPa;P~pF zI(28We_u9r(h)0r@%(P`DWrGrJ{xqqUA(ru_``ic*kRX1_6e#ld6kvZwUZhTclkTY zx1uGXRqb>?De z&*`i1hpUL}raM>|BG+6k-=sL~UB1QCEB}el#HnUo@5)99axTMn_Hd?B8Xk0vj^^Sc z&7t~-HJ^=Yw;L>s(n^Lx{@}a*5Ev5+K*p{=H=u3~k0ubzMY)xQ=0u5Ucbt9B%y1v& z`(a}PQFE!_+UYmP&;0=wD7g0>ckcsx>B=5|S2zzAE3~GR(VRX#?t(!4xE5{_{{%k9 z>e#63Sa#vQdz937o6gU+_}QnUB&O>-Vl-2;eOnyHPZt{lZhL*RT9&n|c9t92K6<1|VlRq?9ZjcGGD2S*Ufe)D|&d=X@MVj1fmPQpK@WZG~-QTU7 z6S%U_)f%j6ZWAo~&O^P{(32+#dn#I4Pl>Al+DxIf0Sjqz$8 zCT3h%fXF8%SiVVML)YGA{}tu2#pt~jukYE(iV0`T z5zMCdqZ0d%$PR@1&JjtCLA&gz-?BSYH&yj^K(BNva;kQ6lYHi0tDHfS+tF@0al?G$qE#l*aU9_eF^J%Y>PtBM$rBAb6_Ce z_^80&;^&j3AhG-^4swoGP-EH}Z)e7Hp7Vq+ z%(RCt-q4O~SRB!ad@k~!C~1~?==^OCR_^5{5t~K>->}uQ6j_&@i+Ps@dU*DD9`ZB} zV!Fgu>`&Ib+3X6uUcoalrlM?zzhxuh5ac3vNucrYZY5%WvPEk07W~(tUGX2@LKjN) zjf+OF;pzyXTOWsQH5#(vViegk?pzy@tIuJ9&!$3u7FvohGL~uBBI2v-=<#mv936Un zm80k?a4U9n@H)bUQpjAjXaC{#hLYFsP3iH_F+H1c{3CY5$ek~p$0~komG!+;4UI;= zt$ZpD^WeN`AkHb1tti7Q_UItF+{ibI9Dl=7`+%b=L5f4dUfQed*7pMYh4s}^E1boJ z;nr@yRreRGH<>40a`p$L1k6=vVZ1+iW?gli?(eY%MTyM9JR}k^1KCXh3w9>ckrz0*?zpNOFxHiC0!ku zYPA^FcLv*RBBqA=&vi{}RM8TH{cnrk9);dldxJA~y_ICeY5k(yyjI3QMQ9`P8hpe# zWLo8psPg8*Q$d@~qM6&sZlgjP(Qcjci6GkH^*cpUFOPVTF;&B;pa`-b&p zwAoLCl?wBkfxjd*nu%>Z_XT1ucdVfB1{0HESd{IU^8QgS9dzJ-ar)Fe#PnWdZio(9 zDy3u+q*k7JbBJpiaY?4raA7EdG&6=-N|!Td4$oyv^3J-#PLf`P=|5e~(>KxQ!0X9)gLf9b&qsjV$L~>b+5$o_{M8N3a|_Y5X4Ira8? z8m1=Y)gO-3a*GF4s)j%(FO^;#I-kJ?PQscn5x3q2H>q*^Xw z$b0l9j>6mHS$-jSwJQ=CWwr&T#rC_m#C!CIl8xQKN(`Z-S~wdQN;MHN;ZWT_QT+&W z{=p=RadF4bJW&sK1z+eu{LG%=JQnCIf_PqcsPzYX0X(#FEdRzw(L}~V$Y5w&NhxB6jl`9@Vapl)r1^JtV61Ue~UzH zEAUBQ5hs;FuWHir^Y#xGpGO$nnN0cO^Fe5(_Ko&RMxVrrrQ>PO!n{KZXqc-|#&?$E zMS0`vp2ab8+`FSLopkRo)$%Qp$~$4n_LIybKWDih`JT;6{cZWOYU{2M%z3?A?pd*F zb?m!lm7lxjnvI2JhQh7arZW3-%Ox;R4*ge7IvB_)3y+@CoC|x8^ z;_Ss60}qUkDgM(rwcoZZAC8*TCC*(th6VIDQ!JElR){2Am` zaX9n@zxHtCnQ{6Tktcn`_1tH>Ug0rGOAr>E9U}+ZSuPwy6E5OEpFv+5m@zFW{z871 zM#u&PIisGvGe~|g|=(nJ#Tw7%m=qGW9K&6DaLpXvt-Z#1Gvx0;`e`>K>>gu=} zabYBtgPkYh#9%YO%glYLRrCChU3z%B?ce7-SC{p#r}H2OMbx)xrz)pT`b|XBaFufH zwrKZyk9mrtp;l6)UobLd*q|d*TlqQkk4qI3Jnwjd!r$d(5GO8hWV(l~mIypi^DvML zI&*1bEIlt^Uh%N}*Lx%$Vn6txjC1FVK-4Y82wn3UO%=H%#+^!m?O+dxxXEw|RFjLY zPsM@QF*RoR)B5F$o%b7(yaO{}kC4IC{=|p<1^Fd*_t2eD2y9OM(?StgThRWilWOueB|6>$;K&`gP$BgxS3Hx;U3+ew zQC`fXq*t1I%pbo(KFr#w-8weM$#GS#f*`;0XA8-D9{Y+J%o3sRKuJ7x+JiZmI(E>z zGK0D}+PrhpFHQAllxa1XFpmsrxL9W2b~M}eBxp7sdi{cjE2zC8yoIV6Jj+0iU4AHP z>CpQ;>p4!$p+5UQ?v{Uq$E7=p`u^VBl4jBbNQNHU;F=xtAm;3RgPQJJA%5MiM;EX) zNcD83Hj57byqI6=-qF(Qc4PRDJ71retk#*Mf|9JbScdHMY5nYz71Sp2TBx(wP=jKw zamCd^C~a+7@ar|zD|bkRp7Vlx;~6FEG+?PTPth&o-}&3Z8z)ZI!nv;-6hh+?3wx^4 zETIF@mQ9~Asg2&InM9VSE_#{s{v&40+M(WA_q_`ceWn+t-y@vHZx$ypU6#;V{l<1> zK)cHm+SnW9*}5|U$6lMc_M$@Zy4Q}=2gE!^Jz4(QA#WaN5C|;p5&Md#eMU;#mm-Z| zBnO+os*h05m)}yflb`BZ{n5uyau&aJfNk3ObBa?8ve^6c@?kjbVU?~xQ~-@1nCFP# z2C{<5YNtbc#T`^Ky(EL}R3OUdj44YrGh))eyPXruITTGVS-W; zRQeL;Ra#_R3FF1Q_tfd>da71@{!(bmYdb^N4Sh97w|u*b@Oe4wtB1enJ>t%A1}Lz* zjqDYj8`paij~@!OE_$oSd7Fc%^5!{oGjdZ!)89$wi%Pm}^#!cYtNPbjx_y0LdJ|c& zguutnA@`C$4z6VP$pqhS5uJUx_R1d(S_vrVY93qvk^K-|X^uIzJ?W_}Cph3@HoU_U zCg(om2WO_-q~Y3~-l~7Raj&k3cn$lUEokE`cDBOl0iGZwY+HN*GEf^gTGF0<5?Yh0 zQswLA)!uGT@=^D&JW_x|)_?l8o;p?_PqHk}N}OfpxV-sWMx}JA=w-dxbAf1T_5Y94 zklGa=d~@B9%k-74LXKRTk`~mB0l0jBe21z1(9=!&cZp|{LO&C>3kARBkJ)K@>9a7b zdm^uyC!yQ0@&}~dU(D&pUGhK??((vzS4I@WavM+aQLaMMfk2SlZa1y;(y_r&xx=8L zk4I-2!b0ztM5yl;U%zpAKhKwiWqtB^g^NT zYDSY{g>M`yX9sIi@85rYCUiEd&zduqYCVlvX8wC^DsuOMN4_{8!U zzwjeru@wo|h*d4x+U(~pBZ@{F=;E0E>u~o}{pzNnJ1dlSjP9?f69UucEMdbQ*diJ( zR?gM1n!8=@`l8djkM;@_s>T%5u9GAAqqG{bD<|io&ToJ|vT+BqkOZrpsezj^c}zV7 z&5ze>Ipf^cGzW<3U9o||Ba_G^E!^Pzr}og2p)4hDu)yv(cy4n(I$J3}ABl4?;cE~_ zs#B_6K6r-YTW_tnAFQ5TzII|DV9(AT?fv$S!>~psUR(90Ww`MO6T7I=sACIk(j&_4 zh~>{}d*S1Mm;+gaetRV2x#(a&R6<5soZwOv-Bqg8v{GNBPTwRis3XgMoz0jtjBW1R z_j6){JP%mJBHX(XV+l#edn=eie~#4Oh&wAOZdKJ{k>W{I4A13QnD)xfoxyXBsDUAsI%x_Sa?9MzHiCrnh(}b+5V#f1W zJBa6^?o1;Ozq45!czagNct2YV*BIyVc_vrB6Uxz9DT@g8f`&6nbKaI0F=e%sj|&~K zY492vx}YbRzOUwLnOAF&Kdk{cpjvoYNj1+gG`2^Atp$ zv0;ae3J3AyZyQh-uz4&>vuVcecR*F!}lIs(p^{k8{o^; zF;UaSclF;j*3DZPdd#zD=@eTug`IYG=T_#=lD5GqvDENq5dVK}pvQampN2+g$!^n;^?xyQbmg_PZKZsYZVx^*0 z3^H(aZ*!CBZzB6xs~@cDu%{O8yx%c;RgkaHzF&QY^^(}nTXes(1xt`#G93$j?lOi* zKWzapset{@6;GdaoSIR7u|;`AL+PkE-|owjXM80W&Xy_zen3iG>@xJ2_+8uKFg8E8j!>Nw005aYmJmTd=1mW|2l_~Kc3#Ehg3=WnV zHc`vYS9rGTHDjD|S%Y0~8*?8NRSe{h7}$r~?dFDfi}_88(Qw_qX#XoKl=$bPdfuqXo%c7V)%Li@alDIScDT7e<-Y9XfyWnl* z4+py3J&TK#YMA4L(~_)~Qx4yhZYs4|J4v2pi0;6B`uOB}fnmBlCGI52Fj=8VkT(Z6 z8=D4gw~w!kIoe|%-0CK-xn`xemz@ZMdGA~_pGO4>=FC$n9;&?i;dq8Cwwj;WQ;tx_ zg5@GHjrt;ZGm_M7IGHfBUOWg7X-6U@aFtZ3?YLtZg|NV|v$Z(L&Wi1p8f$M!Rss5h1)d#Z5z4h?!e zeSJ(N1sYN(QvB0UbE@1(I%X=9!Zb1ho_mZi`S?spmpU{<_T^|<7X4gR>I znd2wK*briGk4}>us8p^)+K*skKOT5M64S1TDqnxwqWXBuVMH-uZC1#313l;)WY?y8 ztb=0t#_)N0n4Cf01ItC(p=sz3*$f zVzbS&N?ayOLf)9t`zZ&COxEc8MV9s|@mV56I@FNxWCklw_phiA-$A#Z9Gl~QVn6a8 z%|nDf8#f2teSQDsjr){tae&ZF;aP!!hlpx!XLF)AMaUNj4jW;s{*M^m~KIp&Ni6_=!^_51Y_%m7w=*9O9Z zXl70TR2d+Y(@H@)p}U)Rf}BszRf^^qw)pLj{$QUw`!P2xDrq=Zmq}n>0DSKz@Bd-! zt)rq|-?nc76$EJ!X<-OKflYTv3?(2)iG)hGbPgpF%1{#0N=SD(q=9tT&?q%Sjx-Dm zycheu?{_`#`t4`m_n$7;V$HX%>pYL+bDUQ%r9RVSea+{vPQ31Sk+1T?BPf*1T*fN- zOp6-TA4eXvg2`~7yQq2ADRJ;q`B!Y!0p}A=^kp}T>@@n#Ojm@rhhfKe)-@b~x z2rrXVMLqnXAGl}&S%aOuuDvZOdi5@c%+)`Qk+19~b6P%Ii>-ZSEodTV;iXP_kn%jQ zQoEI%cA+^Tz6K?cv&!ml-v>ETb&Msn$G&o;k{9+LH^$@XrL1BeYRrWQvQTauq}3&{ zj#_smzmKOn_!Z+!HWb)I>W2?&L;OhwBA z-a+;9o%E)D>E%aZ9#CRW)4{i`(_FJ9pmz~`F|0c$KMcx0&B0hr(hoIn$L%#zzWoqk zYC-U?9>2%OO+jP^mFjYx5o!(21F!Fb!GK>;bf6yOGC*Oq%jt+NHtTX-W+mhde zcZ1?7wZ-*)befPk=Cx?04#A*OW=EN@-<&1st1*v@hyS~R;>ljMUR*9z*z#UZHmfGQ zi%Hru+@#B==%AoY>En{5cZ5Wz(#<6sip{vx0?eH5T55$0;%UO4-J&qiU&P=diYFt) zy;@REm=B6kPE$PogIuaJ^8|Y>v5`)yFY=f=eePPsnzXP1+s2@3eVVi5YLpZ(QJ93n zoEECyw>Mc6Fx70FL>8B$pQyYMx5Rc(cZ%>Z<9Vx%0N53uVZU!GgB9Q#PJg zI)p$}3=?=y`aX4kxP4mr_QI zg&5r(EQ4}IGcC`)b5sj)8uMAV>J`CHLgiI(J3ulJPLkX{9W?Jji%jYT7y5hSGu8F$ zTrjPjUTm;%?3;bLUDy8_S^EA@qGji2l75Q2n7Z~a%3jmu}-h%-v^|J`z#C(h2QbT3a}Bv;W-flSd4n#bud?U<30ke+W5>%aRL zGO=;BE}>D=*nz#WDc5XNG!4oi@|BYGrcT?zKDXvz%=Ady9`tkCkA2eW+u&e(x2GGm zieDAjdRkkjVx!HJlsdXTJLsN30!#z1IC?hgBpXTMojGrkePc9(f2YTj>NBE zWX@5lO6xREV9b4Xt+P)BUiE_qkB}P3_Vb&Q%MH9Mve?jmqR6aH5i}PTeiGIdamT#b zAqASM7`|j&n+qH0ouEfYB)s=%#h>vSJ`r>eHD05b;v@-OQ|vhv!#;QsO|gHFHl1}t z={T41iaj#d#iu^rIndPSi?x(IuWw#ZXTXHhG!#He)b4UGR~gF|Vo+NzJ9-zKR*&b~ zO8$25Jpa8Ur9rE{WAfTAg}N!`K*l}0!N)JG5Ur4>&vCC7{5cHDXlk?i~ zPrRM&*S)*8+$*xwfjVD*I-^`%BkxVKrrJcdemz0v0ObhHuDbBDX0wVoBu+OC;t zKPJ%$qku(s*=5jXxjnrm#)gJpg(kY4jjFiq8y9CqoHJ``jPEEkX89lV4HM=ycESdv zzvQAe-@c1y8rJdaFKTMgn_OfhvagLTT>qeQq|Z0A%KbD32xD70+tN9O+Ow*ofuBg5 zL5)h=Y4nmsE)F#H%YTwI{8&_X6uVQFCl5-D6`A%7ADcRtlCILazd>|<88Y9e96oW* zem(mj6Sah_kT|#jYyIpVwIkkZ`Gl4c`H6p0FXTMe`79)FkDj#^HTyL4Su~x~^S(Rj z8!f}P=YQ;li2N`~mH6iFPRAf_qILv1x5q zF0?rBE>8NrGlC1{!vYW7+Ev|vyvR}DvvtiW(VS! z8Rr@^(1Ap6I2Fjw)*n6O@Ha~~bJ+Grp37n_tMPyNGsd0UQd{6Ap$6afk}TdSsa#~v zcrt5;>}5J_>}}y=^Y%7`>lZ4t4O-6^H%fe;PBU*iJj-RA;kU#B4)M_T~MW&Cgyq^-j7}dRv+Qbwi8CpX1A5eNFiZ zuD8L_qn}i57MM2BVqztySq4`%v#~qnJ^dpQa-NTYZGE{&a+gE4$@#~eqcZ~RTif=h z2j?&v*uA=qV~!(Sn(yhzq4b(J)5TU}=6jB(zKGr5KO!)=>?fdW82z8RhD>s$ErlFy zbB3I{yq16sdwOrB++4DQ^LHqbpJF+kZ4pLiRCHLwgC9FBPZD>t{rG1)iza+uM8D;G zu(2nC^Uw@2|A0NQiB7+)Y(@T61^`SAgtP+YQ&3bQmK~i4>Qy`JA=OH;8iGe8->!38 z(CUPzOa-ntxzIEyElwD4{jx`0cK`RK0Sw_Dj)|Q8Qb2BHsuVT`7Meg_gNHqO#jI95 z`YGYOQeB6ILNN}l-fh0G$c}FY%wZ({Hk)7nE9#LW?=2ITBeOf@4 z+n&Z=9UWaE8ni2YxEcD87!S<UBg?NDW?{NH!> zm+#<}OCR~)B@5zx3_t$gkN5H~ccsYxn-y?xh}(tR<>cmBUbbGtzTs@|9s2cD@ReKT%^O+Vpc#D6(d4CZHW~rmO!>Gcm(LLMN&dni z|?(XjRlnOJ6fhyBIg)Et% zPZt%MM67a>|L_=$o_>_-by9r==SlIVy4Z~0Z1XWQ*qpnxCwc&JV+CYRK_CpL*4x7$ zJ*`p)0&dcZ|549;yStk#?u}VQTG2Vo$Wk5oOYRMzM5 z`qjF`^#ghhAPy`(6H^Tz`~YN+x#Z=|o1Gm*%x~PuK70qur1HI?3*-5=AbwhYj^6T0 zoS^q_!Bhd8PkmW!O0mB0lDp4-_U4-BveJXa+|t-bimmBbH`*cDN!J4)IJ?OtaZ>+h7fk8c^1T*)K&PO9{ zG=cX`pMp`K{oaXXx=${$?k(vnsy8+p;s;3??CXDPb=2|mz}V{_QIDsy>cCGb;DA=pX!G3Y#c3ls!{5?wR%=KW?d!>(s@jQz5xTkMBYSz zW?lB%&}xQn5r#_nidiahjRi-xQ)RJZF7sO0n9O?x+w%$OyT6-yRqrzuJ_}OZwFF$^ zNa+*u8;+w-)4VqM@XDmR!+vUTV81cZpg-5k#D13`{I4bd92uIpDds$%yi%f=_p(lM z*FlY++q5VgS6Hqh(In6RY-;elCKf|`|CxUAgyX%IQ}XveRAMfEws3{Txd1o#KVUTj z8nktDBoqqYgQ2MNPb-Hn$xWcG*u{`5l#DyGAEedm6vagDhx1CRmO**jn+z2F$K3Q! z0Ft@mGOG?9$l?Ne=<;kyL0Z;a-W3%;Z>0td*j@k`RTzBHaB-}E+1}*Z6}cHM$HsD? zwlMaUv_{@@fy|bz%vwkZ^HUCYgXihCy+th7vM{SQCo$e9gWbqh4RexWQ_Qvr%KsNE zZ$^bPc#1*vvVjqF_yJ9A6;%S%66+2AtbiSi;zK8?!LnA2ASZG|ZXDVwyo+fql`}Xo z{R~zzA1W5vfT1P#_6{yvFUGuU7b9NXZS{O{=!oyJQ7)NK-DVU0q!sbIV{)FqGN@Kc z)Z|C&t2r&-o3wakYCI%5`Tb9?{W?A_eA%AoKwytnO@1RrccNGOr-bZ&scy}uOOBM2 z*OU*)xAFRfWL=x2>6U-S)`lS#eE?Z@A)FQNo1=n&bhbKVsH*u{e}hg z^OT#M-6VMoMuY^v+zN|h0p#+37~iElL;dlb5|={38*#SAyA2wK`$>`yd9B(@5j_1m z6^um_gR^ZAmGaN3whGM;=Ib<`G+Y9X4mKCMrJ>Lqq{FlUC+{=Xok8ZJ3>BVNc_gvT zshllP_$8-|4Y7}>G8-xM>b|_plYJ-7BR@9a}*u6Fc@Nsv--~ zrSEPQ^VTTCdwm-WOcc`8nr~$VlJJCVj#A++LF+z1)B`ot2Wh~n% z1x}Yc-6_@SaY$h7(O-d(G1Jc1=TieGKF_25%6p-~p;-I$_ukWneV!xfNaLk*z>!g% zE{8Z9yviamL~N<JpYu79gpl*+`+>dfco%{%D zazToQ5yjh8kJN$9Par+67A`{RNN44{!y7ds4l&lf2*~GJTF^Bu<5Qu&<&{AeB?YtU^ zb%>TAh83#ENxfL+5x8RCV#^*Kzn)3<7gtS%!H!-a7K2B>;;r*b&Bd&HidM9UF`0rN zd}-tKn;MEgJS@H@KjB&#T47IWO_~2pd(WHX?IiTAd)M($jcc{2v`KP!cn_ees6cPu z6QHyJWDyu{t{G*mHZp^x^4(};Y;{v(({-|tPEKA|g~j^q$NfH@0_LL?FbEG1fX^mF zi2G~ncfi@rqCXAFnG;n`;$Dx$I6snRI9#pSz-Ge^RZ*hSKSevygcBrthgE^FQ%9skl&_CAnOWn#jacSk#GKFK7p3{uPlIX+y(YKVn*?l(%xkL-`naD~xnx_* zOa=(*l5ubq#dS7698sA;o-fUsCV{TQW4`qWGj8sCx#>w$c42m&SgT&J=H?r=y%@3i zN>pI+WuHM<_c|#97eRRR1jZ?13q~~GN}$qJIZUlzYh!60i23bv(;G9Fl7AnmUP3k} z@`Q3d3*fdX4Jw6-wdC}o24>9x2l}bkiCFV00Y~{CQ3Y^tY?yeS09*BI!wO3Ng+|>R zNBszS7qGj%)yV6Hh6%8}hs%o%4^wne)KfIajb3_Hz;M#*T7-2?6x}z}$gZNkY`+%u zTgnrQ^c3YD^BN*P>y?c^R))=(5#*U-LU`U$j>A=*iH^u{;kI&dhb_J+Gpc64vJC$d zy`T0#t=^QwaKmT3lafvkCD=Y`)(S0e#Mueu_x_@s)_Od{H&Usua>I69Cl}@Fw84zC z?3;a44Kz44pA)^@UIA;Qs#9$X=4H-=FGk>Hv2P44bRk`PwIy^ON;;ME?ige#wJ4py{qn`oZZ7Mi}CEgpe*n#yeZsn`6F;<^tN{ zezD9Ib<5!A%YIsbbv#N0Ue4O-2NILfstXFu-ZnmIlN{#RVWPm!>6zTwDqp<4a`#z> zV6)hR@8N_@4bV7LclqQUCv9Z$(G|P-{FFzgRqEGdM4vt~uhH^@Gjd&G>(-h6>hELb zJRdpvk;Z-cCgkakC#v>wyV0G!F*SuGmEX$7v38$PLTd&Zl;+VTw+%8bYuE9VmiXrp z8sU#JKkdEV6X5bWtkl8Zk|?M=TD~-i7NeAYcJzi7)vy;T6BZfNd^#R?+7!1RBTXVq}JEao{7vC2`8)lN6ayuf3Tj78IshH*Ws~ABT2;? zsXc+&x6pB$$1~MV1zFYBbDTJ7`pZ`~(BmJ>s7f%Vp~4vi(=*Ij|- zJ$!d4XtQJuKNHnK^Azk=GwB|`T)nRr;8c;aJpxl$BMNZe4Rlwxn_Q^AiWUq=rvB zt~|>ZCmM7o`L@?iP!(1OG;U05-(5e#oeH#z!k~Hq-Miz$yDc6+*Cl0Vn=BFbyAC^V zcc1ON)s?Dz^VW;V*rcRrY|D-IJMBWJY%6~aaJ|+KLieXZl~`*Ynb&z_%fh`WpoK{z z)tgpi%!ZxcGxzsa67FH3x@bE$GkFVGM2q%_K9YLpl>8>eeAftPNwE*qv$;x$;zk4> zD(Rs3lZA4-?{b+iolwxH7!r$z*{`w?*Qc)hMFO$T7rtq| zh|Si}0Jx9kbg>9M+}Xe0$qp@pyF}xB*tiWxEq|tw>dF-+of$M%C++~5r1`8Beb0Cz zSiAEmV6hfefWs z#%1R$?;<~b@Hrs zif@N5A|{T*?|OG{ZoH($oL>^kTUj`bZtb_GpH8H|Qd@4h6x#snLCFN!&_<8n z)JPomn6MbFEa^X{q0;XZeJy@kmAB0nr3L>ks-u5LBUN3L6=PcSsUA-!*8g|mqM`Y9 zt+daSi+9LHS?+|y+;dkdRrCYMKwE-~Y0*MX%b3H2RwrC?pJMNhH=-v{_ghnPk9!8P z(I$va+9^CbP0BpC&Xp`oX!XZ_S*W*@42#IxC3ywn1=HYQ-FjxDULYtrv@edu3iKCQ3I}xS#~WI?13b-9Su!4JM@!QWUjS z_fD6$0W3(^Sz%s*O;;*fT$9EOgoe2>P9^y`4wW4@{kpuqM$%_1!%JKV>FK8}5lcFE zcd%za@8{X3^5_=lV7RXNfper5w+zjbE6C!XHDJ`Wv<8m0Wm&@lsQ+nADV9g>tlrH( zCWH%Oq?{ARh;7TcCs;XIm03R!%y=a0xUV{d@$1?^wvIybNO)xVTVQ25jCQR%_H04$ zLS^>7_1A<4#$9&Vk|EQwvdiINZ*D5T#i(hd^a8-8E=$7x#bxd-zJua(+z50%cV4pH z3AehnAKa`=yj!jawGR{8j`CZrQ4lReD=Uec?XdEfr?+}#hAAm^HAWJpR(WL}7J22~ z<|!NoTj)bUTenJL_r7;(3o*hgTc@NGNmH)E<7p#&k!+u(u};}X!mZiLFEra zlu5b?A{~ zg{wBRZNEotNEZw;TV-uj!Th7M3#1mUzAxsdRm*(zx6wp3Pa z$~rjOscT#Rl)URxuNu!oe#_>uu9tZ@(JlHD$D9!F4kZU+;hc#RN1Ff z^Eo#%*qq@4u;z%shkinOQ?seTi9l3VFMa>H6+TmV&gJdxVBLxf%o+0 zp{eSaMCnXkT{%rhxB%O=b0Dx?#(Wb%{vz;WxTG%9qWJ^KY&O2klZzS8|56*dh*+5+ z_U0{GDXfr=jW!)<9B}mcpCLZ?%zgM07O<7zQp0z5ds8Cymh`iAQTtDJ)27G{35H;o zO!+8jnxAW6N4fP+I-BXoTuxvGD>`bK)hnFQi`L{r`SqV}7%P^u!9~fGOd+14Y_Y6W zGl%pab&zp24BCu_ltB{rf5gu-?at=;t7JMTania|qAyjMPBtDd)?ol}t^P1l`nmMu zDN(?fvz+@yOuKYzh1~*c<<8r*1=XVR1F?A7T5Cl*VXH=Uui2&eNOg~91OlnUWw!K?z}=qnW4HtTH+bQ()r%L^0QI~f;id%He7|60KYeUd=oEOA9CO2N zW!O9qdgL-|EXpXyi4rnHPu`7XO)n@l%C8%Ur)L^o_xU-iD2tH^(h}p4_px}5Z=aMq zAU1Jj>m>xQBVugjeR5gcdv9mk8C4k;KT)ljzjO|KlzBYHd^%xH)faPZj3F^yLVe?a zW%p#R>Y&&&dL0L$Y$Ow55Pc#Lvqzb_;5+n6A~7RxFZLkxE=JDvt+nh|-<8cl!-zmd z%cUI)V-_a6`FJSHAo|m?2B^j1Sr%C&(2tkmskHW3tM8t{M3`f8eWu@9o7m)Ehuk6M zbdQS162mp8ZTq*z9PCb}ITox8QmRSI?R?Sn)sy!R#hO?g=iWar=iah+8(BvhG9`EwLu~->M<84#y6kd*)fBd>pJ1)fGhLC)<5+$bpJ2vg z7q7*rGYZ;5ofG@3l9pvq*ESgMj8^tUmo18DA6h15S1T4)ymYo1dQEa!MplX3c3cgl zGRE@~3fZw5@ajzdAi z`mna#rt-pHt8@;E?9waMxfc|ONF^1&lQ3Fs_QM^5s6Zd>8F^Ee+6eUF+)h8BZ>oc`SuT$-tsR-GK35quVi)G zEiCXlqJ=l1Sc_;MEd}aD&#lK6%tib0X3XgXl~Gqh^Inw12>Q+A&(*$~ktJM}Ul1_M zn-g;fJUL)wcBHFo7Suc(n;)gh8Wv+k;u5lp8sI^4f5g;}WM6YQVjlXQEw3Fhhju35 zwlhss8y{>n9mX%H>nHE>;WGtk|8j}*GWF}7CVjTNjU$Y4K%|EJ-}L-*ojl08#NiGs zsyX%Z$ZfXz!O1A9$?|uB_lVa>ql#ZnWN9%`jgIY>Q;+?fz+9WvBtCKhoS~7cjBW$u zK)OP{V%z4jfk&VSVoWPpjd(dN*J zj6ihXdpb63;lrla>v;MoeaS-LwJY@==ogaaUlwQp92$QRc@9=rr+r}q-V!{oW~{z5-w+w>X7we48n@0?dv-AhG8Upz0bjK`zIKHO@wO;78oi*6XW zCQ2t=OL74ePl+(;k^Uu`RMN*K%v5HmuWKjmuSUXsi$NSEEg=&Fxnk5IfV3y z(ZH#r43Nj&eF288t1^%bB_h3lC+WnV* zSgCLGCxKp6B!TXrG(KTQ3HC7XHt*A?4q=MA0CiDIm~S3AYz4vRga&|TRbzkQ!P!)p z+%sG{Lj5zpq<*IChn6cG8tm^F7MV&_<`bVw!k?|(XX|$mu`lDK4CrtK=4tfd0-&Mn^VlM6q5h(X4G0Jw#24K+ zu*15luEpZR;EEp=1tG-#K#{EmS@}%<$UpZb>fv}&FLy~iloBEO((7#y{COo?2r=VJ zKahe*qr0NBz%$evBoz{~H|+elsoeNA^G3wpBbLhBs8RF6d!5IRva2|a2$f11K*1i+ z9D6AIvP_qBZZkM-UFQg6E0>vVxPS6%vQcKmx}My+pWj-O`_Dg5^8o;JQQ1a(MqcGJh*W~Gmk0$6Hu%~g}OSN!xkb+n)Sfao%z zkhVigjbwC1lw;hH#RIq%Yingqp_iELjtrw$ayjqQy<+7l{`%kdLz$|$z4MkZq5~W zE|`i5eW&K>!()V*Or@bD!%PX`N?2$(e)MBoF48c+#~PQ{FeY z*e*bHE4unTH$?ZS=y&6{&Xmk5Xe{+w43(LNwWZ7pGa zx&HO{0+2-e8s(H|SzWHm{Jxu0AMJKsnMbytt$3$iN=J6$8W;yVq*eQ5_ae)X$wlTX zO9T;rU)lP!%pMi!p}ioa`>et>VVfeg5D=4t%t@n# z3#3osbTx0PFQE znl>%l8W-1J^Mw~~0P>L>O5g`3eftPi@R;=uOU9|;pcpTCE9OsEB;EfzrSEb zaNHt4n1o1gu-%v2E{n&RiFgoP6&025YnlLq638_o`75tWt{3Hk5U^s$)si!^zbmZN zh*;*{4qmA|i-uO+j$ZAaX|W9nlKli4SbpH+`>8TPQ5kJ<`z=k5H+FY-*<~P#90*V} zbK75>=IQ-hZ@dj09o=u1zpSr=dki-Bf6{c>QEQ;AsXwHXQoB?`J-_KZ^WXm5PfzEZ zmmlxBYOHj;csj{-RL3XYes7saR$7_Kwbm8wmOyNjF0bv)52AwL@*fOEl)U1={`m#X#VyW57I5XMH-Wg?CKNWhe(G8?tRfi~h|W6e_QMB5(~0qs-g@Sp)T^*4OQw za*t8BVLz{j>A2IP_abEN{jes_-um_RCO?VS1%rV)O+I?bWIeN_kiU)(lf48F+AU;% zJZg^1(?J)O!Qlqw_$@|L#Uss5h7z{|^_b;+vEV*(YpHbFU&Znt!ryV+KUVEMoLl+W zYy7w9{!e*NV0%%%fMdsB7igt`b&zqF!R?ltmqFKcf4}Vqnhh}E@3Gx^NvBK8J%41X zns}M=1jAg$Z*8}F)`g3=i|5r&$Or8i*JsHdNQGP??a<;}nG6zN_?{ey7$|>CPu!0y z1D==~Mu3{Ju8Y+w{(H-4@QZ54L1r29YUZV{J`{G$SqTsPsi^e=F#r<8(GEK3$zB!3 z$^>*UYHGwDK1MNB;FU@C08@EIp@ZaG=Z_EBg@oRg!!ema!_0q+j-^Cv>U~r(X~|h? za=>r}9;#gP+o{&iS37mC-s-cHI9>FgkiS^MXM%kVAkPrivU?3Wq=yZ?gc{!=w!TG0kFS5`AFs%+dth6N~$RT-JvSVCI5>+9L?WDII_sv zH{Kamu=`Bl!`+}^H6`*F`AQsiqeUs~1t#NNw!5f`sNcIudYYN$`A`|$=`Uo0*+{Dc z3nHPX?rxY5-#@j3njaZ{M;oIe!#2RlZ4bq+$onaRm4u>U^4_b}Z%#B9UpjwAr||T0Juu_Mb!aDpu&#Q;i(ISy z=4;ic*{6ua17jd4fgNC|+e`5sW2dPpyKgU}o3O zlDU|ltId#a^S%fv*W4hJ*~h@M-x)3&Qz%IPUrb)g9T@9geyJQddont+F!a`1C9B!a zIuJ5zw}-VG$yss}VAwQIV;jHC(4T?0^l!=gWldwA4 ze^S&%f+1pl(RWHLf;X8#JP6o0O3K2zp_lQW(XyjE0?>_bAfV6Y|E+#&1YqzxhYo)P zJWI8i?1q{%p^AhRX7?eezLfeF!u11+!($3M_mIeg%S@*6(PgqFVXlb-%neWrz&%3k z#gcfiIJwWS@*2OEIUuA)M}AicqBfI`FDuZp=eYn=w2<|^`sGCxq-hN)fZ1PP4F~Ll zDoBcW)?uykAqhk}|I^duF45 z>Y2d+DZ(%=C6C$B2r9Sb$euM&R7ZLDU&nqEzA6^RGt#IyyVwGfIqFtzSRmoXetsUI z%DbWe!}TsqB4;8K6XL5peFP?1sJ$nf+cyqCJB@rYtYFAD#_s*aTuPExMLGFd>x<$?m-*u1BZ{TC zbMc_BVfa_E<#VF0X640)EVxZD)?mVG5F8N2GI4HkCeGp>CBV0^M;9`WD3Iks3z=2D zcxh--8l(1P03Zb^fc zC@AW`>4)Z$Vf%dFJZZKRY|Fb~F zWQHfXI206k(1i9o`x^dI*1|B;wF=5ZZ8%4IYYFe?XC>k_G}h3`v~M5J!0>{#+ak5TXR@=3u*is9fN#9+@)Z`{b=AwJJA# zrxoj-Q(GnM?)V1BR)=O1;+m<(`EngqJmOulnq39Gpwnsq!iW3md`r;a-yh{6@sktmSLzPEb7oNk%I);n=&Ebz+<`F5SlCR_;L#_`N zYE*zLa~q6e0G=H}uY~DiQ8UPE7tMN>xjSv=dyWA$5`G8*qJp+P9)Hgs^jF-4z{Saw zax5HuDrPEm1RXmZB{BlkP~WjriPcMEh}aKxYdi9a3eKZB zb`M};ahK=_7@#;^abIhY7bKtCgoPj33)|*UE`WJ~cBWo=6S0A>keowXIk1C}*OFv? zuKmH*x@B4rI#F112Ex0Sb7-$xzt%<4)uiU?M<$sz=eQWUJ^$5nrn%ZU^N%*R9U*+L zRcy^QvoEWGmZ%$&oUp@93RI%k^W|oy_qWS*N^t6i~d`rHVXx*33f9bsh=GcXJ<^pR9B_*`ZS>99e=qLY*=?WFL zB$VB>f@WPH=c)JMh*82|qfBv3@h^rOXBK13WdTZoP%hgR?IT(-4&o5q9$%9=c*=+wjx*XC54TY@BO!2v}b}eN|4>it8 z))TOFMkb=}EOjh(S}l&OOw$4<FSvFb#j<_^$Sn~jW3uEMu(4~;mochu(QzQkc?VhvrVmeo@%0{HIDdr1y~Y-|Hs2SA2;pII+jz+lH}Vx0E_uc znbN;ivkyepO0l_6vGrgTx#kiDvBh;7I0czTWJ;yGjea2;{T+!^M`)!e?F-{MsD|Hl~#sj1zis!$yQ2+ukoM0qR&- z07ee_vaNT_V;`__17aN{bo`#t#}YZU!zpt+u99u45it^7-WV{0;&bQehu1RToK5kT zi35{;JVB}TZ>FXtk4p`|KV=f?2m-(^q}U9y!ZJ6C5OI&*t5myU_d64Utum{xi*(P3 zJ%x-gJKe4&0|OY{hYUw;qVe2wHWuAvSMRUj7&0Mw9-Y(ea{lZnGnsK$)|bp+JW3?d z{!1%Id?wFL24RLd|_Bqv(UZO zbhNC#E~3`rWlF_wmfSTeKvgfNP`@?LC8a>#m7M8sWz}VnN+GR%9iH|;vGY;VCyURp z)ek(1Q0*j2YU{4$R1&KLtW&l7AnO!!qq*0X3_Br2OI6`zf{A7mtD)}b^1$3_LVP^; z)YQ~2D?g^BV?%noPt3(~AT(c>zc4@9VyB4dZVMqejUch)q`ZdBTxdHZ!=$@sAQ_xR z+ZWtNiFJ;V0K)({`Is7L#9|)5-D~ zN$%faCr$TGW+s4kS5}Q${y}q7N!vt~&ebZ`Z%-F&InA_~&&V-R^Q)yi+0XJ3Ws&uJ zfRI3#%b1mvi?A-Ag2?xOxBL^U&n~o~^MvuU&C+FJ;gW``nc)`#13f(n4KDLt>0+t7 zoI+0og#_7!WK0D|%r!bTkO}AONjM+wHU9pc?_SOKe*J|>b$88dA+1eGje*R0Wj~sc zalI&QaH-=*Q)7>0xm4WT+&RQBuP4^A$$x?tr3pZ=q%y<7$QgN>ju2$HpV4V6YV?co+1QB%&8k#R zF1xU-mO>0;JeVHQ1ClLzSqxLz$5;d-!cSS~#@%aj_Bo*S^OEVg@_Y}^z9eWJ@u&6@ zqjGRI>O93Pw55o-Ec9&b-}K$tO_KJ-nrzPp-7_3@R$u&SDdE4JlOaugf1_bDLHWLd z<REA z;Rwn1`r!q;`PpL2tJ7C~{h*&^8ML!o;v#_CFy~LMXQc9z6AgX)`gf=2-j9T&jf0ar zVxHw58)CY~-fI;OQK%nnuKwIxrrPI&gDWdRXZ`}<8r*$l|1@7-PSAxJ^n6eo{0Gk4 z?xgJ^_e<8Zyyk2$9{OQg9fp@z>frq<)2V7hAVjZY(6m_{gYZ#~bX;gL&#|Chb_Abe zb7GF}#W}#+Z3vcp(vwyST`xG?m%9h?{^O-TkG*=1Jk-=Gm)6!!A&h0|?U(XqKUmjC zBqp*)-MB%;!o)Eg&$T=jPbA@r{>Zq{U>Fm=mGCEXX8G$xe|6C4b%{y=C9+cU`=^Q% zU9EK`mY8*#YMXJvshW|%UmN4SR+zM;YL_`48O&F#r(dR7n`ccJW|mLohga_o&i_D` zD^^KWZ}~=4tRy6AXUA>l`!z&D0vpn0HcsjY)0=BExH6vJkbr|saoo)Qx=mVI~^pUTFItDWA_+S>P@HJX63{*R*IJDf=^*uA5jeNp7>vz+jGa4 zS;(-J;&TdE4?vzu)LCqd7NDL$*5!m~PX;f(7-Xk4@nz`i7v2i-E#XaUIOtwqR7dz50i6qY7sA=dwUb!err4Sw#pgM~Z?!Xb&!@gNi|uRrD=gH~dT2K0*6GmJ+FIaw z%D4+7H;6n<-3#qJzb^3J)M+S^T^DtDQe``R{a|cnG5dD-pZf$6s`14%ponk(t?XTObGKBiUnX~J5c57BK=~s$_YN| zDcC@#?*DQasUzjZ-YzE@Z`>N{C!V0T{^mPp;8mI3;&Y9hSx(U;0DpI{ckub$E2ivJ zxSKcRX}PI_%?LQaKZ{ebX@tst`(P|iL}INlI|m1=EZ^;6%HNSb%+Y@ZnTN^xhM|ry zY?CO?(3T3;u3mzWELuvRod;)wSzmK42wiP1_)He6Ze(pcf2o|fQNZN%YSx;LjNd#G z_ipw1VDs9fgo9wcc6zYWlaA-T?eUYs&f=oc^q~ik>n~m($UEMVy|NK;(Amfet8#wj z@`ZH$nplZhvEkcqEmh8{ETs(7v9Y;JYtpho`xMTx({rL$59&43gENJ=ECy%SCfi<# zlJTa;=9Z)^=HYlUJnK615BR<`S`j#JPrvmiJo?og^+P)OqlOKolEvPx(l1i}t8<4P zd;Z=OyT`0%$1;jOkMHJ~HOo8d-J+tR`jcj|lbYIv>mx9EdZhl`e>~}mM||O-+7-VQ zDLW4P1x5<_0*}MQggL);$J!CQSZm$`i7wM}hcQYVH2QV#JkIEeQCn69YMtI`%Co%4 z<~w&lQTW-X^!bc|)-V38qG94g$~kE`Ms4TK#4%wnGCAMd!5W6nujm~^a}t^T2VOFG zy+2|S4Z&l7*n6>;B6;2rSi;67ArTtnPzYb3xBqAY*4?J*Y=v@?dKPhB4eU{HhE`za~g{2FG~@m zy$fqM{6hlHUl7CmYERY3aD9$To-?YRzP41rue9)qdZ-FT5k9d@Re-QT9?PX2udryI z892huhCgh7vUfV0Qlf36EhjbRzuMjA2&+|Q5*eTV=vBCtGFkMER3o|t1F%dhn>PtV)Z;|;qsHpfgEnr&+6 z%O92JMhgujvyC5~mlZLa%+v?JGk}QOi3aC(w5_O=Eba_yN4`Xk78-rA7Yj*$s8K31 z-kHY7X*60O^y3U}5n-_xtu|R@DSJ3I^9vpBDc)p5Tb?ERrU_XA`86ff-qHStfFZx? zBEg@7+)dvQA3XYLEn?Zo36; zQ<=36O_n>Up0CT6(%34^M)l^suj?iAog6&7diBk(F+}gpUT%HK{<(#I(zmNs%Z!Fe zr|0?`xv!-6)yutVm=!DgCXzO4pCCf>mXRw1xvK0`Fzx@}+7gJR`lWtHj6;ZexT=bX znCL6DdT!teRdX!Mw>lZAUv=H2hNe!gcH?XrW`7Z=SVwox-1|CN2?~uq+Q83tz10EbYuj4I=j+tpTR&3oAf%c-tLUSk>P@DhO@ZR zVV7`o?B4lurAu+Ud9kg5@mP_3qFdI8^>2|xhvM=J!XxFi6ekOPb0^}{*2drb#jRqv z_np=n7Guu%Qn=Mhv9Yk+D83Bdn^m732unA{Z!i#gbWXg$RXX%hFn*Ax@3hhGK>Vz6 zopPotFZT>aPLO_Sb)j|6k`8Y&l>W0nZ+eyRI-4jT^Z&!vS1?5N?d{S?Bi$h?0#ecq zDxfF>h)9=6H$x8H3IZYxGk~OYcY}22&<#U349(qm-gDmbzxVn9WV2c8x1L-(CqYx+ zaZomf1z4dfyHO}7J=ne^6_$h{a08;Qx54Tf56<)&aFYsVc+IXqZcxRiXU0CP>mN_t zcKE^9V2&rTL9NMSrN6orv`fjotmXRby7Ysk;@t7i zx7j=|8iJKdzzZtQvmj^e$Tc#M9z8Tn^57QDW8Kdg$MS^d07Ynd+MT=JT8~`@Pn+7lB*rmvm43@DWWOv{ zKe&}}0D~iA626^`k!3W1^x?1uo7v7*;7}v+P@azm^H)}sg~cZJ2Ss|6&b5keqrTuGkcOpoU_Wre z?Qg9K*O*Hb(o6Z73fVI4x$%6^?_fDqd$b@_>+Q(M#vFP8XdY z#}MRE8096#h0AqClzP{NvoRad=*WoCE9oEFTJP?SPbYyBUU$~aBJ4AW_exJi;%pjg z7!w$x{nzqo4SQ?Ge~OD|$xP!xSx@j`j-Y+0Qx+oLr%Pr|j{W zqy5!^CoZDnMOmT<(cLBMT-GV+Dx=3aL{6`eL8oMJk$YP zQLj8#&Ysm>kysPUKJZMF@b9(Q!9SAPfnLCsb1vm2?*TJC3Sy|G)R zlCK}Bj7I?g;}PnHfb#vHFE=j)ZR7+>7Z4QG+PTfnwKEsC0&*7SccD28D{T$;f|b3wWTAQoPB;tScxftqu(K%G# zfp!v+HhC_Bi^y`5m{fgsoTZ2Dj4`z-VUg$bN_d0cH@#65N+7UkkxwAR=V`U^C7^#! z%)s=n5HQ?{2?vtGjRu^Bn{0(V3f-4vU8zbXqr5;UmxGc2!AAbl-=+zM*iJ=d?C$dU zXWxEp&y@D2t6T9$hZn7+A_?f~?dgN-Z5RJE)K!x$VyB!_otxAfV~hDBmv<*B-N>+O z-+c5$6&)9pa^4cp>eCF;^Y184k7Y_r{DciM0vSYGy!A%uV>f#<6g@i|k_ScM%dB`> zbr3)ux>#?+Q8yWpEFSSL8D1kPnCa(zJ;vzU@(X%-V>cxm=Ug1Kunrs}$EvJnZqYu!*a&sSx&!qgU z!S%Rkw5iFEnO2%zYbp#OIA3tA3T3==+2C{I6OMpzF%u7M#vx$ zhR2|HaB>uc+;w+7|3le`D&w*5_o|hc;$c{|>v+S>`f22kuN(2g7!uyTK8wV9-b4&n ztuqM8Lbt2M>nGfFqRv4=4<>~Rf=>gcpu?$#d1vAjG}t2Jo2JHmZx07C3h*v-B~2>j+*p8Il&;1+uiA^nEBr{STtFf9T~pUSyK@{$!Ci-p{?DLlSI9PuT_EvQS;X?-b%Uq4P6WKGO8+X zm`<@{0$S(YcuTGXz6)vtEdv9mFX6SzpR)Op1h>86-nCMBjq+S*}`KA>~(<*U*` zO|BGQ+&HTPZ1hIV@%lMMq1|U8Ve7Qie$41Jm~@E+gQQg!6SiOhrI!3tU92?tVhPm? z6Hz%(qW|G2<>y-m_iCHT4r{&RM)am;1Lr-U-1&%=HCR;D{P;&)T*S!<{^Q3_ON_3U zR!pH;UIkZ#efsM@Z_8p0##U>n1Z}V&L=3@%x&@P&po*bTNm>htEG>?iHL+PX0d@2x ztdy}&`*X0r{NUoAf9K8{?ws6mE?}6Q{`ki*`!y)>$2hWAd{x9or`CsM8*Xs5!!~I! zj&9R2Z8xswuevQ~H)fTJ3&e(3vI=YV4s(h1Um)muY8)5N83Y5$KCx793Hm1GFbLvr z1@0c3EKX*fR&TmdM?QSm#qsRsT}1A=v9wd%KcV5G{kByB(pBAU3Tdozu-`?CNMmr=MQ#^^rVgf|Y%Hosp^!89y3tN#k8A z7@ZP25OsD{Wu%r!va0 zO9iLCZjt2ZYnoq%O9#~u^nvZFqmG9PcOY=f6mCdC*s_Ypo|*L!R@f*)B2qO?5~8L> z`6%)?dH7qIS1&p*5htNa^xl>aZ7>IiB;7zf7|FA zeLB|CkmymnpWs!oBsxJ9D=7-2Lf*-0{$Ym80 zDE!Qcg%DudTe;_a)V?wbfu3i}aaaPH7m{%S{IH7o8(XV*yi4G9V4zkc zvtoqsT%uC5@!-79)_dnXr&{3VU^-J*drU_!X-}aiH06$55`TNGrv2Yg)hjvV_MzS~<1*&{!ZFukUpfDmMo<6A9|p7HE;PZ=-D1N& z9^s@72SsbY+{!R-f6vj+n{dpZaOG+}{9+FC#iZMAJpK3^nv&ebYH$4aP9t#a96X>_H?@6$Ny42{H1Xc&^6KT$7f>dNOIH9sD*o4NF{0W zGkS{?bn6Q!0h#@@hVq9}}N1V!*Rtsnk#`?ek};T9EOeYWFrN6`+!RmF0jL006Qm ztSNEBtLtTIp%$Zs7X47EBCGQUB=w7A*qM6Kg51ki4zl_?kC59Q24q}rnx~>iOy3mM zgACPvu)>{E&Q8)+yhEbP8aOMlx3d0Xd7mOEzHAZ;ZaXhy^667WGHc|Uk0QX4^5HQ` z1C|1?J3d~ZNN_Zv_NiOxN>dD;7_> z2onWHw-tCg79$|N-6E6s5Q?v5SdbuDdBWd$tMW>0@bSU=Tbjqu3%xH?au!19 z$0e}BgKlVCbZQ;YZ+)4+hPi($FL#`Ob0+{V*vd82H%CVsSI+Lk^lf3TUf)HpQWO(` zNf_IwUZnRC_8`JO%&S&nqwPeQaLFkjghs3v*Y-yNk}chT%L12&?7NI}7yAn<c%Yl^EDLq#DH?ZYJ zPetvvz64mScCKtWyPWGcg>3vV_>z$wSNl|!{2o&OzpMADA0qlw(nzJyh*`v4!9s}T z3-Ha>I+oc`&jZL)392&{txZ*gI58=$zD-iaQVodONb{AV;ycrW9RQyNg~JAzV6#^k z1LQwI=5@3d<*(qkEG2H8UWFwfr;2xa=_7)lR@Wa1KgQ>vpA}v~IZgV2%wwvxz%Q6~ z_S1}Lp%Sx3t=t#+lZ4#^+<>gTXzOP5IF*6!2i#@ zUPIdxt>4 zFg?rRVdzZ#(UPN6*rOkX0ME7vq{ipJ4YZ^rrGpCK2qE{RH4IQjO3S3Ql8%(m-Tr+< z!EI39K7_^v4k2s4HoLz@rHe#q{SkqGp%L__;g9gF zJ9z|lH;yaxC&pcVd6BIccj!!(^FBr8yIrX_3O=?bJw%LgultkH?*Ym9IA(<9#)vIO z;-<2NJ$W&UoxIbK*clD3d{zGrgpte`f)>;;Y8OE!{?46xPBtKh`QF zW&faDiZA;U%Ut_`2qqapc9|vNHV4owW>t2QZ|sl%TV9sBW!%KPxNvn`5e?7R@e7+1 zZGJ0HaK^dSmTZw!^_v@|0k?TQkt$bo^VC3oJKyP5b;5?h!s>9f^O3M#hc~nk#8BTG z`|tTQj^azUdPXSA)p<-pxXXx|*i8?D*B`&2z_!)t>{D~zu#_M~?|k1Hfceg_2~1hv z`tktH4Zp3a+|wahb!NFwtU4OfHSO-r55Cw=E&;zods1 zGNABo(7?qlYT_w7t0OaAW@`EFj5FiwqivzgWR5{|@}!lKb#@j$QX$Vhqrf>DD$Nt) zU|wHy%nyU{O(c3kHhfk^&l|jsDJUfhTL4M~+SQj=Okw64m&oQnu@tmHXdyJ)Uvx(T zh)yT7fMEK&^b_*fsoJ!JLe1eI%*=HU?c@3S%|MI3UQ=a29|rvc*6c_PfE~aOA5!_e z;-F~jo<+F_FS;uWi$kT7bnR|>n?GvKd`@bMFOX7pW7a_hr1DD>o20JCmjdu{jz(wM zl)q;-aGo|epc>fo+&&hl8Oo%O=(LR@{t_H~e9Tgl4Cv^N!vpm|sp z=ZT@!6kZesXQ$gj_5*p;wli+)l#z;suekDX)V2d9|5&r(X<`Bz%hs-X+A~*3EBC9l zmv@PkPreY|4^1_tk8w$h)qs|X|Hj)kLlwD=UtHB7E26t>DlU)z_w^%jlEUpO zdu#hd@5C!n#nY(^sUgS<=RGk$!1(zXySz+VY>i|t>;)}W>hXnC&dNg~F4bSeR9oer zi^iNKOqXt>ByJ~AdOj6-C3Ex1EX~-Dg>~T2WxXAC_Xxl&iT_R2J@sQe;&F~VgN$sr z?8#D)Lz+2P<4etPll(-J=yz9zXYd5?= zxzu%M;RCWp(uy!}@)M*kG?HqWSNY2p`A&N8(p=+?R^v%iQr%XhFy77Lzg{zDsbkW= zwPqzzLw)G+?(N&a?Vw%!H!+tJWEk(*WRWGRl#(J!$^DHwJy3G*+|z@j4nXM}F12P& z_Qu+TLJ1#ooBVNv#rmjx|&O zY#m=G^|@E~|C0bJ#KMARf>_%2j8~fV&Gg3^GQiDUSu81YJzn=8tUql))_GpvZxKo23H!2>iTsT_$rz8L5=mMORE=kxP~9Z_{ADNNrv zK-auKAoe6Yj=F0~xq8&yQeXhvgoh3h5$E`?8&2hh^O^~QcTyMy3n3F`1o>NS`)o8%qy@AL<+Sl^}Q?0c17;NuCr6` zUHE@7VM1wEGrAC+*Ql;PFKGawwD_vNCJQyOa;&quCUnvl(D7fVqWszihe{u_5=%-Y z>F#hJgm1^lFG|Q$9aVR@y_LR^MFBpQl~>3Z;v#$V>kKD<)LjAhavx`Cv*8CCjVgn_ zJhl4cW~tFD=0NZV6(7(|26#h<2EF3+SA&a3gKgjii4?NzG25(c+7|ZE=FL+rdV_f* zo^{TOwu@dpSMB^gCwm-eZrUH~YiljsO!1=*NQM^-G(j*a2TDrc%`A4G`5Fb(lbRG1 zM>Q>b^gRxllV3)r23N^#U%zH}D|!HfW^GW$@jV?Oy;Pg|ArMtKs{hd7wg!H7pGWWn zHo*T1k2h4AS(!`SH|~={_89jx;K~HRsEg{HK6@GCRKe=p?NQjs11=%;TUF(t`^9mO zVL7m`FHABPm$qNehJ>{OhPy_ovjha62DLztzMAmjfQ`@od_vJxlBhMTi%0wo$j7#0 zCc=lS?eN;_+%$9PaOUx>8?}EPck+rusuUMC=He%-$H`d@>qa=mqa{z6oitH&)zIgX zXPBGc!yDtMB4||%t4T;O1`)p16bvEm-|P>171S!!(r&m>H=eYJ+`Om7v+0ywf&9U9 z4Ggr?f3Pu1wRt0NtH;bFR`9@s!p@4w@PGcq&d+`|%a z$2rgf%voGN99iCr#DE~aRP9WfEpe9)$cttU$#EDNvM3Ej0`M$v-A7KhO4u8E^O
      +(v3#=YBgM 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 cDgk;I32Yv8nLnGNh(q6o#)_pGuwJ>LV=Lg%l- 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ℑn+i7u7`mekan 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 jM=$?i Date: Wed, 2 Aug 2023 16:48:25 -0400 Subject: [PATCH 468/703] fix author --- website/blog/2023-08-01-announcing-materialized-views.md | 4 ++-- website/blog/authors.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index ffa6d527bd6..7fa56cc1999 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -3,9 +3,9 @@ title: "Introducing Materialized Views and how to use them" description: "In dbt v1.6, we introduce support for materialized views. In this blog post, Amy will review how to use them in your workflow" slug: announcing-materialized-views -authors: [amy chen] +authors: [amy_chen] -tags: [analytics craft, dbt product updates] +tags: [analytics craft, dbt product updates, data ecosystem] hide_table_of_contents: false date: 2023-08-01 diff --git a/website/blog/authors.yml b/website/blog/authors.yml index e9b48bd02fc..2e554ffc814 100644 --- a/website/blog/authors.yml +++ b/website/blog/authors.yml @@ -1,6 +1,6 @@ amy_chen: image_url: /img/blog/authors/achen.png - job_title: Senior Partner Engineer + job_title: Staff Partner Engineer links: - icon: fa-linkedin url: https://www.linkedin.com/in/yuanamychen/ From f0b9b741013b7ded69e4c8e2a9f04982c9f6fb31 Mon Sep 17 00:00:00 2001 From: Cameron Afzal Date: Wed, 2 Aug 2023 13:51:13 -0700 Subject: [PATCH 469/703] Add screenshot to prod environment setup --- website/docs/docs/deploy/deploy-environments.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/docs/docs/deploy/deploy-environments.md b/website/docs/docs/deploy/deploy-environments.md index 553a7d2fcdd..143c56b4c2e 100644 --- a/website/docs/docs/deploy/deploy-environments.md +++ b/website/docs/docs/deploy/deploy-environments.md @@ -34,6 +34,8 @@ import ExpBeta from '/snippets/_explorer-beta-banner.md'; +image + In dbt Cloud, each project can have one designated deployment environment, which serves as its production environment. This production environment is _essential_ for using features like dbt Explorer and cross-project references. It acts as the source of truth for the project's production state in dbt Cloud. ### Semantic Layer From cdc759ec3fd39ed579c961c1206ac99ef155e366 Mon Sep 17 00:00:00 2001 From: Amy Chen Date: Wed, 2 Aug 2023 17:09:42 -0400 Subject: [PATCH 470/703] fix spacing --- ...023-08-01-announcing-materialized-views.md | 57 +++---------------- 1 file changed, 8 insertions(+), 49 deletions(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 7fa56cc1999..78d39d4b5ce 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -14,7 +14,7 @@ is_featured: true ## What's happening? -The year was 2020. I was a kitten-only household, and dbt Labs was still Fishtown Analytics. A major customer I was working with, Jetblue, asked me for help running their dbt models every 2 minutes to meet a 5 minute SLA. +The year was 2020. I was a kitten-only household, and dbt Labs was still Fishtown Analytics. A enterprise customer I was working with, Jetblue, asked me for help running their dbt models every 2 minutes to meet a 5 minute SLA. After getting over the initial terror, we talked through the use case and soon realized there was a better option. Together with my team, I created [lambda views](https://discourse.getdbt.com/t/how-to-create-near-real-time-models-with-just-dbt-sql/1457%20?) to meet the need. @@ -22,6 +22,8 @@ Flash forward to 2023. I’m writing this as my giant dog snores next to me (don Today we are announcing that we now support Materialized Views in dbt. So, what does that mean? + + Materialized views are now an out of the box materialization in your dbt project once you upgrade to the latest version of dbt v1.6 on these following adapters: - dbt-postgres @@ -44,13 +46,9 @@ For Postgres/Redshift/Databricks ```sql {{ - config( - materialized = 'materialized_view', - ) - }} ``` @@ -58,17 +56,11 @@ config( For Snowflake: ```sql - {{ - config( - materialized = 'dynamic_table', - ) - }} - ``` :::note @@ -127,15 +119,10 @@ Every time you run a `dbt run`, that will result in a manual refresh unless you ```sql {{ - config( - materialized = 'materialized_view', - on_configuration_change = 'apply', - ) - }} ``` @@ -144,15 +131,10 @@ For Redshift: ```sql {{ - config( - materialized = 'materialized_view', - on_configuration_change = 'apply', - - uto_refresh =False - + auto_refresh = False ) }} @@ -164,13 +146,9 @@ For Databricks: {{ config( - materialized='materialized_view', - post_hook = 'alter materialized view {{this}} add SCHEDULE CRON "0 0 0 * * ? *" AT TIME ZONE "America/Los_Angeles";' - ) - }} ``` @@ -180,19 +158,12 @@ For Snowflake: ```sql {{ - config( - materialized = 'dynamic_table', - snowflake_warehouse = ‘’, - target_lag = ‘`, - on_configuration_change = 'apply', - ) - }} ``` @@ -216,33 +187,21 @@ The code for having a conditional in your config block looks like this if you wa ```sql {% macro target_lag_environment() %} - {% set lag = '1 minute' if target.name == "prod" else '35 days' %} - {{ return(lag) }} - {% endmacro %} - ``` ```sql {{ - config( - -materialized = 'dynamic_table', - -snowflake_warehouse = 'transforming', - -target_lag = target_lag_environment(), - -on_configuration_change = 'apply', - + materialized = 'dynamic_table', + snowflake_warehouse = 'transforming', + target_lag = target_lag_environment(), + on_configuration_change = 'apply', ) - }} - ``` You will want a very long lag for development; I recommend the cadence you drop and refresh your development environment. Here I just chose my two favorite numbers. From ee39aa983335974e2518cec26cee4087d02faab6 Mon Sep 17 00:00:00 2001 From: Amy Chen Date: Wed, 2 Aug 2023 17:15:29 -0400 Subject: [PATCH 471/703] fix trunc --- website/blog/2023-08-01-announcing-materialized-views.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 78d39d4b5ce..258ae2aeab0 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -12,7 +12,7 @@ date: 2023-08-01 is_featured: true --- -## What's happening? +## Introduction The year was 2020. I was a kitten-only household, and dbt Labs was still Fishtown Analytics. A enterprise customer I was working with, Jetblue, asked me for help running their dbt models every 2 minutes to meet a 5 minute SLA. @@ -34,8 +34,8 @@ Materialized views are now an out of the box materialization in your dbt project - dbt-trino* - dbt-bigquery** -* These adapters have supported materialized views in their adapter prior 1.6. -** dbt-bigquery support will be coming in 1.7. +*These adapters have supported materialized views in their adapter prior 1.6. +**dbt-bigquery support will be coming in 1.7. Just like you would materialize your sql model as  `table` or `view`  today, you can use `materialized_view` in your model configuration, dbt_project.yml, and resources.yml files. At release, python models will not be supported. From bcc8813e8e893e7de642704a73dd08b395f6f535 Mon Sep 17 00:00:00 2001 From: Amy Chen Date: Wed, 2 Aug 2023 17:16:59 -0400 Subject: [PATCH 472/703] add a new header --- website/blog/2023-08-01-announcing-materialized-views.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 258ae2aeab0..cf4635a33e0 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -92,6 +92,8 @@ Other factors to consider when deciding on when/how to use a materialized view: - How often do you need your query refreshed? What are your downstream dependencies and their stakeholders? (If near real time is important, MVs might be the right choice). - Do you have real time machine learning models training or applications using your transformed dataset? +## Materialized Views in the dbt Workflow + ### Development When we talk about using materialized views in development, the question to think about is not so much “should you execute your dbt models as materialized views in your sandbox?,” but rather “should you schedule them to refresh in your sandbox?”. For development, you do need to create them and test them out in your sandbox but how do you do this in a way that doesn’t drive up your cloud bill unnecessarily? Or keeping a post-it note on your laptop as a reminder to drop all of the running materialized views in your sandbox before you sign off? Let’s talk about it! From 64e72d74181148786fc86fb543d71f7b5c332e9c Mon Sep 17 00:00:00 2001 From: Amy Chen Date: Wed, 2 Aug 2023 17:21:13 -0400 Subject: [PATCH 473/703] fix spacing --- .../blog/2023-08-01-announcing-materialized-views.md | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index cf4635a33e0..9cf484bb497 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -44,7 +44,6 @@ Just like you would materialize your sql model as  `table` or `view`  today, y For Postgres/Redshift/Databricks ```sql - {{ config( materialized = 'materialized_view', @@ -54,7 +53,6 @@ config( ``` For Snowflake: - ```sql {{ config( @@ -131,14 +129,12 @@ config( For Redshift: ```sql - {{ config( materialized = 'materialized_view', on_configuration_change = 'apply', auto_refresh = False ) - }} ``` @@ -146,7 +142,6 @@ For Databricks: ```sql {{ - config( materialized='materialized_view', post_hook = 'alter materialized view {{this}} add SCHEDULE CRON "0 0 0 * * ? *" AT TIME ZONE "America/Los_Angeles";' @@ -162,8 +157,8 @@ For Snowflake: {{ config( materialized = 'dynamic_table', -snowflake_warehouse = ‘’, -target_lag = ‘`, +snowflake_warehouse = '', +target_lag = '', on_configuration_change = 'apply', ) }} @@ -184,7 +179,7 @@ In order to promote materialized views into production, the process will look ve When you feel satisfied with your development and testing, for data platforms that offer scheduling via our dbt configurations, you have two options: hardcode the refresh cadence or write in conditional logic based on the environment for the refresh cadence. I recommend using the latter. -The code for having a conditional in your config block looks like this if you want to include in a macro for either the lag or other fields (warehouse, auto-refresh,etc): +The code for having a conditional in your config block looks like this if you want to include in a macro for either the lag or other fields (snowflake_warehouse, auto_refresh,etc): ```sql @@ -195,7 +190,6 @@ The code for having a conditional in your config block looks like this if you wa ``` ```sql - {{ config( materialized = 'dynamic_table', From 2f599b494001064e990884fbf70a4b4236378199 Mon Sep 17 00:00:00 2001 From: Amy Chen Date: Wed, 2 Aug 2023 17:22:56 -0400 Subject: [PATCH 474/703] spaces will be the death of me --- website/blog/2023-08-01-announcing-materialized-views.md | 1 - 1 file changed, 1 deletion(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 9cf484bb497..8ba4a037a0c 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -182,7 +182,6 @@ When you feel satisfied with your development and testing, for data platforms th The code for having a conditional in your config block looks like this if you want to include in a macro for either the lag or other fields (snowflake_warehouse, auto_refresh,etc): ```sql - {% macro target_lag_environment() %} {% set lag = '1 minute' if target.name == "prod" else '35 days' %} {{ return(lag) }} From 906f00f6034656725be8189acd6adba17b48d7cc Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Wed, 2 Aug 2023 17:32:35 -0400 Subject: [PATCH 475/703] Fixing broken internal links --- website/docs/docs/build/jinja-macros.md | 2 +- website/docs/docs/build/python-models.md | 2 +- website/docs/docs/cloud/git/connect-github.md | 2 +- website/docs/docs/collaborate/govern/model-contracts.md | 2 +- website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md | 2 +- .../materializations-guide-3-configuring-materializations.md | 2 +- .../materializations-guide-4-incremental-models.md | 2 +- website/docs/guides/migration/tools/refactoring-legacy-sql.md | 2 +- website/docs/guides/orchestration/webhooks/zapier-ms-teams.md | 2 +- .../docs/guides/orchestration/webhooks/zapier-new-cloud-job.md | 2 +- .../guides/orchestration/webhooks/zapier-refresh-mode-report.md | 2 +- .../orchestration/webhooks/zapier-refresh-tableau-workbook.md | 2 +- website/docs/guides/orchestration/webhooks/zapier-slack.md | 2 +- website/docs/quickstarts/snowflake-qs.md | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/website/docs/docs/build/jinja-macros.md b/website/docs/docs/build/jinja-macros.md index 538a3a5e4c6..44bc85872f5 100644 --- a/website/docs/docs/build/jinja-macros.md +++ b/website/docs/docs/build/jinja-macros.md @@ -126,7 +126,7 @@ from app_data.payments ### Using a macro from a package -A number of useful macros have also been grouped together into [packages](docs/build/packages) — our most popular package is [dbt-utils](https://hub.getdbt.com/dbt-labs/dbt_utils/latest/). +A number of useful macros have also been grouped together into [packages](/docs/build/packages) — our most popular package is [dbt-utils](https://hub.getdbt.com/dbt-labs/dbt_utils/latest/). After installing a package into your project, you can use any of the macros in your own project — make sure you qualify the macro by prefixing it with the [package name](/reference/dbt-jinja-functions/project_name): diff --git a/website/docs/docs/build/python-models.md b/website/docs/docs/build/python-models.md index 5b9222ad1c5..12825648501 100644 --- a/website/docs/docs/build/python-models.md +++ b/website/docs/docs/build/python-models.md @@ -146,7 +146,7 @@ with upstream_python_model as ( :::caution -Referencing [ephemeral](docs/build/materializations#ephemeral) models is currently not supported (see [feature request](https://github.com/dbt-labs/dbt-core/issues/7288)) +Referencing [ephemeral](/docs/build/materializations#ephemeral) models is currently not supported (see [feature request](https://github.com/dbt-labs/dbt-core/issues/7288)) ::: ## Configuring Python models diff --git a/website/docs/docs/cloud/git/connect-github.md b/website/docs/docs/cloud/git/connect-github.md index d5ead96d940..5d27012195d 100644 --- a/website/docs/docs/cloud/git/connect-github.md +++ b/website/docs/docs/cloud/git/connect-github.md @@ -56,7 +56,7 @@ If you are your GitHub organization owner, you can also configure the dbt Cloud ## Personally authenticate with GitHub -Once the dbt Cloud admin has [set up a connection](docs/cloud/git/connect-github#installing-dbt-cloud-in-your-github-account) to your organization GitHub account, you need to personally authenticate, which improves the security of dbt Cloud by enabling you to log in using OAuth through GitHub. +Once the dbt Cloud admin has [set up a connection](/docs/cloud/git/connect-github#installing-dbt-cloud-in-your-github-account) to your organization GitHub account, you need to personally authenticate, which improves the security of dbt Cloud by enabling you to log in using OAuth through GitHub. :::infoGitHub profile connection - dbt Cloud developers on the [Enterprise plan](https://www.getdbt.com/pricing/) must each connect their GitHub profiles to dbt Cloud. This is because the dbt Cloud IDE verifies every developer's read / write access for the dbt repo. diff --git a/website/docs/docs/collaborate/govern/model-contracts.md b/website/docs/docs/collaborate/govern/model-contracts.md index 97667996194..339098adbdc 100644 --- a/website/docs/docs/collaborate/govern/model-contracts.md +++ b/website/docs/docs/collaborate/govern/model-contracts.md @@ -98,7 +98,7 @@ Any model meeting the criteria described above _can_ define a contract. We recom A model's contract defines the **shape** of the returned dataset. If the model's logic or input data doesn't conform to that shape, the model does not build. -[Tests](docs/build/tests) are a more flexible mechanism for validating the content of your model _after_ it's built. So long as you can write the query, you can run the test. Tests are more configurable, such as with [custom severity thresholds](/reference/resource-configs/severity). They are easier to debug after finding failures, because you can query the already-built model, or [store the failing records in the data warehouse](/reference/resource-configs/store_failures). +[Tests](/docs/build/tests) are a more flexible mechanism for validating the content of your model _after_ it's built. So long as you can write the query, you can run the test. Tests are more configurable, such as with [custom severity thresholds](/reference/resource-configs/severity). They are easier to debug after finding failures, because you can query the already-built model, or [store the failing records in the data warehouse](/reference/resource-configs/store_failures). In some cases, you can replace a test with its equivalent constraint. This has the advantage of guaranteeing the validation at build time, and it probably requires less compute (cost) in your data platform. The prerequisites for replacing a test with a constraint are: - Making sure that your data platform can support and enforce the constraint that you need. Most platforms only enforce `not_null`. diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md index 95962610f8d..320bebad3bf 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md @@ -107,7 +107,7 @@ To read about best practices on structuring and organizing your metrics, review You can define your metrics in `.yml` files nested under a metrics key and to design or define your own metrics in your dbt project, review the following documents:
      - [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog to understand best practices for designing and structuring metrics in your dbt project -- [dbt metrics](docs/build/metrics) for in-depth detail on attributes, filters, how to define and query your metrics and [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics) +- [dbt metrics](/docs/build/metrics) for in-depth detail on attributes, filters, how to define and query your metrics and [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics) - [dbt Semantic Layer quickstart](/docs/use-dbt-semantic-layer/quickstart-semantic-layer) to get started - [Understanding the components of the dbt Semantic Layer](https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer) blog post to see further examples diff --git a/website/docs/guides/best-practices/materializations/materializations-guide-3-configuring-materializations.md b/website/docs/guides/best-practices/materializations/materializations-guide-3-configuring-materializations.md index 2f6c04bd35d..54f4443b600 100644 --- a/website/docs/guides/best-practices/materializations/materializations-guide-3-configuring-materializations.md +++ b/website/docs/guides/best-practices/materializations/materializations-guide-3-configuring-materializations.md @@ -53,7 +53,7 @@ def model(dbt, session): :::info -🐍 **Not all adapters support python yet**, check the [docs here to be sure](docs/build/python-models#specific-data-platforms) before spending time writing python models. +🐍 **Not all adapters support python yet**, check the [docs here to be sure](/docs/build/python-models#specific-data-platforms) before spending time writing python models. ::: - Configuring a model to materialize as a `table` is simple, and the same as a `view` for both SQL and python models. diff --git a/website/docs/guides/best-practices/materializations/materializations-guide-4-incremental-models.md b/website/docs/guides/best-practices/materializations/materializations-guide-4-incremental-models.md index c1a4cb3eb0e..603cbc8cda1 100644 --- a/website/docs/guides/best-practices/materializations/materializations-guide-4-incremental-models.md +++ b/website/docs/guides/best-practices/materializations/materializations-guide-4-incremental-models.md @@ -115,7 +115,7 @@ So we’re going to use an **if statement** to apply our cutoff filter **only wh Thankfully, we don’t have to dig into the guts of dbt to sort out each of these conditions individually. -- ⚙️  dbt provides us with a **macro [`is_incremental`](docs/build/incremental-models#understanding-the-is_incremental-macro)** that checks all of these conditions for this exact use case. +- ⚙️  dbt provides us with a **macro [`is_incremental`](/docs/build/incremental-models#understanding-the-is_incremental-macro)** that checks all of these conditions for this exact use case. - 🔀  By **wrapping our cutoff logic** in this macro, it will only get applied when the macro returns true for all of the above conditions. Let’s take a look at all these pieces together: diff --git a/website/docs/guides/migration/tools/refactoring-legacy-sql.md b/website/docs/guides/migration/tools/refactoring-legacy-sql.md index 9dd66abb495..d9acfea6dab 100644 --- a/website/docs/guides/migration/tools/refactoring-legacy-sql.md +++ b/website/docs/guides/migration/tools/refactoring-legacy-sql.md @@ -59,7 +59,7 @@ This allows you to call the same table in multiple places with `{{ src('my_sourc We start here for several reasons: #### Source freshness reporting -Using sources unlocks the ability to run [source freshness reporting](docs/build/sources#snapshotting-source-data-freshness) to make sure your raw data isn't stale. +Using sources unlocks the ability to run [source freshness reporting](/docs/build/sources#snapshotting-source-data-freshness) to make sure your raw data isn't stale. #### Easy dependency tracing If you're migrating multiple stored procedures into dbt, with sources you can see which queries depend on the same raw tables. diff --git a/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md b/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md index aa95b999d4c..bb3f03ef0c0 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md +++ b/website/docs/guides/orchestration/webhooks/zapier-ms-teams.md @@ -27,7 +27,7 @@ In order to set up the integration, you should have familiarity with: **Note**: To receive the message, add the Zapier app to the team's channel during installation. ### 2. Create a new Zap in Zapier -Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. +Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](/docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. Press **Continue**, then copy the webhook URL. diff --git a/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md b/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md index 49b01d0db7e..0764c6c7911 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md +++ b/website/docs/guides/orchestration/webhooks/zapier-new-cloud-job.md @@ -16,7 +16,7 @@ In order to set up the integration, you should have familiarity with: ## Integration steps ### 1. Create a new Zap in Zapier -Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. +Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](/docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. Press **Continue**, then copy the webhook URL. diff --git a/website/docs/guides/orchestration/webhooks/zapier-refresh-mode-report.md b/website/docs/guides/orchestration/webhooks/zapier-refresh-mode-report.md index 99680c432b3..f682baae8e2 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-refresh-mode-report.md +++ b/website/docs/guides/orchestration/webhooks/zapier-refresh-mode-report.md @@ -22,7 +22,7 @@ In order to set up the integration, you should have familiarity with: ## Integration steps ### 1. Create a new Zap in Zapier -Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. +Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](/docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. Press **Continue**, then copy the webhook URL. diff --git a/website/docs/guides/orchestration/webhooks/zapier-refresh-tableau-workbook.md b/website/docs/guides/orchestration/webhooks/zapier-refresh-tableau-workbook.md index 8751528565c..52a9ae63523 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-refresh-tableau-workbook.md +++ b/website/docs/guides/orchestration/webhooks/zapier-refresh-tableau-workbook.md @@ -25,7 +25,7 @@ To set up the integration, you need to be familiar with: To authenticate with the Tableau API, obtain a [Personal Access Token](https://help.tableau.com/current/server/en-us/security_personal_access_tokens.htm) from your Tableau Server/Cloud instance. In addition, make sure your Tableau workbook uses data sources that allow refresh access, which is usually set when publishing. ### 2. Create a new Zap in Zapier -To trigger an action with the delivery of a webhook in Zapier, you'll want to create a new Zap with **Webhooks by Zapier** as the Trigger and **Catch Raw Hook** as the Event. However, if you choose not to [validate the authenticity of your webhook](docs/deploy/webhooks#validate-a-webhook), which isn't recommended, you can choose **Catch Hook** instead. +To trigger an action with the delivery of a webhook in Zapier, you'll want to create a new Zap with **Webhooks by Zapier** as the Trigger and **Catch Raw Hook** as the Event. However, if you choose not to [validate the authenticity of your webhook](/docs/deploy/webhooks#validate-a-webhook), which isn't recommended, you can choose **Catch Hook** instead. Press **Continue**, then copy the webhook URL. diff --git a/website/docs/guides/orchestration/webhooks/zapier-slack.md b/website/docs/guides/orchestration/webhooks/zapier-slack.md index d3b0473502b..c9046ee9943 100644 --- a/website/docs/guides/orchestration/webhooks/zapier-slack.md +++ b/website/docs/guides/orchestration/webhooks/zapier-slack.md @@ -25,7 +25,7 @@ In order to set up the integration, you should have familiarity with: ## Integration steps ### 1. Create a new Zap in Zapier -Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. +Use **Webhooks by Zapier** as the Trigger, and **Catch Raw Hook** as the Event. If you don't intend to [validate the authenticity of your webhook](/docs/deploy/webhooks#validate-a-webhook) (not recommended!) then you can choose **Catch Hook** instead. Click **Continue**, then copy the webhook URL. diff --git a/website/docs/quickstarts/snowflake-qs.md b/website/docs/quickstarts/snowflake-qs.md index 6d03586e611..0561ea13410 100644 --- a/website/docs/quickstarts/snowflake-qs.md +++ b/website/docs/quickstarts/snowflake-qs.md @@ -138,7 +138,7 @@ There are two ways to connect dbt Cloud to Snowflake. The first option is Partne -Using Partner Connect allows you to create a complete dbt account with your [Snowflake connection](docs/cloud/connect-data-platform/connect-snowflake), [a managed repository](/docs/collaborate/git/managed-repository), [environments](/docs/build/custom-schemas#managing-environments), and credentials. +Using Partner Connect allows you to create a complete dbt account with your [Snowflake connection](/docs/cloud/connect-data-platform/connect-snowflake), [a managed repository](/docs/collaborate/git/managed-repository), [environments](/docs/build/custom-schemas#managing-environments), and credentials. 1. In the Snowflake UI, click on the home icon in the upper left corner. In the left sidebar, select **Admin**. Then, select **Partner Connect**. Find the dbt tile by scrolling or by searching for dbt in the search bar. Click the tile to connect to dbt. From a773d5ebf521ecdfc2a2f7808e7d3bb7101eb628 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Wed, 2 Aug 2023 15:48:59 -0600 Subject: [PATCH 476/703] update dims and add primary entity example --- website/docs/docs/build/about-metricflow.md | 2 +- website/docs/docs/build/derived-metrics.md | 4 +- website/docs/docs/build/dimensions.md | 32 ++- website/docs/docs/build/metrics-overview.md | 12 +- website/docs/docs/build/ratio-metrics.md | 2 +- website/docs/docs/build/semantic-models.md | 12 +- website/docs/docs/build/simple.md | 31 ++- website/docs/guides/migration/sl-migration.md | 202 ++++++------------ 8 files changed, 124 insertions(+), 173 deletions(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index 38b64f492cb..154e40d515d 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -234,7 +234,7 @@ metrics: numerator: food_order denominator: active_customers filter: | - {{dimension('is_new_customer')}} = true + {{ Dimension('customer__is_new_customer')}} = true ``` diff --git a/website/docs/docs/build/derived-metrics.md b/website/docs/docs/build/derived-metrics.md index 010c86c2c33..acfd6935208 100644 --- a/website/docs/docs/build/derived-metrics.md +++ b/website/docs/docs/build/derived-metrics.md @@ -50,11 +50,11 @@ metrics: - name: order_total alias: revenue filter: | - {{dimension('is_food_order')}} = True + {{ Dimension('order__is_food_order') }} = True - name: order_cost alias: cost filter: | - {{dimension('is_food_order')}} = True + {{ Dimension('order__is_food_order') }} = True - name: order_total_growth_mom description: "Percentage growth of orders total completed to 1 month ago" type: derived diff --git a/website/docs/docs/build/dimensions.md b/website/docs/docs/build/dimensions.md index d154141791f..fe2fa802e17 100644 --- a/website/docs/docs/build/dimensions.md +++ b/website/docs/docs/build/dimensions.md @@ -8,13 +8,14 @@ tags: [Metrics, Semantic Layer] Dimensions is a way to group or filter information based on categories or time. It's like a special label that helps organize and analyze data. -In a data platform, dimensions is part of a larger structure called a semantic model. It's created along with other elements like [entities](/docs/build/entities) and [measures](/docs/build/measures), and used to add more details to your data that can't be easily added up or combined. In SQL, dimensions is typically included in the `dimensions` clause of your SQL query. +In a data platform, dimensions is part of a larger structure called a semantic model. It's created along with other elements like [entities](/docs/build/entities) and [measures](/docs/build/measures), and used to add more details to your data that can't be easily added up or combined. In SQL, dimensions is typically included in the `group by` clause of your SQL query. + -All dimensions require a `name`, `type` and in most cases, an `expr` parameter. +All dimensions require a `name`, `type` and in some cases, an `expr` parameter. | Name | Parameter | Field type | | --- | --- | --- | @@ -60,13 +61,28 @@ semantic_models: expr: case when quantity > 10 then true else false end ``` +Metricflow requires that all dimensions have a primary entity. If your data source does not have a primary entity, you will need to specfy one. + +```yaml: +semantic_model: + name: bookings_monthly_source + description: bookings_monthly_source + defaults: + agg_time_dimension: ds + model: ref('bookings_monthly_source') + measures: + - name: bookings_monthly + agg: sum + create_metric: true + primary_entity: booking_id + ``` + ## Dimensions types -Dimensions have three types. This section further explains the definitions and provides examples. +Dimensions have 2 types. This section further explains the definitions and provides examples. 1. [Categorical](#categorical) 1. [Time](#time) -1. [Slowly changing](#scd-type-ii) ### Categorical @@ -91,9 +107,9 @@ To use BigQuery as your data platform, time dimensions columns need to be in the -To specify the default time dimensions for a measure or metric in MetricFlow, set the `is_primary` parameter to True. If your semantic model has multiple time dimensions, the non-primary ones should have `is_primary` set to False. To assign non-primary time dimensions to a measure, use the `agg_time_dimension` parameter and refer to the time dimensions defined in the section. +To specify the default time dimensions for a measure or metric in MetricFlow, set the `agg_time_dimension` in the `defaults` section. To override the default and aggregation on diffrent time dimension, set the `agg_time_dimension` parameter on a measure. -In the provided example, the semantic model has two-time groups, `created_at` and `deleted_at`, with `created_at` being the primary time dimension through `is_primary: True`. The `users_created` measure defaults to the primary time dimensions, while the `users_deleted` measure uses `deleted_at` as its time group. +In the provided example, the semantic model has two-time groups, `created_at` and `deleted_at`, with `created_at` being the default time dimension. The `users_deleted` measure overrides the default and uses `deleted_at` as its time group. ```yaml dimensions: @@ -231,7 +247,7 @@ The following basic structure of an SCD Type II data platform table is supported **Note**: The SCD dimensions table must have `valid_to` and `valid_from` columns. -This is an example of SQL code that shows how a sample metric called `num_events` is joined with versioned dimensions data (stored in a table called `scd_dimensions`) using a natural key made up of the `entity_key` and `timestamp` columns. +This is an example of SQL code that shows how a sample metric called `num_events` is joined with versioned dimensions data (stored in a table called `scd_dimensions`) using a primary key made up of the `entity_key` and `timestamp` columns. ```sql @@ -289,7 +305,7 @@ semantic_models: entities: - name: sales_person - type: natural + type: primary expr: sales_person_id ``` diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index 9f04cab1b82..3b377494565 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -31,7 +31,7 @@ metrics: configs: here for `enabled` ## Optional label: The display name for your metric. This value will be shown in downstream tools. ## Required filter: | ## Optional - {{ dimension('name') }} > 0 and {{ dimension(' another name') }} is not + {{ Dimension('entity__name') }} > 0 and {{ Dimension(' entity__another name') }} is not null ``` @@ -75,7 +75,7 @@ metrics: - name: gross_sales # these are all metrics (can be a derived metric, meaning building a derived metric with derived metrics) - name: cogs - name: users - filter: is_active # Optional additional constraint + filter: {{ Dimension('is_active')}} # Optional additional constraint alias: active_users # Optional alias to use in the expr ``` - -## Create environment for the new Semantic Layer - -This approach allows you to run the legacy Semantic Layer in your existing environment, while you stage the metrics spec changes to your dbt project. - -In this approach, you’ll set up a brand new deployment environment on dbt v1.6 or higher, which is a clone of your current Semantic Layer environment. When you’re ready to merge your changes, the new environment will be prepared, allowing you to safely deprecate the old Semantic Layer environment. Although some downtime may still be involved, this approach helps mitigate it. - -### Step 1: Setup a new environment - -You'll need to create a new environment for the new Semantic Layer and migrate your existing jobs to this environment: - -1. In dbt Cloud, select **Deploy** and then **Environments** to create a new [deployment environment](/docs/deploy/deploy-environments). -2. Select **dbt Version 1.6** (or the latest) and enter your deployment credentials. - * There needs to be a successful run in your new environment to configure the Semantic Layer. We recommend running `dbt ls`, since `dbt build` won’t succeed until you’ve updated your metrics configs. -3. You'll need to migrate your jobs from your old deployment environment. You can do this by manually creating and configuring the new jobs in the new environment. -4. To activate the new Semantic Layer, go to the Account Settings page and select the specific project you want to enable the Semantic Layer for. -5. On the **Project Details** page, select **Configure Semantic Layer**. -6. Enter the connection details for the data platform and select the environment where you want to enable the Semantic Layer. It's recommended to use a set of credentials with limited privileges, granting SELECT and CREATE TABLE permissions. -7. After you’ve entered you’re credentials, you should see a **JDBC URL** connection string. Copy this string and save it in your password manager. This can be used to connect to the Semantic Layer JDBC. -7. Go back to **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. Save this token for later. -8. You’re done ✨ ! The Semantic Layer should now be enabled for your project! - -The legacy Semantic Layer will still be running in your old environment so make sure you complete step two to migrate your metrics configs to the new spec. Once you’ve migrated your metrics configs, you can safely deprecate the old environment. - -### Step 2: Migrate metric configs to the new spec - -Starting from dbt v1.6, the metrics specification dbt Core has been updated to support the integration of MetricFlow. This introduces two new components that are essential for building a semantic graph: - -- [Semantic Models](/docs/build/semantic-models) -- [Metrics](/docs/build/metrics-overview) - -To migrate to the new specification, you'll need to: -- Create net new semantic model configs using YAML files in your dbt project -- Upgrade your existing metrics configs to the new spec - -To help ensure a smooth transition, you can use our [custom-built migration tool](https://github.com/dbt-labs/dbt-converter/blob/master/README.md) that automates this process. -**Note:** this tool doesn't support [derived metrics](/docs/build/derived) and you'll need to migrate them over manually. - -For detailed instructions on how to configure semantic models and metrics, refer to our [getting started guide](/docs/use-dbt-semantic-layer/quickstart-sl). - - -If you're developing in metrics and semantic models in the dbt Cloud IDE, make sure to update your development environment to dbt version 1.6 or newer. This update will affect other analysts on your team who use the IDE for the same project. If they have metrics defined using dbt version 1.5 or older, it might cause errors. - -#### Test your metrics - -Once you’ve created your semantic models and created or updated your metrics, you can test your updated configs using the MetricFlow CLI tools: - -1. Install the CLI via `pip install "dbt-metricflow[your_adapter_name]`. -2. Run `dbt parse`. This will parse your project and create a `semantic_manifest.json` file in your target directory. -3. Run `mf list metrics` to view the metrics in your project. -4. Run `mf validate-configs` to run semantic and warehouse validations. This ensures are configs are valid, and the underlying objects exist in your warehouse. -5. Test querying a metric by running `mf query --metrics --group-by ` - -If you migrate using the dbt Cloud IDE, we will perform semantic validations every time we parse or compile your project. This will ensure correct configuration of your metrics and semantic models. You will need to test querying metrics values in downstream tools. - -Once you've thoroughly tested and verified the accuracy of your metrics, commit and push the changes to your dbt repository. After you merge the new configurations, **the legacy Semantic Layer will no longer work**. - -### Step 3: Update connection in downstream integrations - -Now that your Semantic Layer is set up, you will need to update any downstream integrations that relied on the legacy Semantic Layer. To set up a new connection or update an existing connection, you should do so in the downstream tool and not in dbt Cloud. - - - - -## Resources - -- [Get started with the dbt Semantic Layer](/docs/use-dbt-semantic-layer/quickstart-sl) +- [MetricFlow quickstart guide](/docs/build/sl-getting-started) - [Example dbt project](https://github.com/dbt-labs/jaffle-sl-template) -- [Set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) -- [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) - [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) +- [Why we're deprecating the dbt_metrics package](/blog/deprecating-dbt-metrics) blog post \ No newline at end of file From abc48a3bd8f81ded218c68681824ed0d48cf46a5 Mon Sep 17 00:00:00 2001 From: Amy Chen Date: Wed, 2 Aug 2023 17:49:12 -0400 Subject: [PATCH 477/703] remove the post hook code for Databricks --- .../2023-08-01-announcing-materialized-views.md | 2 +- .../materialized-incremental-twins.jpg | Bin 0 -> 64580 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 website/static/img/blog/2023-08-01-announcing-materialized-views/materialized-incremental-twins.jpg diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 8ba4a037a0c..d2f3fcc441b 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -144,12 +144,12 @@ For Databricks: {{ config( materialized='materialized_view', -post_hook = 'alter materialized view {{this}} add SCHEDULE CRON "0 0 0 * * ? *" AT TIME ZONE "America/Los_Angeles";' ) }} ``` By default, materialized views are not refreshed on a schedule on Databricks in this materialization. To set up scheduling, you can use a post-hook to alter the MV with a cron schedule that will run in Databricks Workflows. +``` For Snowflake: diff --git a/website/static/img/blog/2023-08-01-announcing-materialized-views/materialized-incremental-twins.jpg b/website/static/img/blog/2023-08-01-announcing-materialized-views/materialized-incremental-twins.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bd72dba36635a1a9d0cf7fe86f950fa438ba2c0b GIT binary patch literal 64580 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 a5 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 Date: Wed, 2 Aug 2023 17:56:27 -0400 Subject: [PATCH 478/703] I promise this is the last non-reviewed commit but adding back suggestion and fixing my sql --- website/blog/2023-08-01-announcing-materialized-views.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index d2f3fcc441b..4c93f52cbde 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -148,7 +148,10 @@ materialized='materialized_view', }} ``` -By default, materialized views are not refreshed on a schedule on Databricks in this materialization. To set up scheduling, you can use a post-hook to alter the MV with a cron schedule that will run in Databricks Workflows. +By default, materialized views are not refreshed on a schedule on Databricks in this materialization. To set up scheduling, you can use a post-hook to alter the MV with a cron schedule that will run in Databricks Workflows. That could look like something like this + +```sql +post_hook = 'ALTER MATERIALIZED VIEW {{this}} ADD SCHEDULE CRON "0 0 0 * * ? *" AT TIME ZONE "America/Los_Angeles";' ``` For Snowflake: From e2abd81e90ef073a8597c4492227ba6952f3ec9a Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Wed, 2 Aug 2023 16:52:14 -0700 Subject: [PATCH 479/703] moving release notes to august date --- .../{06-July-2023 => 05-Aug-2023}/sl-revamp-beta.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename website/docs/docs/dbt-versions/release-notes/{06-July-2023 => 05-Aug-2023}/sl-revamp-beta.md (96%) diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md similarity index 96% rename from website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md rename to website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md index a3123237074..57d4218fb90 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md @@ -1,9 +1,9 @@ --- title: "Enhancement: Revamped dbt Semantic Layer available in public beta" -description: "July 2023: The revamped dbt Semantic Layer, now available in public beta, introduces new semantic components and evolves the semantic layer's capability." +description: "August 2023: The revamped dbt Semantic Layer, now available in public beta, introduces new semantic components and evolves the semantic layer's capability." sidebar_label: "Enhancement: Revamped dbt Semantic Layer in public beta" -tags: [July-2023, dbt Semantic Layer] -date: 2023-07-31 +tags: [Aug-2023, dbt Semantic Layer] +date: 2023-08-03 sidebar_position: 9 --- From 5868b80e6f02af9a2d45312f4765531dd143618f Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Wed, 2 Aug 2023 18:08:51 -0700 Subject: [PATCH 480/703] fixign bad links --- website/snippets/_new-sl-changes.md | 2 +- website/snippets/_sl-plan-info.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/_new-sl-changes.md b/website/snippets/_new-sl-changes.md index 6773dbdabf5..fa7c7abf743 100644 --- a/website/snippets/_new-sl-changes.md +++ b/website/snippets/_new-sl-changes.md @@ -3,6 +3,6 @@ The dbt Semantic Layer has been re-released with [significant improvements](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. -The new version is available in [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and introduces [MetricFlow](/docs/build/about-metricflow), an essential component. It also includes new semantic elements, better governance, improved efficiency, easier data access, and new Semantic Layer API. +The new version is available in [public beta](/docs/dbt-versions/release-notes/Aug-2023/sl-revamp-beta#public-beta) and introduces [MetricFlow](/docs/build/about-metricflow), an essential component. It also includes new semantic elements, better governance, improved efficiency, easier data access, and new Semantic Layer API. ::: diff --git a/website/snippets/_sl-plan-info.md b/website/snippets/_sl-plan-info.md index f1a721c90fc..5294dab39d8 100644 --- a/website/snippets/_sl-plan-info.md +++ b/website/snippets/_sl-plan-info.md @@ -1 +1 @@ -During
      {props.cycle}, you can access {props.product} on {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools.

      +During {props.cycle}, you can access {props.product} on {props.plan} multi-tenant plans {props.instance} (cloud.getdbt.com login). It's available on dbt v1.6 or higher. dbt Cloud Developer plans and dbt Core users can use MetricFlow to define and test metrics locally, but can't dynamically query them with integrated tools.

      From e1f98b1328fb2ced16263a82f2af82e13f5175d9 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Wed, 2 Aug 2023 19:14:32 -0600 Subject: [PATCH 481/703] add mode docs and filter docs --- website/docs/docs/build/metrics-overview.md | 12 +++++++++++- website/docs/guides/migration/sl-migration.md | 3 +++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index 3b377494565..5607fcbab99 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -15,7 +15,7 @@ The keys for metrics definitions are: | `name` | Provide the reference name for the metric. This name must be unique amongst all metrics. | Required | | `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Optional | | `type_params` | Additional parameters used to configure metrics. `type_params` are different for each metric type. | Required | -| `filter` | For any type of metric, you may optionally include a filter string, which applies a dimensional filter when computing the metric. You can think of this as your WHERE clause. | Optional | +| `filter` | For any type of metric, you may optionally include a filter string, which applies a filter for a dimension, entity or time dimension when computing the metric. You can think of this as your WHERE clause. | Optional | | `meta` | Additional metadata you want to add to your metric. | @@ -147,6 +147,16 @@ metrics: {{ Dimension('order__value')}} > 100 and {{Dimension('user__acquisition')}} ``` +## Filters +Filter are configured using jinja templating. Use the following syntax to refrence entites, dimensions and time dimensions in filters: +```yaml +filter: | + {{ Entity('entity_name') }} +filter: | + {{ Dimension('primary_entity__dimension_name') }} +filter: | + {{ TimeDimension('time_dimension', 'granularity') }} +``` ### Further configuration You can set more metadata for your metrics, which can be used by other tools later on. The way this metadata is used will vary based on the specific integration partner diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 88d55d44e18..d76f6d26ade 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -84,7 +84,10 @@ https://www.loom.com/share/118ca1a28e264cadaa531cc2f3c0af81 NOTE: You will need to update your connection to your production environment once you merge your changes to main. Currently this connection will be pointing at the semantic layer migration environment +**Migration guide for Mode** +1. Setup a new connection for the semantic layer for your account. Follow [Mode's docs to setup your connect](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). +2. Re-create the dashboards/reports that we’re using the legacy semantic layer. ### Step 5: Merge your metrics migration branch to main, and upgrade your production environment to 1.6. 1. Upgrade your production environment to 1.6. Note the old metrics definitions are no longer valid so your dbt jobs will not pass. From a061f3ce234d9ac01b53f7a08b411683c22c4137 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Wed, 2 Aug 2023 19:33:34 -0600 Subject: [PATCH 482/703] add primary entity example --- website/docs/docs/build/semantic-models.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/semantic-models.md b/website/docs/docs/build/semantic-models.md index 0919b5bee6e..a5d7ef29f7e 100644 --- a/website/docs/docs/build/semantic-models.md +++ b/website/docs/docs/build/semantic-models.md @@ -123,7 +123,21 @@ Defaults for the semantic model. Currently only `agg_time_dimension`. `agg_time_ To specify the [entities](/docs/build/entities) in your model, use their columns as join keys and indicate their `type` as primary, foreign, or unique keys with the type parameter. ### Primary Entity -If your data source does not have a primary entity, you need to manually specify one. Metricflow requers that all dimensions be tied to an entity. +If your data source does not have a primary entity, you need to manually specify one. Metricflow requers that all dimensions be tied to an entity. You can define a primary entity using the following configs: + +```yaml: +semantic_model: + name: bookings_monthly_source + description: bookings_monthly_source + defaults: + agg_time_dimension: ds + model: ref('bookings_monthly_source') + measures: + - name: bookings_monthly + agg: sum + create_metric: true + primary_entity: booking_id +``` @@ -167,7 +181,7 @@ You can refer to entities (join keys) in a semantic model using the `name` param MetricFlow simplifies this by allowing you to query all metric groups and construct the join during the query. To specify dimensions parameters, include the `name` (either a column or SQL expression) and `type` (`categorical` or `time`). Categorical groups represent qualitative values, while time groups represent dates of varying granularity. -Dimensions are identified using the name parameter, just like identifiers. The naming of groups must be unique within a semantic model, but not across semantic models since MetricFlow, uses entities to determine the appropriate groups. +Dimensions are identified using the name parameter, just like identifiers. The naming of groups must be unique within a semantic model, but not across semantic models since MetricFlow, uses entities to determine the appropriate groups. MetricFlow requires all dimensions be tied to a primary entity. :::info For time groups From 3157f94d1a08bd537daf0d8d1e467af0a65ad7d9 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Wed, 2 Aug 2023 18:47:18 -0700 Subject: [PATCH 483/703] Update sl-jdbc.md Some updates to where clauses --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 23 +++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index d383ae3f12c..496711bb5f9 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -138,7 +138,7 @@ To query metric values, here are the following parameters that are available: | `metrics` | The metric name as defined in your dbt metric configuration | `metrics=[revenue]` | Required | | `group_by` | Dimension names or entities to group by. We require a reference to the entity of the dimension (other than for the primary time dimension), which is pre-appended to the front of the dimension name with a double underscore. | `group_by=[user__country, metric_time]` | Optional | | `grain` | A parameter specific to any time dimension and changes the grain of the data from the default for the metric. | ```group_by=[`Dimension('metric_time').```
      ```grain('week\|day\|month\|quarter\|year')]``` | Optional | -| `where` | A where clause that allows you to filter on dimensions | `where="metric_time >= '2022-03-08'"` | Optional | +| `where` | A where clause that allows you to filter on dimensions and entities using parameters - comes with `TimeDimension`, `Dimension`, and `Entity` objects. Granularity is required with `TimeDimension` | `"{{ where="Dimension('customer__country') = 'US')"` | Optional | | `limit` | Limit the data returned | `limit=10` | Optional | |`order` | Order the data returned | `order_by=['-order_gross_profit']` (remove `-` for ascending order) | Optional | | `explain` | If true, returns generated SQL for the data platform but does not execute | `explain=True` | Optional | @@ -213,7 +213,23 @@ select * from {{ }} ``` -### Query with a filter +### Querying with Where Filters + +Where filters have three components: + +-`TimeDimension()` is used for any time dimension and requires a granularity argument - `TimeDimension('metric_time', 'DAY')` +-`Dimension()` - This is used for any categorical dimensions - `Dimension('customer__country')` +-`Entity()` - used for entities like primary and foreign keys - `Entity('order_id')` + +Use the following example to query using a `where` filter: + +```bash +select * from {{ +semantic_layer.query(metrics=['food_order_amount', 'order_gross_profit'], +group_by=[Dimension('metric_time').grain('month'),'customer__customer_type'], +where="{{ TimeDimension('metric_time', 'DAY') }} >= '2017-03-09' AND {{ Dimension('customer__customer_type' }} in ('new') AND {{ Entity('order_id') }} = 10) +}} +``` Use the following example to query using a `where` filter: @@ -221,7 +237,7 @@ Use the following example to query using a `where` filter: select * from {{ semantic_layer.query(metrics=['food_order_amount', 'order_gross_profit'], group_by=[Dimension('metric_time').grain('month'),'customer__customer_type'], -where="metric_time__month >= '2017-03-09' AND customer__customer_type in ('new')") +where="{{ TimeDimension('metric_time', 'DAY') }} >= '2017-03-09' AND {{ Dimension('customer__customer_type' }} in ('new')") }} ``` @@ -245,7 +261,6 @@ Use the following example to query using a `explain` keyword: select * from {{ semantic_layer.query(metrics=['food_order_amount', 'order_gross_profit'], group_by=[Dimension('metric_time').grain('month'),'customer__customer_type'], - where="metric_time__month >= '2017-03-09' AND customer__customer_type in ('new')", explain=True) }} ``` From 0ddac354f5b4ddb3525076deecfd80add9dd06ca Mon Sep 17 00:00:00 2001 From: rpourzand Date: Wed, 2 Aug 2023 18:50:41 -0700 Subject: [PATCH 484/703] Update sl-jdbc.md bullet point error --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 496711bb5f9..edcab2f93e3 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -217,9 +217,11 @@ select * from {{ Where filters have three components: --`TimeDimension()` is used for any time dimension and requires a granularity argument - `TimeDimension('metric_time', 'DAY')` --`Dimension()` - This is used for any categorical dimensions - `Dimension('customer__country')` --`Entity()` - used for entities like primary and foreign keys - `Entity('order_id')` +- `TimeDimension()` is used for any time dimension and requires a granularity argument - `TimeDimension('metric_time', 'DAY')` + +- `Dimension()` - This is used for any categorical dimensions - `Dimension('customer__country')` + +- `Entity()` - used for entities like primary and foreign keys - `Entity('order_id')` Use the following example to query using a `where` filter: From 52b765595304d7ace01574c6eb907c711d7b188e Mon Sep 17 00:00:00 2001 From: rpourzand Date: Wed, 2 Aug 2023 19:16:32 -0700 Subject: [PATCH 485/703] Update sl-jdbc.md fixing weird query things with month and day --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index edcab2f93e3..29960babd5c 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -229,7 +229,7 @@ Use the following example to query using a `where` filter: select * from {{ semantic_layer.query(metrics=['food_order_amount', 'order_gross_profit'], group_by=[Dimension('metric_time').grain('month'),'customer__customer_type'], -where="{{ TimeDimension('metric_time', 'DAY') }} >= '2017-03-09' AND {{ Dimension('customer__customer_type' }} in ('new') AND {{ Entity('order_id') }} = 10) +where="{{ TimeDimension('metric_time', 'MONTH') }} >= '2017-03-09' AND {{ Dimension('customer__customer_type' }} in ('new') AND {{ Entity('order_id') }} = 10) }} ``` @@ -239,7 +239,7 @@ Use the following example to query using a `where` filter: select * from {{ semantic_layer.query(metrics=['food_order_amount', 'order_gross_profit'], group_by=[Dimension('metric_time').grain('month'),'customer__customer_type'], -where="{{ TimeDimension('metric_time', 'DAY') }} >= '2017-03-09' AND {{ Dimension('customer__customer_type' }} in ('new')") +where="{{ TimeDimension('metric_time', 'MONTH') }} >= '2017-03-09' AND {{ Dimension('customer__customer_type' }} in ('new')") }} ``` From a6da20712637b03c7a372b94971d03b6f03610fd Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 3 Aug 2023 13:36:17 +0300 Subject: [PATCH 486/703] add hex/mode links and fix typos --- .../avail-sl-integrations.md | 15 ++++-------- .../use-dbt-semantic-layer/quickstart-sl.md | 4 +++- website/docs/guides/migration/sl-migration.md | 23 +++++++++++-------- website/snippets/_new-sl-setup.md | 4 ++-- website/snippets/_sl-partner-links.md | 17 ++++++++++++++ 5 files changed, 39 insertions(+), 24 deletions(-) create mode 100644 website/snippets/_sl-partner-links.md diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 8f955986e07..2c4c7d4bd90 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -18,20 +18,13 @@ import NewSLChanges from '/snippets/_new-sl-changes.md'; There are a number of data applications that seamlessly integrate with the dbt Semantic Layer, powered by MetricFlow, from business intelligence tools to notebooks, spreadsheets, data catalogs, and more. These integrations allow you to query and unlock valuable insights from your data ecosystem. -Query dbt metrics with external integrations using the sophisticated {frontMatter.meta.api_name}. Use the API to query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. + -The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. Here are some of the integrations you can query from: +Query dbt metrics with external integrations using the sophisticated {frontMatter.meta.api_name}. Use the API to query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers.

      -- Hex — -- Mode — -- Google Sheets - Coming Soon! -- Any tool that allows you to write SQL and meets one of the two criteria: - * Supports a generic JDBC driver option (such as DataGrip) or - * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. +import AvailIntegrations from '/snippets/_sl-partner-links.md'; -Refer to [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) for information on the partner integrations, their documentation, and more. - - + ## Related docs diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index e4f9810b58d..a51e7a58c74 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -164,10 +164,12 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America. -You can query your metrics in a JDBC-enabled tool or use existing first-class integrations with the dbt Semantic Layer. +You can query your metrics in a JDBC-enabled tool or use existing first-class integrations with the dbt Semantic Layer. 1. Refer to the {frontMatter.meta.api_name} to learn how to use the JDBC API and what tools you can query it with. + * **Note** To authenticate, you need to [generate a service token](/docs/dbt-cloud-apis/service-tokens) and create a Semantic Layer Only service token. + 2. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. ## FAQs diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index d76f6d26ade..e6bc7e14d14 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -14,8 +14,8 @@ The metrics specification in dbt core is changed in v1.6 to support the integrat dbt Labs recommends completing these steps in a local dev environment instead of the IDE: -1. Create new Semantic Model configs as YAML files in your dbt project. * -1. Upgrade the metrics configs in your project to the new spec. * +1. Create new Semantic Model configs as YAML files in your dbt project.* +1. Upgrade the metrics configs in your project to the new spec.* 1. Delete your old metrics file or remove the `.yml` file extension so they're ignored at parse time. Remove the `dbt-metrics` package from your project. Remove any macros that reference `dbt-metrics`, like `metrics.calculate()`. Make sure that any packages you’re using don't have references to the old metrics spec. 1. Install the CLI with `pip install "dbt-metricflow[your_adapter_name]`. For example: @@ -65,8 +65,8 @@ This step is only relevant to users who want the legacy and new semantic layer t 1. Create a new deployment environment in dbt cloud and set the dbt version to 1.6. 2. Choose `Only run on a custom branch` and point to the branch that has the updated metric definition 3. Set the deployment schema to a temporary migration schema i.e `tmp_sl_migration`. Optional, you can create a new database for the migration. -4. Create a job to parse your project i.e `dbt parse` and run it. Make sure this job succeeds, There needs to be a succesful job in your environment in order to setup the semantic layer -5. In Account Settings > Projects > Project details click `Configure the Semantic Layer`. Under **********************Environment********************** select the deployment environment you created in the previous step. Save your configuration. +4. Create a job to parse your project i.e `dbt parse` and run it. Make sure this job succeeds, There needs to be a successful job in your environment in order to setup the semantic layer +5. In Account Settings > Projects > Project details click `Configure the Semantic Layer`. Under **Environment**select the deployment environment you created in the previous step. Save your configuration. 6. In the Project details page, click `Generate service token` and grant it `Semantic Layer Only` and `Metadata Only` permissions. Save this token securely - you will need it to connect to the semantic layer. At this point, both the new semantic layer and the old semantic layer will be running. The new semantic layer will be pointing at your migration branch with the updated metrics definitions. @@ -77,23 +77,26 @@ Now that your Semantic Layer is set up, you will need to update any downstream i **Migration guide for Hex** -1. Setup a new connection for the semantic layer for your account . Note your old connection will still work. This Loom walks through setting up your SL in Hex: -https://www.loom.com/share/118ca1a28e264cadaa531cc2f3c0af81 +1. Setup a new connection for the semantic layer for your account . Note your old connection will still work. The following Loom video guides you in setting up your Semantic Layer with Hex: -2. Re-create the dashboards/reports that we’re using the legacy semantic layer. + + +2. Re-create the dashboards/reports that we’re using the legacy dbt Semantic Layer. NOTE: You will need to update your connection to your production environment once you merge your changes to main. Currently this connection will be pointing at the semantic layer migration environment + **Migration guide for Mode** + 1. Setup a new connection for the semantic layer for your account. Follow [Mode's docs to setup your connect](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). 2. Re-create the dashboards/reports that we’re using the legacy semantic layer. ### Step 5: Merge your metrics migration branch to main, and upgrade your production environment to 1.6. 1. Upgrade your production environment to 1.6. Note the old metrics definitions are no longer valid so your dbt jobs will not pass. -2. Merge your updated metrics definitions to main. **************************************************************************************************************************At this point the legacy semantic layer will no longer work.************************************************************************************************************************** +2. Merge your updated metrics definitions to main. **At this point the legacy semantic layer will no longer work.** -If you created a new environment in Step 3: +If you created a new environment in [Step 3](#step-3-setup-the-semantic-layer-in-a-new-environment): 1. Update your Environment in Account Settings > Project Details > Edit Semantic Layer Configuration to point to your production environment 2. Delete your migration environment. Be sure to update your connections details in any down stream tools to account for the environment change. @@ -103,4 +106,4 @@ If you created a new environment in Step 3: - [MetricFlow quickstart guide](/docs/build/sl-getting-started) - [Example dbt project](https://github.com/dbt-labs/jaffle-sl-template) - [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) -- [Why we're deprecating the dbt_metrics package](/blog/deprecating-dbt-metrics) blog post \ No newline at end of file +- [Why we're deprecating the dbt_metrics package](/blog/deprecating-dbt-metrics) blog post diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 9b6ac963d62..0eeeb0a8222 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -25,9 +25,9 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 6. You should see connection information that allows you to connect to downstream tools. **Note:** If your tool supports JDBC, make sure to save the JDBC URL or individual components (like environment id and host). -7. Return to the **Project Details** page and select **Generate Service Token** to create a Semantic Layer service token. +7. Return to the **Project Details** page, then select **Generate Service Token** to create a [Semantic Layer Only service token](/docs/dbt-cloud-apis/service-tokens). -8. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. +8. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. For more info on how to integrate with partner integrations, refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). Great job, you've configured the Semantic Layer 🎉! diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md new file mode 100644 index 00000000000..c190afc3209 --- /dev/null +++ b/website/snippets/_sl-partner-links.md @@ -0,0 +1,17 @@ +The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. These are the following tools that integrate with the dbt Semantic Layer: + +- **Mode** — To connect to Mode, refer to [Mode documentation](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). + +- **Google Sheets** — Integration with Google Sheets coming soon + +- **Tools that allows you to write SQL** — They must meet one of the two criteria: + * Supports a generic JDBC driver option (such as DataGrip) or + * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. + +- **Hex** — Public docs coming soon, refer to the following Loom video to connect with Hex: + + + +**Note** before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only service token. + +For more info on the available partner integrations, refer [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations). From 2c5990ffbb1a29512058d2c476d26913e6580b95 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 3 Aug 2023 13:40:08 +0300 Subject: [PATCH 487/703] fix faq --- website/docs/docs/use-dbt-semantic-layer/sl-architecture.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index b03023b3ae2..f09066a50f0 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -36,7 +36,7 @@ The Semantic Layer includes these components:
      How are you storing my data? -The dbt Semantic Layer does not store, or cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool. +User data passes through the Semantic Layer on its way back from the warehouse. dbt Labs ensures security by authenticating through the customer's data warehouse. Currently, we don't cache data for the long term, but it might temporarily stay in the system for up to 10 minutes, usually less. In the future, we'll introduce a caching feature that allows us to cache data on our infrastructure for up to 24 hours.
      Is the dbt Semantic Layer open source? From 5249e11f20202ad6a275679ee625d89018fc1351 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 3 Aug 2023 13:42:08 +0300 Subject: [PATCH 488/703] fix bullet --- website/snippets/_sl-partner-links.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index c190afc3209..c25a159aa3c 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -8,10 +8,10 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi * Supports a generic JDBC driver option (such as DataGrip) or * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. -- **Hex** — Public docs coming soon, refer to the following Loom video to connect with Hex: +- **Hex** — Public docs coming soon, however, you can refer to the following Loom video to connect with Hex: -**Note** before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only service token. + * **Note** before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only service token. For more info on the available partner integrations, refer [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations). From 42d32b60417566784181e235236be40c0193931d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 13:18:06 +0100 Subject: [PATCH 489/703] Update website/docs/docs/dbt-cloud-apis/sl-jdbc.md --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 29960babd5c..89407020919 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -213,7 +213,7 @@ select * from {{ }} ``` -### Querying with Where Filters +### Query with where filters Where filters have three components: From 5e090abba5c25b6dbe487ec73d0268bece8e11bc Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 10:12:17 -0400 Subject: [PATCH 490/703] Update website/blog/2023-08-01-announcing-materialized-views.md --- website/blog/2023-08-01-announcing-materialized-views.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 4c93f52cbde..0f9abe8f7c9 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -62,7 +62,7 @@ config( ``` :::note -We are only supporting dynamic tables on Snowflake, not Snowflake’s materialized views (for a comparison between Snowflake Dynamic Tables and Materialized Views, refer docs). Dynamic tables are better suited for continuous transformations due to functionality like the ability to join, union, and aggregate on base tables, views , and other dynamic tables. Due to those features, they are also more aligned with what other data platforms are calling Materialized Views. For the sake of simplicity, when I refer to materialized views in this blog, I mean dynamic tables in Snowflake. +We are only supporting dynamic tables on Snowflake, not Snowflake’s materialized views (for a comparison between Snowflake Dynamic Tables and Materialized Views, refer [docs](https://docs.snowflake.com/en/user-guide/dynamic-tables-comparison#dynamic-tables-compared-to-materialized-views). Dynamic tables are better suited for continuous transformations due to functionality like the ability to join, union, and aggregate on base tables, views , and other dynamic tables. Due to those features, they are also more aligned with what other data platforms are calling Materialized Views. For the sake of simplicity, when I refer to materialized views in this blog, I mean dynamic tables in Snowflake. ::: Now that we support materialized views: how do you fit them into your dbt workflow? It’s easy to imagine a world of unregulated computation because you didn’t put in proper guardrails and now you have materialized views running rampant unbeknownst to you in your data platform. From a9478edf55d31e66db70fa5fd5dcb3a102f3a692 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 15:45:49 +0100 Subject: [PATCH 491/703] Update website/docs/docs/dbt-cloud-apis/sl-jdbc.md --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 89407020919..46a696e695e 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -51,7 +51,7 @@ jdbc:arrow-flight-sql://semantic-layer.cloud.getdbt.com:443?&environmentId=20233 | `jdbc:arrow-flight-sql://` | The protocol for the JDBC driver. | `jdbc:arrow-flight-sql://` | | `semantic-layer.cloud.getdbt.com` | The [access URL](/docs/cloud/about-cloud/regions-ip-addresses) for your account's dbt Cloud region. You must always add the `semantic-layer` prefix before the access URL. | For dbt Cloud deployment hosted in North America, use `semantic-layer.cloud.getdbt.com` | | `environmentId` | The unique identifier for the dbt production environment, you can retrieve this from the dbt Cloud URL
      when you navigate to **Environments** under **Deploy**. | If your URL ends with `.../environments/222222`, your `environmentId` is `222222`

      | -| `SERVICE_TOKEN` | dbt Cloud [service token](/docs/dbt-cloud-apis/service-tokens) with “Semantic Layer Only” permission. Create a new service token in your **Account Settings** page. | `token=SERVICE_TOKEN` | +| `SERVICE_TOKEN` | dbt Cloud [service token](/docs/dbt-cloud-apis/service-tokens) with “Semantic Layer Only” and "Metadata Only" permissions. Create a new service token on the **Account Settings** page. | `token=SERVICE_TOKEN` | *Note — If you're testing locally on a tool like DataGrip, you may also have to provide the following variable at the end or beginning of the JDBC URL `&disableCertificateVerification=true`. From 5fe107e33db52846856bd83b00eb27b579745b20 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 3 Aug 2023 18:14:45 +0300 Subject: [PATCH 492/703] remove avail integrations --- .../docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md | 1 - website/snippets/_sl-partner-links.md | 1 - 2 files changed, 2 deletions(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 2c4c7d4bd90..267942155c4 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -26,7 +26,6 @@ import AvailIntegrations from '/snippets/_sl-partner-links.md'; - ## Related docs - {frontMatter.meta.api_name} to learn how to integrate with the JDBC to query your metrics in downstream tools. diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index c25a159aa3c..32cbfe1b84b 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -14,4 +14,3 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi * **Note** before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only service token. -For more info on the available partner integrations, refer [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations). From 2cc9ca3989c7b15e9421804030c8fc649fab59f6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 16:18:24 +0100 Subject: [PATCH 493/703] Update _sl-partner-links.md --- website/snippets/_sl-partner-links.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index 32cbfe1b84b..accfe3b9ba1 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -12,5 +12,5 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi - * **Note** before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only service token. + * **Note**, before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only and Metadata Only service token. From fec0fab7d4a2f453f06b651a867c1df01acd88e7 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 16:20:08 +0100 Subject: [PATCH 494/703] Update _new-sl-setup.md --- website/snippets/_new-sl-setup.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 0eeeb0a8222..c03b9d5df5c 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -23,9 +23,9 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 6. You should see connection information that allows you to connect to downstream tools. -**Note:** If your tool supports JDBC, make sure to save the JDBC URL or individual components (like environment id and host). +**Note:** If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). -7. Return to the **Project Details** page, then select **Generate Service Token** to create a [Semantic Layer Only service token](/docs/dbt-cloud-apis/service-tokens). +7. Return to the **Project Details** page, then select **Generate Service Token** to create a [Semantic Layer Only an Metadata Only service token](/docs/dbt-cloud-apis/service-tokens). 8. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. For more info on how to integrate with partner integrations, refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). From e8ae050274d61025da408fcc79913d8603ac67ca Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 16:22:22 +0100 Subject: [PATCH 495/703] Update quickstart-sl.md --- website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index a51e7a58c74..b3c10941a40 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -168,7 +168,7 @@ You can query your metrics in a JDBC-enabled tool or use existing first-class in 1. Refer to the {frontMatter.meta.api_name} to learn how to use the JDBC API and what tools you can query it with. - * **Note** To authenticate, you need to [generate a service token](/docs/dbt-cloud-apis/service-tokens) and create a Semantic Layer Only service token. + * **Note** To authenticate, you need to [generate a service token](/docs/dbt-cloud-apis/service-tokens) with Semantic Layer Only and Metadata Only permissions. 2. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. From ed55ea556e86ee53a6e09b35076f912417658a8c Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Thu, 3 Aug 2023 18:30:51 +0300 Subject: [PATCH 496/703] remove embed --- website/snippets/_sl-partner-links.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index accfe3b9ba1..fa07a032b03 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -1,5 +1,7 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. These are the following tools that integrate with the dbt Semantic Layer: +- **Hex** — Public docs coming soon, however, you can refer to a detailed [Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a), which explains how to connect in more detail. + - **Mode** — To connect to Mode, refer to [Mode documentation](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). - **Google Sheets** — Integration with Google Sheets coming soon @@ -8,9 +10,5 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi * Supports a generic JDBC driver option (such as DataGrip) or * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. -- **Hex** — Public docs coming soon, however, you can refer to the following Loom video to connect with Hex: - - - - * **Note**, before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only and Metadata Only service token. +**Note**, before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only and Metadata Only service token. From f5516ff1b59c1006846b30523254f0f4ae4b288d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 16:47:34 +0100 Subject: [PATCH 497/703] Update _sl-partner-links.md --- website/snippets/_sl-partner-links.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index fa07a032b03..bd91f00ccd8 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -1,6 +1,6 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. These are the following tools that integrate with the dbt Semantic Layer: -- **Hex** — Public docs coming soon, however, you can refer to a detailed [Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a), which explains how to connect in more detail. +- **Hex** — Public docs are coming soon, however, you can refer to this [Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a) for more info on how to integrate with Hex. - **Mode** — To connect to Mode, refer to [Mode documentation](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). From fcd587106f81e8862f0bfca56eeb4e097e95999f Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Thu, 3 Aug 2023 08:53:45 -0700 Subject: [PATCH 498/703] IDE v1.2 release note (#3855) ## What are you changing in this pull request and why? Creating a new branch due to base branch history. Previous was https://github.com/dbt-labs/docs.getdbt.com/pull/3853 This PR adds the release note for IDE 1.2, including limitation and new features. ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --------- Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- .../release-notes/05-Aug-2023/ide-v1.2.md | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md diff --git a/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md new file mode 100644 index 00000000000..d2f86724b07 --- /dev/null +++ b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md @@ -0,0 +1,38 @@ +--- +title: "Update: Cloud IDE v1.2 with new service" +description: "August 2023: Cloud IDE now uses dbt-server to provide more reliable service and dbt Core feature parity, including support for commands like `dbt list`." +sidebar_label: "Update: Cloud IDE v1.2" +tags: [Aug-2023, IDE] +date: 2023-08-03 +sidebar_position: 8 +--- + +We're excited to announce that we replaced the backend service that powers the Cloud IDE with a more reliable server -- dbt-server. This significant update follows the rebuild of the IDE frontend last year. We're committed to improving our IDE to provide you with a better experience. + +Previously, the Cloud IDE used dbt-rpc, an outdated service that was unable to stay up-to-date with changes from dbt-core. The dbt-rpc integration used legacy dbt-core entry points and logging systems, causing it to be sluggish, brittle, and poorly tested. The Core team had been working around this outdated technology to avoid breaking it, which prevented them from developing with velocity and confidence. + +## New features + +- **Better dbt-core parity:** The Cloud IDE has better command parity with dbt-core, including support for commands like `dbt list` and improved treatment of flags like `--vars`, `--fail-fast`, etc. +- **Improved maintainability:** With the new dbt-server, it's easier to fix bugs and improve the overall quality of the product. With dbt-rpc, fixing bugs was a time-consuming and challenging process that required extensive testing. With the new service, we can identify and fix bugs more quickly, resulting in a more stable and reliable IDE. +- **A more reliable service:** Simplified architecture that's less prone to failure. + +### Product refinements + +- Improved `Preview` capabilities with Core v1.6 + IDE v1.2. [This Loom](https://www.loom.com/share/12838feb77bf463c8585fc1fc6aa161b) provides more information. + +### Bug fixes + +- Global page can become "inert" and stop handling clicks +- Switching back and forth between files in the git diff view can cause overwrite +- Browser gets stuck during markdown preview for doc with large table +- Editor right click menu is offset +- Unable to Cancel on the Save New File component when Closing All Files in the IDE +- Mouse flicker in the modal's file tree makes it difficult to select a folder where you want to save a new file +- Snapshots not showing in Lineage when inside a subfolder and is mixed cased named +- Tooltips do not work for Format and Save +- When a dbt invocation is in progress or if parsing is ongoing, attempting to switch branches will cause the `Git Branch` dropdown to close automatically + +### Known issues + +- `{{this}}` function does not display properly in preview/compile with dbt-server From 4da48098c73f5bd3b12493fd7a1bb45597f370dc Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 17:23:46 +0100 Subject: [PATCH 499/703] Update quickstart-sl.md fix typo --- website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index b3c10941a40..ddba7ec153a 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -189,7 +189,8 @@ User data passes through the Semantic Layer on its way back from the warehouse.
      Is the dbt Semantic Layer open source? The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

      The universal dbt Semantic Layer is available to all Team and Enterprise Plans during public beta. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally.
      - +

      + ## Next steps Ready to define your own metrics and bring consistency to data consumers? Review the following documents to get started: From 4f6d48218bc062e2b7475a534c3893359b500e0b Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 17:28:23 +0100 Subject: [PATCH 500/703] Update quickstart-sl.md fix header --- .../use-dbt-semantic-layer/quickstart-sl.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index ddba7ec153a..20729d1879d 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -172,6 +172,15 @@ You can query your metrics in a JDBC-enabled tool or use existing first-class in 2. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. +## Next steps + +Ready to define your own metrics and bring consistency to data consumers? Review the following documents to get started: + +- [Set up dbt Semantic Layer](docs/use-dbt-semantic-layer/setup-dbt-sl) +- [Build your metrics](/docs/build/build-metrics-intro) +- [About MetricFlow](/docs/build/about-metricflow) +- [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) + ## FAQs If you're encountering some issues when defining your metrics or setting up the dbt Semantic Layer, check out a list of answers to some of the questions or problems you may be experiencing. @@ -191,15 +200,6 @@ User data passes through the Semantic Layer on its way back from the warehouse. The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

      The universal dbt Semantic Layer is available to all Team and Enterprise Plans during public beta. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally.


      -## Next steps - -Ready to define your own metrics and bring consistency to data consumers? Review the following documents to get started: - -- [Set up dbt Semantic Layer](docs/use-dbt-semantic-layer/setup-dbt-sl) -- [Build your metrics](/docs/build/build-metrics-intro) -- [About MetricFlow](/docs/build/about-metricflow) -- [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) - From 6bdee85804277107a599ffc50a0a4f4ed9d69dc1 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 17:37:58 +0100 Subject: [PATCH 501/703] fix headers for integration guide --- website/docs/guides/migration/sl-migration.md | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index e6bc7e14d14..49977a5076e 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -58,14 +58,14 @@ You might need to audit metric values during the migration to ensure that the hi 1. Run the [dbt-audit](https://github.com/dbt-labs/dbt-audit-helper) helper on both models to compare the metric values. -### Step 3: **Setup the Semantic Layer in a new environment** +## Step 3: **Setup the Semantic Layer in a new environment** This step is only relevant to users who want the legacy and new semantic layer to run in parallel for a short time. This will let you recreate content in downstream tools like Hex and Mode with minimal downtime. If you do not need to recreate assets in these tools skip to step 5. -1. Create a new deployment environment in dbt cloud and set the dbt version to 1.6. +1. Create a new deployment environment in dbt Cloud and set the dbt version to 1.6. 2. Choose `Only run on a custom branch` and point to the branch that has the updated metric definition 3. Set the deployment schema to a temporary migration schema i.e `tmp_sl_migration`. Optional, you can create a new database for the migration. -4. Create a job to parse your project i.e `dbt parse` and run it. Make sure this job succeeds, There needs to be a successful job in your environment in order to setup the semantic layer +4. Create a job to parse your project, such as `dbt parse`, and run it. Make sure this job succeeds, There needs to be a successful job in your environment in order to set up the semantic layer 5. In Account Settings > Projects > Project details click `Configure the Semantic Layer`. Under **Environment**select the deployment environment you created in the previous step. Save your configuration. 6. In the Project details page, click `Generate service token` and grant it `Semantic Layer Only` and `Metadata Only` permissions. Save this token securely - you will need it to connect to the semantic layer. @@ -77,21 +77,22 @@ Now that your Semantic Layer is set up, you will need to update any downstream i **Migration guide for Hex** -1. Setup a new connection for the semantic layer for your account . Note your old connection will still work. The following Loom video guides you in setting up your Semantic Layer with Hex: +1. Setup a new connection for the semantic layer for your account. Note your old connection will still work. The following Loom video guides you in setting up your Semantic Layer with Hex: -2. Re-create the dashboards/reports that we’re using the legacy dbt Semantic Layer. +2. Re-create the dashboards/reports that you’re using the legacy dbt Semantic Layer. -NOTE: You will need to update your connection to your production environment once you merge your changes to main. Currently this connection will be pointing at the semantic layer migration environment +NOTE: You will need to update your connection to your production environment once you merge your changes to main. Currently, this connection will be pointing at the semantic layer migration environment **Migration guide for Mode** 1. Setup a new connection for the semantic layer for your account. Follow [Mode's docs to setup your connect](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). -2. Re-create the dashboards/reports that we’re using the legacy semantic layer. -### Step 5: Merge your metrics migration branch to main, and upgrade your production environment to 1.6. +2. Re-create the dashboards/reports that you’re using in the legacy semantic layer. + +## Step 5: Merge your metrics migration branch to main, and upgrade your production environment to 1.6. 1. Upgrade your production environment to 1.6. Note the old metrics definitions are no longer valid so your dbt jobs will not pass. 2. Merge your updated metrics definitions to main. **At this point the legacy semantic layer will no longer work.** @@ -99,7 +100,7 @@ NOTE: You will need to update your connection to your production environment onc If you created a new environment in [Step 3](#step-3-setup-the-semantic-layer-in-a-new-environment): 1. Update your Environment in Account Settings > Project Details > Edit Semantic Layer Configuration to point to your production environment -2. Delete your migration environment. Be sure to update your connections details in any down stream tools to account for the environment change. +2. Delete your migration environment. Be sure to update your connections details in any downstream tools to account for the environment change. ## Related docs From 3969ff359b4482a15307c483961e34c031d4b0f4 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 18:22:05 +0100 Subject: [PATCH 502/703] Update sl-revamp-beta.md Update per public messaging --- .../release-notes/05-Aug-2023/sl-revamp-beta.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md index 57d4218fb90..221c129b0d5 100644 --- a/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md @@ -4,7 +4,7 @@ description: "August 2023: The revamped dbt Semantic Layer, now available in pub sidebar_label: "Enhancement: Revamped dbt Semantic Layer in public beta" tags: [Aug-2023, dbt Semantic Layer] date: 2023-08-03 -sidebar_position: 9 +sidebar_position: 7 --- :::important @@ -48,9 +48,9 @@ The dbt Semantic Layer is currently available as a public beta, which means: - Developer plans or dbt Core users can use MetricFlow to define and test metrics using the dbt MetricFlow CLI only. -- **What** — Public beta provides early access to new features. The dbt Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability later this year. We may also introduce new functionality that isn't backwards compatible. We provide support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer in October 2023. For now, there will be no billing for usage. If you have any questions on pricing please reach out to your account representative. +- **What** — Public beta provides early access to new features. The dbt Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability later this year. We may also introduce new functionality that isn't backwards compatible. We provide support, and relevant service level objectives (SLOs) apply. If you have any questions on pricing please, reach out to your account representative. -- **When** — Public beta starts on July 31, 2023 and will end once the dbt Semantic Layer is available for GA in October 2023. +- **When** — Public beta starts on August 1st, 2023. - **Where** — You can experience the dbt Semantic Layer in dbt Cloud. Public beta is enabled at the account level so you don’t need to worry about enabling it per user. From a33e8c4694a6fdfac7494e42df5b88981d144cd6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Thu, 3 Aug 2023 18:22:43 +0100 Subject: [PATCH 503/703] Update sl-revamp-beta.md --- .../dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md index 221c129b0d5..921ed6dcd79 100644 --- a/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/sl-revamp-beta.md @@ -48,7 +48,7 @@ The dbt Semantic Layer is currently available as a public beta, which means: - Developer plans or dbt Core users can use MetricFlow to define and test metrics using the dbt MetricFlow CLI only. -- **What** — Public beta provides early access to new features. The dbt Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability later this year. We may also introduce new functionality that isn't backwards compatible. We provide support, and relevant service level objectives (SLOs) apply. If you have any questions on pricing please, reach out to your account representative. +- **What** — Public beta provides early access to new features. The dbt Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to general availability later this year. We may also introduce new functionality that isn't backwards compatible. We provide support, and relevant service level objectives (SLOs) apply. If you have any questions on pricing, please reach out to your account representative. - **When** — Public beta starts on August 1st, 2023. From e9b0349844a86b4e92b9ee6a0125ef8a26d20140 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 13:33:00 -0400 Subject: [PATCH 504/703] Update snowflake-configs.md fix the confusion --- website/docs/reference/resource-configs/snowflake-configs.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/website/docs/reference/resource-configs/snowflake-configs.md b/website/docs/reference/resource-configs/snowflake-configs.md index 09ebe11f4c7..f822773ee41 100644 --- a/website/docs/reference/resource-configs/snowflake-configs.md +++ b/website/docs/reference/resource-configs/snowflake-configs.md @@ -346,8 +346,6 @@ In the configuration format for the model SQL file: ## Dynamic Tables -[Dynamic Tables](https://docs.snowflake.com/en/user-guide/dynamic-tables-about) are Snowflake's version of Materialized Views. - ### Parameters dbt-snowflake requires the following parameters: From 5ab96171c67d4699ec11bd188f18e7ee8485a4f5 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 14:19:40 -0400 Subject: [PATCH 505/703] Update website/blog/2023-08-01-announcing-materialized-views.md --- website/blog/2023-08-01-announcing-materialized-views.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 0f9abe8f7c9..4df1981ca5b 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -1,5 +1,5 @@ --- -title: "Introducing Materialized Views and how to use them" +title: "Optimizing Materialized Views with dbt" description: "In dbt v1.6, we introduce support for materialized views. In this blog post, Amy will review how to use them in your workflow" slug: announcing-materialized-views From 678c3fca09a6e863d884a7510847ef1f23de9ac6 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 14:19:55 -0400 Subject: [PATCH 506/703] Update website/blog/2023-08-01-announcing-materialized-views.md --- website/blog/2023-08-01-announcing-materialized-views.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 4df1981ca5b..6140efc31f8 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -8,7 +8,7 @@ authors: [amy_chen] tags: [analytics craft, dbt product updates, data ecosystem] hide_table_of_contents: false -date: 2023-08-01 +date: 2023-08-03 is_featured: true --- From e7a92cddba1d313160ddecc499985c8ab6fb088a Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Thu, 3 Aug 2023 14:36:16 -0400 Subject: [PATCH 507/703] Delete dbt-semantic-layer.md --- .../dbt-semantic-layer.md | 146 ------------------ 1 file changed, 146 deletions(-) delete mode 100644 website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md b/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md deleted file mode 100644 index 320bebad3bf..00000000000 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-semantic-layer.md +++ /dev/null @@ -1,146 +0,0 @@ ---- -title: "dbt Semantic Layer" -id: dbt-semantic-layer -description: "Introducing the dbt Semantic Layer" -sidebar_label: "dbt Semantic Layer" ---- - -:::info Coming soon -The dbt Semantic Layer is undergoing a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. - -**What’s changing?** The dbt_metrics package will be [deprecated](https://docs.getdbt.com/blog/deprecating-dbt-metrics) and replaced with [MetricFlow](/docs/build/about-metricflow?version=1.6), a new way framework for defining metrics in dbt. - -**What's new?** Learn how to [Build your metrics](/docs/build/build-metrics-intro?version=1.6) using MetricFlow, one of the key components that makes up the revamped dbt Semantic Layer. It handles SQL query construction and defines the specification for dbt semantic models and metrics. -::: - -The dbt Semantic Layer allows data teams to centrally define essential business metrics like `revenue`, `customer`, and `churn` in the modeling layer (your dbt project) for consistent self-service within downstream data tools like BI and metadata management solutions. The dbt Semantic Layer provides the flexibility to define metrics on top of your existing models and then query those metrics and models in your analysis tools of choice. - -The result? You have less duplicate coding for data teams and more consistency for data consumers. - -The dbt Semantic Layer has four main parts: - -- Define your metrics in version-controlled dbt project code using MetricFlow -- Import your metric definitions via the [Discovery API](/docs/dbt-cloud-apis/discovery-api) -- Query your metric data via the dbt Proxy Server -- Explore and analyze dbt metrics in downstream tools - - - - -### What makes the dbt Semantic Layer different? - -The dbt Semantic Layer reduces code duplication and inconsistency regarding your business metrics. By moving metric definitions out of the BI layer and into the modeling layer, data teams can feel confident that different business units are working from the same metric definitions, regardless of their tool of choice. If a metric definition changes in dbt, it’s refreshed everywhere it’s invoked and creates consistency across all applications. You can also use the dbt Semantic Layer to query models and use macros. - - -## Prerequisites -To use the dbt Semantic Layer, you’ll need to meet the following: - - - - - -## Public Preview - -The dbt Semantic Layer is currently available for Public Preview, which means: - -— **Who?** The dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise) during Public Preview. Review [Product architecture](/docs/use-dbt-semantic-layer/dbt-semantic-layer#product-architecture) for more info on plan availability. - -- Team and Enterprise accounts will be able to set up the Semantic Layer and [Discovery API](/docs/dbt-cloud-apis/discovery-api) in the integrated -partner tool to import metric definition. -- Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse dbt metrics in external tools, which requires access to the Discovery API. - -— **What?** Public Previews provide early access to new features. The Semantic Layer is stable and you can use it for production deployments, but there may still be some planned additions and modifications to product behaviors before moving to General Availability. We may also introduce new functionality that is not backwards compatible. dbt Labs provides support, and relevant service level objectives (SLOs) apply. We will introduce pricing for the dbt Semantic Layer alongside the General Available (GA) release (future GA date to be announced). - -— **When?** Public Preview will end once the dbt Semantic Layer is available for GA. After GA, the dbt Semantic Layer will only be available to dbt Cloud **Team** and **Enterprise** plans. - -— **Where?** Public Preview is enabled at the account level so you don’t need to worry about enabling it per user. - -## Product architecture - -The dbt Semantic Layer product architecture includes four primary components: - -| Components | Information | Developer plans | Team plans | Enterprise plans | License | -| --- | --- | :---: | :---: | :---: | --- | -| **[dbt project](/docs/build/metrics)** | Define models and metrics in dbt Core. | ✅ | ✅ | ✅ | Open source, Core | -| **[dbt Server](https://github.com/dbt-labs/dbt-server)**| A persisted HTTP server that wraps dbt core to handle RESTful API requests for dbt operations. | ✅ | ✅ | ✅ | BSL | -| **SQL Proxy** | Reverse-proxy that accepts dbt-SQL (SQL + Jinja like query models and metrics, use macros), compiles the query into pure SQL, and executes the query against the data platform. | ✅

      _* Available during Public Preview only_ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | -| **[Discovery API](/docs/dbt-cloud-apis/discovery-api)** | Accesses metric definitions primarily via integrations and is the source of truth for objects defined in dbt projects (like models, macros, sources, metrics). The Discovery API is updated at the end of every dbt Cloud run. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise | - - - -dbt Semantic Layer integrations will: - -- Leverage the Discovery API to fetch a list of objects and their attributes, like metrics -- Generate a dbt-SQL statement -- Then query the SQL proxy to evaluate the results of this statement - - -## Manage metrics - -:::info 📌 - -New to dbt or metrics? Check out our [quickstart guide](/quickstarts) to build your first dbt project! If you'd like to define your first metrics, try our [Jaffle Shop](https://github.com/dbt-labs/jaffle_shop_metrics) example project. - -::: - -If you're not sure whether to define a metric in dbt or not, ask yourself the following: - -> *Is this something our teams consistently need to report on?* - -An important business metric should be: - -- Well-defined (the definition is agreed upon throughout the entire organization) -- Time-bound (able to be compared across time) - -A great example of this is **revenue** — it can be aggregated on multiple levels (weekly, monthly, etc) and is key for the broader business to understand. - -- ✅ `Monthly recurring revenue` or `Weekly active users` or `Average order value` -- ❌ `1-off experimental metric` - - -### Design and define metrics - -**Design metrics** -To read about best practices on structuring and organizing your metrics, review our [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog post first. - -**Define metrics** -You can define your metrics in `.yml` files nested under a metrics key and to design or define your own metrics in your dbt project, review the following documents:
      - -- [How to design and structure dbt metrics: Recommendations for getting started](https://docs.getdbt.com/blog/how-to-design-and-structure-metrics) blog to understand best practices for designing and structuring metrics in your dbt project -- [dbt metrics](/docs/build/metrics) for in-depth detail on attributes, filters, how to define and query your metrics and [dbt-metrics package](https://github.com/dbt-labs/dbt_metrics) -- [dbt Semantic Layer quickstart](/docs/use-dbt-semantic-layer/quickstart-semantic-layer) to get started -- [Understanding the components of the dbt Semantic Layer](https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer) blog post to see further examples - -Review our helpful metrics video below, which explains what metrics are, why they're important and how you can get started: - - - -## Related questions - -
      - How are you storing my data? -
      -
      The dbt Semantic Layer does not store, or cache, or log your data. On each query to the Semantic Layer, the resulting data passes through dbt Cloud servers where it is never stored, cached, or logged. The data from your data platform gets routed through dbt Cloud servers, to your connecting data tool.
      -
      -
      -
      - Is the dbt Semantic Layer open source? -
      -
      Some components of the dbt Semantic Layer are open source like dbt-core, the dbt_metrics package, and the BSL licensed dbt-server. The dbt Proxy Server (what is actually compiling the dbt code) and the Discovery API are not open source.



      - -During Public Preview, the dbt Semantic Layer is open to all dbt Cloud tiers (Developer, Team, and Enterprise).



      - -
        -
      • dbt Core users can define metrics in their dbt Core projects and calculate them using macros from the metrics package. To use the dbt Semantic Layer integrations, users will need to have a dbt Cloud account.


      • -
      • Developer accounts will be able to query the Proxy Server using SQL, but will not be able to browse pre-populated dbt metrics in external tools, which requires access to the Discovery API.


      • -
      • Team and Enterprise accounts will be able to set up the Semantic Layer and Discovery API in the integrated partner tool to import metric definition.
      • -
      -
      -
      - Is there a dbt Semantic Layer discussion hub? -
      -
      Yes absolutely! Join the dbt Slack community and #dbt-cloud-semantic-layer slack channel for all things related to the dbt Semantic Layer. -
      -
      -
      -

      From 9ea81b680b4a361799c2fed8eee7c4718bd77e25 Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Thu, 3 Aug 2023 11:42:23 -0700 Subject: [PATCH 508/703] Update ide-v1.2.md (#3856) ## What are you changing in this pull request and why? ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --------- Co-authored-by: Jason Ganz Co-authored-by: gwen windflower --- .../release-notes/05-Aug-2023/ide-v1.2.md | 4 +- website/package-lock.json | 88353 ++++++++-------- website/static/_redirects | 1 + 3 files changed, 43971 insertions(+), 44387 deletions(-) diff --git a/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md index d2f86724b07..10baa5cd6d7 100644 --- a/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md +++ b/website/docs/docs/dbt-versions/release-notes/05-Aug-2023/ide-v1.2.md @@ -1,5 +1,5 @@ --- -title: "Update: Cloud IDE v1.2 with new service" +title: "Update: Cloud IDE v1.2 includes a new service" description: "August 2023: Cloud IDE now uses dbt-server to provide more reliable service and dbt Core feature parity, including support for commands like `dbt list`." sidebar_label: "Update: Cloud IDE v1.2" tags: [Aug-2023, IDE] @@ -7,7 +7,7 @@ date: 2023-08-03 sidebar_position: 8 --- -We're excited to announce that we replaced the backend service that powers the Cloud IDE with a more reliable server -- dbt-server. This significant update follows the rebuild of the IDE frontend last year. We're committed to improving our IDE to provide you with a better experience. +We're excited to announce that we replaced the backend service that powers the Cloud IDE with a more reliable server -- dbt-server. Because this release contains foundational changes, IDE v1.2 requires dbt v1.6 or higher. This significant update follows the rebuild of the IDE frontend last year. We're committed to improving the IDE to provide you with a better experience. Previously, the Cloud IDE used dbt-rpc, an outdated service that was unable to stay up-to-date with changes from dbt-core. The dbt-rpc integration used legacy dbt-core entry points and logging systems, causing it to be sluggish, brittle, and poorly tested. The Core team had been working around this outdated technology to avoid breaking it, which prevented them from developing with velocity and confidence. diff --git a/website/package-lock.json b/website/package-lock.json index 9bb80cad9f9..b15a903e97f 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -1,44385 +1,43968 @@ -{ - "name": "website", - "version": "0.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "version": "0.0.0", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/plugin-ideal-image": "2.3.1", - "@docusaurus/preset-classic": "2.3.1", - "@docusaurus/theme-search-algolia": "2.3.1", - "@mdx-js/react": "^1.6.21", - "@monaco-editor/react": "^4.4.6", - "@stoplight/elements": "^7.7.17", - "@svgr/webpack": "^6.0.0", - "axios": "^0.27.2", - "classnames": "^2.3.1", - "clsx": "^1.1.1", - "color": "^3.1.2", - "core-js": "^3.20.0", - "feed": "^4.2.2", - "file-loader": "^6.2.0", - "fs": "0.0.2", - "gray-matter": "^4.0.3", - "hast-util-is-element": "^1.1.0", - "js-yaml": "^4.1.0", - "mobx": "^6.3.9", - "node-polyfill-webpack-plugin": "^1.1.4", - "papaparse": "^5.3.2", - "prism-react-renderer": "^1.2.1", - "query-string": "^8.1.0", - "raw-loader": "^4.0.2", - "react": "^17.0.1", - "react-dom": "^17.0.1", - "react-full-screen": "^1.1.1", - "react-is": "^18.1.0", - "react-tooltip": "^4.2.21", - "redoc": "^2.0.0-rc.57", - "rehype-katex": "^5.0.0", - "remark-math": "^3.0.1", - "sanitize-html": "^2.8.0", - "slugify": "^1.6.1", - "styled-components": "5.3.3", - "swiper": "^8.4.3", - "url-loader": "^4.1.1" - }, - "devDependencies": { - "@cypress/react": "^7.0.2", - "@cypress/webpack-dev-server": "^3.2.3", - "@docusaurus/eslint-plugin": "2.3.1", - "@swc/core": "^1.2.174", - "@swc/jest": "^0.2.20", - "@testing-library/jest-dom": "^5.16.2", - "@testing-library/react": "^12.1.3", - "@testing-library/user-event": "^13.5.0", - "@typescript-eslint/eslint-plugin": "^5.54.0", - "@typescript-eslint/parser": "^5.54.0", - "css-loader": "^3.4.2", - "cypress": "^12.6.0", - "dotenv": "^10.0.0", - "eslint": "^8.35.0", - "eslint-config-prettier": "^8.6.0", - "eslint-plugin-markdown": "^3.0.0", - "eslint-plugin-prettier": "^4.2.1", - "husky": "^8.0.3", - "jest": "^27.5.1", - "jest-cli": "^27.5.1", - "lint-staged": "^13.1.2", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "stream-http": "^3.2.0", - "style-loader": "^1.1.3", - "svg-inline-loader": "^0.8.2", - "tty-browserify": "0.0.1", - "webpack": "^5.75.0", - "webpack-dev-server": "^4.11.1" - }, - "optionalDependencies": { - "@dbt-labs/react-dbt-dag": "0.8.7" - } - }, - "node_modules/@adobe/css-tools": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", - "dev": true - }, - "node_modules/@algolia/autocomplete-core": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", - "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", - "dependencies": { - "@algolia/autocomplete-shared": "1.7.4" - } - }, - "node_modules/@algolia/autocomplete-preset-algolia": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", - "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", - "dependencies": { - "@algolia/autocomplete-shared": "1.7.4" - }, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/autocomplete-shared": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", - "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" - }, - "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", - "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", - "dependencies": { - "@algolia/cache-common": "4.16.0" - } - }, - "node_modules/@algolia/cache-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", - "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" - }, - "node_modules/@algolia/cache-in-memory": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", - "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", - "dependencies": { - "@algolia/cache-common": "4.16.0" - } - }, - "node_modules/@algolia/client-account": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", - "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-analytics": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", - "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", - "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", - "dependencies": { - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-personalization": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", - "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/client-search": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", - "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", - "dependencies": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/@algolia/events": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", - "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" - }, - "node_modules/@algolia/logger-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", - "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" - }, - "node_modules/@algolia/logger-console": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", - "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", - "dependencies": { - "@algolia/logger-common": "4.16.0" - } - }, - "node_modules/@algolia/requester-browser-xhr": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", - "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", - "dependencies": { - "@algolia/requester-common": "4.16.0" - } - }, - "node_modules/@algolia/requester-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", - "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" - }, - "node_modules/@algolia/requester-node-http": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", - "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", - "dependencies": { - "@algolia/requester-common": "4.16.0" - } - }, - "node_modules/@algolia/transporter": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", - "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", - "dependencies": { - "@algolia/cache-common": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/requester-common": "4.16.0" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", - "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", - "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.0", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.21.0", - "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.0", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.21.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", - "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", - "dependencies": { - "@babel/types": "^7.21.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", - "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", - "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", - "dependencies": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", - "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", - "dependencies": { - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "dependencies": { - "@babel/types": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "dependencies": { - "@babel/types": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "dependencies": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", - "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "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": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "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.21.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", - "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", - "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@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.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", - "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", - "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@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.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "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==", - "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==", - "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==", - "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==", - "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==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "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==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", - "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", - "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/template": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", - "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", - "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", - "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", - "dependencies": { - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", - "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-constant-elements": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", - "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-display-name": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", - "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", - "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-development": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", - "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", - "dependencies": { - "@babel/plugin-transform-react-jsx": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-pure-annotations": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", - "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "regenerator-transform": "^0.15.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", - "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", - "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-typescript": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", - "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", - "dependencies": { - "@babel/compat-data": "^7.20.1", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-async-generator-functions": "^7.20.1", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.2", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.20.2", - "@babel/plugin-transform-classes": "^7.20.2", - "@babel/plugin-transform-computed-properties": "^7.18.9", - "@babel/plugin-transform-destructuring": "^7.20.2", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.8", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.19.6", - "@babel/plugin-transform-modules-commonjs": "^7.19.6", - "@babel/plugin-transform-modules-systemjs": "^7.19.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.20.1", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.19.0", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-react": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", - "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-react-display-name": "^7.18.6", - "@babel/plugin-transform-react-jsx": "^7.18.6", - "@babel/plugin-transform-react-jsx-development": "^7.18.6", - "@babel/plugin-transform-react-pure-annotations": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", - "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.21.0", - "@babel/plugin-transform-typescript": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" - }, - "node_modules/@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", - "dependencies": { - "regenerator-runtime": "^0.13.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/runtime-corejs3": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", - "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", - "dependencies": { - "core-js-pure": "^3.25.1", - "regenerator-runtime": "^0.13.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", - "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.2", - "@babel/types": "^7.21.2", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", - "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", - "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "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/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@cypress/react": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", - "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", - "dev": true, - "peerDependencies": { - "@types/react": "^16.9.16 || ^17.0.0", - "cypress": "*", - "react": "^=16.x || ^=17.x", - "react-dom": "^=16.x || ^=17.x" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@cypress/request": { - "version": "2.88.11", - "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", - "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", - "dev": true, - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "http-signature": "~1.3.6", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "performance-now": "^2.1.0", - "qs": "~6.10.3", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^8.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@cypress/request/node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/@cypress/webpack-dev-server": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", - "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", - "dev": true, - "dependencies": { - "find-up": "6.3.0", - "fs-extra": "9.1.0", - "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", - "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", - "local-pkg": "0.4.1", - "speed-measure-webpack-plugin": "1.4.2", - "tslib": "^2.3.1", - "webpack-dev-server": "^4.7.4", - "webpack-merge": "^5.4.0" - } - }, - "node_modules/@cypress/xvfb": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", - "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", - "dev": true, - "dependencies": { - "debug": "^3.1.0", - "lodash.once": "^4.1.1" - } - }, - "node_modules/@cypress/xvfb/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/@dabh/diagnostics": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", - "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", - "dependencies": { - "colorspace": "1.1.x", - "enabled": "2.0.x", - "kuler": "^2.0.0" - } - }, - "node_modules/@dbt-labs/react-dbt-dag": { - "version": "0.8.7", - "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", - "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", - "license": "ISC", - "optional": true, - "dependencies": { - "classnames": "^2.3.1", - "dagre": "^0.8.5", - "graphlib": "^2.1.8", - "lodash": "^4.17.21", - "react-flow-renderer": "^10.3.8" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@docsearch/css": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", - "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" - }, - "node_modules/@docsearch/react": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", - "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", - "dependencies": { - "@algolia/autocomplete-core": "1.7.4", - "@algolia/autocomplete-preset-algolia": "1.7.4", - "@docsearch/css": "3.3.3", - "algoliasearch": "^4.0.0" - }, - "peerDependencies": { - "@types/react": ">= 16.8.0 < 19.0.0", - "react": ">= 16.8.0 < 19.0.0", - "react-dom": ">= 16.8.0 < 19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } - } - }, - "node_modules/@docusaurus/core": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", - "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", - "dependencies": { - "@babel/core": "^7.18.6", - "@babel/generator": "^7.18.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-runtime": "^7.18.6", - "@babel/preset-env": "^7.18.6", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@babel/runtime": "^7.18.6", - "@babel/runtime-corejs3": "^7.18.6", - "@babel/traverse": "^7.18.8", - "@docusaurus/cssnano-preset": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@slorber/static-site-generator-webpack-plugin": "^4.0.7", - "@svgr/webpack": "^6.2.1", - "autoprefixer": "^10.4.7", - "babel-loader": "^8.2.5", - "babel-plugin-dynamic-import-node": "^2.3.3", - "boxen": "^6.2.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "clean-css": "^5.3.0", - "cli-table3": "^0.6.2", - "combine-promises": "^1.1.0", - "commander": "^5.1.0", - "copy-webpack-plugin": "^11.0.0", - "core-js": "^3.23.3", - "css-loader": "^6.7.1", - "css-minimizer-webpack-plugin": "^4.0.0", - "cssnano": "^5.1.12", - "del": "^6.1.1", - "detect-port": "^1.3.0", - "escape-html": "^1.0.3", - "eta": "^2.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "html-minifier-terser": "^6.1.0", - "html-tags": "^3.2.0", - "html-webpack-plugin": "^5.5.0", - "import-fresh": "^3.3.0", - "leven": "^3.1.0", - "lodash": "^4.17.21", - "mini-css-extract-plugin": "^2.6.1", - "postcss": "^8.4.14", - "postcss-loader": "^7.0.0", - "prompts": "^2.4.2", - "react-dev-utils": "^12.0.1", - "react-helmet-async": "^1.3.0", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", - "react-loadable-ssr-addon-v5-slorber": "^1.0.1", - "react-router": "^5.3.3", - "react-router-config": "^5.1.1", - "react-router-dom": "^5.3.3", - "rtl-detect": "^1.0.4", - "semver": "^7.3.7", - "serve-handler": "^6.1.3", - "shelljs": "^0.8.5", - "terser-webpack-plugin": "^5.3.3", - "tslib": "^2.4.0", - "update-notifier": "^5.1.0", - "url-loader": "^4.1.1", - "wait-on": "^6.0.1", - "webpack": "^5.73.0", - "webpack-bundle-analyzer": "^4.5.0", - "webpack-dev-server": "^4.9.3", - "webpack-merge": "^5.8.0", - "webpackbar": "^5.0.2" - }, - "bin": { - "docusaurus": "bin/docusaurus.mjs" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/core/node_modules/css-loader": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", - "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/@docusaurus/core/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/core/node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/core/node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/@docusaurus/cssnano-preset": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", - "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", - "dependencies": { - "cssnano-preset-advanced": "^5.3.8", - "postcss": "^8.4.14", - "postcss-sort-media-queries": "^4.2.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/eslint-plugin": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", - "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", - "dev": true, - "dependencies": { - "@typescript-eslint/utils": "^5.30.5", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "eslint": ">=6" - } - }, - "node_modules/@docusaurus/logger": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", - "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", - "dependencies": { - "chalk": "^4.1.2", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/lqip-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", - "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", - "dependencies": { - "@docusaurus/logger": "2.3.1", - "file-loader": "^6.2.0", - "lodash": "^4.17.21", - "sharp": "^0.30.7", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/mdx-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", - "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", - "dependencies": { - "@babel/parser": "^7.18.8", - "@babel/traverse": "^7.18.8", - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@mdx-js/mdx": "^1.6.22", - "escape-html": "^1.0.3", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "image-size": "^1.0.1", - "mdast-util-to-string": "^2.0.0", - "remark-emoji": "^2.2.0", - "stringify-object": "^3.3.0", - "tslib": "^2.4.0", - "unified": "^9.2.2", - "unist-util-visit": "^2.0.3", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/mdx-loader/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/module-type-aliases": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", - "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", - "dependencies": { - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/types": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "@types/react-router-dom": "*", - "react-helmet-async": "*", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@docusaurus/plugin-content-blog": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", - "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "cheerio": "^1.0.0-rc.12", - "feed": "^4.2.2", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "reading-time": "^1.5.0", - "tslib": "^2.4.0", - "unist-util-visit": "^2.0.3", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-content-blog/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-content-docs": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", - "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@types/react-router-config": "^5.0.6", - "combine-promises": "^1.1.0", - "fs-extra": "^10.1.0", - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-content-docs/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-content-pages": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", - "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-content-pages/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-debug": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", - "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "fs-extra": "^10.1.0", - "react-json-view": "^1.21.3", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-debug/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/plugin-google-analytics": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", - "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-google-gtag": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", - "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-google-tag-manager": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", - "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-ideal-image": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", - "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/lqip-loader": "2.3.1", - "@docusaurus/responsive-loader": "^1.7.0", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@endiliey/react-ideal-image": "^0.0.11", - "react-waypoint": "^10.3.0", - "sharp": "^0.30.7", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "jimp": "*", - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - }, - "peerDependenciesMeta": { - "jimp": { - "optional": true - } - } - }, - "node_modules/@docusaurus/plugin-sitemap": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", - "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "sitemap": "^7.1.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/plugin-sitemap/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/preset-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", - "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/plugin-debug": "2.3.1", - "@docusaurus/plugin-google-analytics": "2.3.1", - "@docusaurus/plugin-google-gtag": "2.3.1", - "@docusaurus/plugin-google-tag-manager": "2.3.1", - "@docusaurus/plugin-sitemap": "2.3.1", - "@docusaurus/theme-classic": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-search-algolia": "2.3.1", - "@docusaurus/types": "2.3.1" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/react-loadable": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": "*" - } - }, - "node_modules/@docusaurus/responsive-loader": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", - "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", - "dependencies": { - "loader-utils": "^2.0.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "jimp": "*", - "sharp": "*" - }, - "peerDependenciesMeta": { - "jimp": { - "optional": true - }, - "sharp": { - "optional": true - } - } - }, - "node_modules/@docusaurus/theme-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", - "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", - "dependencies": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@mdx-js/react": "^1.6.22", - "clsx": "^1.2.1", - "copy-text-to-clipboard": "^3.0.1", - "infima": "0.2.0-alpha.42", - "lodash": "^4.17.21", - "nprogress": "^0.2.0", - "postcss": "^8.4.14", - "prism-react-renderer": "^1.3.5", - "prismjs": "^1.28.0", - "react-router-dom": "^5.3.3", - "rtlcss": "^3.5.0", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/theme-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", - "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", - "dependencies": { - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "clsx": "^1.2.1", - "parse-numeric-range": "^1.3.0", - "prism-react-renderer": "^1.3.5", - "tslib": "^2.4.0", - "use-sync-external-store": "^1.2.0", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/theme-search-algolia": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", - "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", - "dependencies": { - "@docsearch/react": "^3.1.1", - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "algoliasearch": "^4.13.1", - "algoliasearch-helper": "^3.10.0", - "clsx": "^1.2.1", - "eta": "^2.0.0", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/theme-search-algolia/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/theme-translations": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", - "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", - "dependencies": { - "fs-extra": "^10.1.0", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/theme-translations/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@docusaurus/types": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", - "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*", - "commander": "^5.1.0", - "joi": "^17.6.0", - "react-helmet-async": "^1.3.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0", - "webpack-merge": "^5.8.0" - }, - "peerDependencies": { - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0" - } - }, - "node_modules/@docusaurus/utils": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", - "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", - "dependencies": { - "@docusaurus/logger": "2.3.1", - "@svgr/webpack": "^6.2.1", - "escape-string-regexp": "^4.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "github-slugger": "^1.4.0", - "globby": "^11.1.0", - "gray-matter": "^4.0.3", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "micromatch": "^4.0.5", - "resolve-pathname": "^3.0.0", - "shelljs": "^0.8.5", - "tslib": "^2.4.0", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "@docusaurus/types": "*" - }, - "peerDependenciesMeta": { - "@docusaurus/types": { - "optional": true - } - } - }, - "node_modules/@docusaurus/utils-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", - "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", - "dependencies": { - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - }, - "peerDependencies": { - "@docusaurus/types": "*" - }, - "peerDependenciesMeta": { - "@docusaurus/types": { - "optional": true - } - } - }, - "node_modules/@docusaurus/utils-validation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", - "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", - "dependencies": { - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "joi": "^17.6.0", - "js-yaml": "^4.1.0", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=16.14" - } - }, - "node_modules/@docusaurus/utils/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "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==", - "dependencies": { - "@emotion/memoize": "0.7.4" - } - }, - "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==" - }, - "node_modules/@emotion/stylis": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", - "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" - }, - "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/@endiliey/react-ideal-image": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", - "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", - "engines": { - "node": ">= 8.9.0", - "npm": "> 3" - }, - "peerDependencies": { - "prop-types": ">=15", - "react": ">=0.14.x", - "react-waypoint": ">=9.0.2" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", - "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", - "devOptional": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": 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==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", - "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", - "devOptional": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@exodus/schemasafe": { - "version": "1.0.0-rc.10", - "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", - "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" - }, - "node_modules/@faker-js/faker": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", - "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" - }, - "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", - "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==", - "hasInstallScript": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", - "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.4.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/react-fontawesome": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", - "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", - "dependencies": { - "prop-types": "^15.8.1" - }, - "peerDependencies": { - "@fortawesome/fontawesome-svg-core": "~1 || ~6", - "react": ">=16.3" - } - }, - "node_modules/@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" - }, - "node_modules/@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "devOptional": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "devOptional": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "devOptional": 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/load-nyc-config/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/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@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.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/console/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/console/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", - "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "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/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/core/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/create-cache-key-function": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", - "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", - "dev": true, - "dependencies": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", - "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/fake-timers/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/fake-timers/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/globals/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", - "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, - "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/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/reporters/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/@jest/reporters/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/@jest/schemas": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", - "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", - "dependencies": { - "@sinclair/typebox": "^0.25.16" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@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.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", - "dev": true, - "dependencies": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/transform/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "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/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/@jsdevtools/ono": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", - "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" - }, - "node_modules/@juggle/resize-observer": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", - "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" - }, - "node_modules/@mdx-js/mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", - "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", - "dependencies": { - "@babel/core": "7.12.9", - "@babel/plugin-syntax-jsx": "7.12.1", - "@babel/plugin-syntax-object-rest-spread": "7.8.3", - "@mdx-js/util": "1.6.22", - "babel-plugin-apply-mdx-type-prop": "1.6.22", - "babel-plugin-extract-import-names": "1.6.22", - "camelcase-css": "2.0.1", - "detab": "2.0.4", - "hast-util-raw": "6.0.1", - "lodash.uniq": "4.5.0", - "mdast-util-to-hast": "10.0.1", - "remark-footnotes": "2.0.0", - "remark-mdx": "1.6.22", - "remark-parse": "8.0.3", - "remark-squeeze-paragraphs": "4.0.0", - "style-to-object": "0.3.0", - "unified": "9.2.0", - "unist-builder": "2.0.3", - "unist-util-visit": "2.0.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/mdx/node_modules/@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@mdx-js/mdx/node_modules/@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@mdx-js/mdx/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@mdx-js/mdx/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@mdx-js/mdx/node_modules/unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/react": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "react": "^16.13.1 || ^17.0.0" - } - }, - "node_modules/@mdx-js/util": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", - "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@monaco-editor/loader": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", - "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", - "dependencies": { - "state-local": "^1.0.6" - }, - "peerDependencies": { - "monaco-editor": ">= 0.21.0 < 1" - } - }, - "node_modules/@monaco-editor/react": { - "version": "4.4.6", - "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", - "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", - "dependencies": { - "@monaco-editor/loader": "^1.3.2", - "prop-types": "^15.7.2" - }, - "peerDependencies": { - "monaco-editor": ">= 0.25.0 < 1", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" - }, - "node_modules/@react-hook/debounce": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", - "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", - "dependencies": { - "@react-hook/latest": "^1.0.2" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/event": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", - "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/latest": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", - "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/passive-layout-effect": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", - "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/resize-observer": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", - "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1", - "@react-hook/latest": "^1.0.2", - "@react-hook/passive-layout-effect": "^1.2.0" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/size": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", - "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", - "dependencies": { - "@react-hook/passive-layout-effect": "^1.2.0", - "@react-hook/resize-observer": "^1.2.1" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/throttle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", - "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", - "dependencies": { - "@react-hook/latest": "^1.0.2" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-hook/window-size": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", - "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", - "dependencies": { - "@react-hook/debounce": "^3.0.0", - "@react-hook/event": "^1.2.1", - "@react-hook/throttle": "^2.2.0" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/@react-types/button": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", - "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", - "dependencies": { - "@react-types/shared": "^3.8.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/checkbox": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", - "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", - "dependencies": { - "@react-types/shared": "^3.18.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/checkbox/node_modules/@react-types/shared": { - "version": "3.18.1", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", - "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" - } - }, - "node_modules/@react-types/radio": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", - "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", - "dependencies": { - "@react-types/shared": "^3.8.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/shared": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", - "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/switch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", - "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", - "dependencies": { - "@react-types/checkbox": "^3.2.3", - "@react-types/shared": "^3.8.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@react-types/textfield": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", - "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", - "dependencies": { - "@react-types/shared": "^3.9.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-rc.1" - } - }, - "node_modules/@redocly/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", - "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/@redocly/ajv/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==" - }, - "node_modules/@redocly/openapi-core": { - "version": "1.0.0-beta.123", - "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", - "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", - "dependencies": { - "@redocly/ajv": "^8.11.0", - "@types/node": "^14.11.8", - "colorette": "^1.2.0", - "js-levenshtein": "^1.1.6", - "js-yaml": "^4.1.0", - "lodash.isequal": "^4.5.0", - "minimatch": "^5.0.1", - "node-fetch": "^2.6.1", - "pluralize": "^8.0.0", - "yaml-ast-parser": "0.0.43" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@redocly/openapi-core/node_modules/@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" - }, - "node_modules/@redocly/openapi-core/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@redocly/openapi-core/node_modules/colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" - }, - "node_modules/@redocly/openapi-core/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@rehooks/component-size": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", - "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", - "peerDependencies": { - "react": ">=16.8.0" - } - }, - "node_modules/@sentry/browser": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", - "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", - "dependencies": { - "@sentry/core": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/browser/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/core": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", - "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", - "dependencies": { - "@sentry/hub": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/hub": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", - "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", - "dependencies": { - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/hub/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/minimal": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", - "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", - "dependencies": { - "@sentry/hub": "6.19.7", - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/minimal/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/react": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", - "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", - "dependencies": { - "@sentry/browser": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "hoist-non-react-statics": "^3.3.2", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "react": "15.x || 16.x || 17.x || 18.x" - } - }, - "node_modules/@sentry/react/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sentry/types": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", - "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/utils": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", - "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", - "dependencies": { - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/utils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" - }, - "node_modules/@sideway/pinpoint": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" - }, - "node_modules/@sinclair/typebox": { - "version": "0.25.24", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", - "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" - }, - "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/@slorber/static-site-generator-webpack-plugin": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", - "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", - "dependencies": { - "eval": "^0.1.8", - "p-map": "^4.0.0", - "webpack-sources": "^3.2.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@stoplight/elements": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", - "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", - "dependencies": { - "@stoplight/elements-core": "~7.7.17", - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "file-saver": "^2.0.5", - "lodash": "^4.17.19", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0" - }, - "engines": { - "node": ">=14.13" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/elements-core": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", - "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", - "dependencies": { - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-ref-parser": "^9.0.5", - "@stoplight/json-schema-sampler": "0.2.3", - "@stoplight/json-schema-viewer": "^4.9.0", - "@stoplight/markdown-viewer": "^5.6.0", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/mosaic-code-editor": "^1.33.0", - "@stoplight/mosaic-code-viewer": "^1.33.0", - "@stoplight/path": "^1.3.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "httpsnippet-lite": "^3.0.1", - "jotai": "1.3.9", - "json-schema": "^0.4.0", - "lodash": "^4.17.19", - "nanoid": "^3.1.32", - "prop-types": "^15.7.2", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0", - "react-router-hash-link": "^2.1.0", - "tslib": "^2.1.0", - "urijs": "^1.19.11", - "util": "^0.12.4", - "xml-formatter": "^2.6.1" - }, - "engines": { - "node": ">=14.13" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/http-spec": { - "version": "5.9.4", - "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", - "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", - "dependencies": { - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-generator": "1.0.2", - "@stoplight/types": "^13.15.0", - "@types/json-schema": "7.0.11", - "@types/swagger-schema-official": "~2.0.22", - "@types/type-is": "^1.6.3", - "fnv-plus": "^1.3.1", - "lodash.isequalwith": "^4.4.0", - "lodash.pick": "^4.4.0", - "lodash.pickby": "^4.6.0", - "openapi3-ts": "^2.0.2", - "postman-collection": "^4.1.2", - "tslib": "^2.3.1", - "type-is": "^1.6.18" - }, - "engines": { - "node": ">=14.13" - } - }, - "node_modules/@stoplight/json": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", - "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", - "dependencies": { - "@stoplight/ordered-object-literal": "^1.0.3", - "@stoplight/path": "^1.3.2", - "@stoplight/types": "^13.6.0", - "jsonc-parser": "~2.2.1", - "lodash": "^4.17.21", - "safe-stable-stringify": "^1.1" - }, - "engines": { - "node": ">=8.3.0" - } - }, - "node_modules/@stoplight/json-schema-generator": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", - "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", - "dependencies": { - "cross-fetch": "^3.1.5", - "json-promise": "1.1.x", - "minimist": "1.2.6", - "mkdirp": "0.5.x", - "pretty-data": "0.40.x" - }, - "bin": { - "json-schema-generator": "bin/cli.js" - } - }, - "node_modules/@stoplight/json-schema-generator/node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - }, - "node_modules/@stoplight/json-schema-merge-allof": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", - "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", - "dependencies": { - "compute-lcm": "^1.1.0", - "json-schema-compare": "^0.2.2", - "lodash": "^4.17.4" - } - }, - "node_modules/@stoplight/json-schema-ref-parser": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", - "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", - "dependencies": { - "@jsdevtools/ono": "^7.1.3", - "@stoplight/path": "^1.3.2", - "@stoplight/yaml": "^4.0.2", - "call-me-maybe": "^1.0.1", - "fastestsmallesttextencoderdecoder": "^1.0.22", - "isomorphic-fetch": "^3.0.0", - "node-abort-controller": "^3.0.1" - } - }, - "node_modules/@stoplight/json-schema-sampler": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", - "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", - "dependencies": { - "@types/json-schema": "^7.0.7", - "json-pointer": "^0.6.1" - } - }, - "node_modules/@stoplight/json-schema-tree": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", - "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", - "dependencies": { - "@stoplight/json": "^3.12.0", - "@stoplight/json-schema-merge-allof": "^0.7.8", - "@stoplight/lifecycle": "^2.3.2", - "@types/json-schema": "^7.0.7", - "magic-error": "0.0.1" - }, - "engines": { - "node": ">=10.18" - } - }, - "node_modules/@stoplight/json-schema-viewer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", - "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", - "dependencies": { - "@stoplight/json": "^3.20.1", - "@stoplight/json-schema-tree": "^2.2.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@types/json-schema": "^7.0.7", - "classnames": "^2.2.6", - "fnv-plus": "^1.3.1", - "jotai": "^1.4.5", - "lodash": "^4.17.19" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "@stoplight/markdown-viewer": "^5", - "@stoplight/mosaic": "^1.32", - "@stoplight/mosaic-code-viewer": "^1.32", - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/json-schema-viewer/node_modules/jotai": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", - "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", - "engines": { - "node": ">=12.20.0" - }, - "peerDependencies": { - "@babel/core": "*", - "@babel/template": "*", - "jotai-devtools": "*", - "jotai-immer": "*", - "jotai-optics": "*", - "jotai-redux": "*", - "jotai-tanstack-query": "*", - "jotai-urql": "*", - "jotai-valtio": "*", - "jotai-xstate": "*", - "jotai-zustand": "*", - "react": ">=16.8" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@babel/template": { - "optional": true - }, - "jotai-devtools": { - "optional": true - }, - "jotai-immer": { - "optional": true - }, - "jotai-optics": { - "optional": true - }, - "jotai-redux": { - "optional": true - }, - "jotai-tanstack-query": { - "optional": true - }, - "jotai-urql": { - "optional": true - }, - "jotai-valtio": { - "optional": true - }, - "jotai-xstate": { - "optional": true - }, - "jotai-zustand": { - "optional": true - } - } - }, - "node_modules/@stoplight/json/node_modules/jsonc-parser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", - "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" - }, - "node_modules/@stoplight/lifecycle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", - "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", - "dependencies": { - "tslib": "^2.3.1", - "wolfy87-eventemitter": "~5.2.8" - }, - "engines": { - "node": ">=8.3.0" - } - }, - "node_modules/@stoplight/markdown": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", - "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", - "dependencies": { - "@stoplight/types": "^12.3.0", - "@stoplight/yaml": "^4.2.2", - "github-slugger": "^1.3.0", - "hast-util-whitespace": "^2.0.0", - "lodash": "^4.17.21", - "mdast-util-to-string": "^3.1.0", - "remark-frontmatter": "^3.0.0", - "remark-gfm": "^1.0.0", - "remark-parse": "^9.0.0", - "remark-stringify": "^9.0.1", - "tslib": "^2.3.0", - "unified": "^9.2.1", - "unist-util-select": "^4.0.0", - "unist-util-visit": "^3.1.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@stoplight/markdown-viewer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", - "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", - "dependencies": { - "@rehooks/component-size": "^1.0.3", - "@stoplight/markdown": "^3.1.3", - "@stoplight/react-error-boundary": "^2.0.0", - "deepmerge": "^4.2.2", - "hast-to-hyperscript": "^10.0.1", - "hast-util-raw": "7.0.0", - "hast-util-sanitize": "^4.0.0", - "hastscript": "^7.0.2", - "mdast-util-to-hast": "^11.1.1", - "remark-parse": "^9.0.0", - "unified": "^9.2.1", - "unist-builder": "^3.0.0", - "unist-util-select": "^4.0.1", - "unist-util-visit": "^3.1.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "@stoplight/mosaic": "^1.24.4", - "@stoplight/mosaic-code-viewer": "^1.24.4", - "react": ">=16.14", - "react-dom": ">=16.14" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/@types/parse5": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", - "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" - }, - "node_modules/@stoplight/markdown-viewer/node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-to-hyperscript": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", - "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-object": "^0.4.1", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", - "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", - "dependencies": { - "@types/hast": "^2.0.0", - "@types/unist": "^2.0.0", - "hastscript": "^7.0.0", - "property-information": "^6.0.0", - "vfile": "^5.0.0", - "vfile-location": "^4.0.0", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5/node_modules/vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-parse-selector": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", - "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", - "dependencies": { - "@types/hast": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-raw": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", - "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", - "dependencies": { - "@types/hast": "^2.0.0", - "@types/parse5": "^6.0.0", - "@types/unist": "^2.0.3", - "hast-util-from-parse5": "^7.0.0", - "hast-util-to-parse5": "^7.0.0", - "html-void-elements": "^2.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-to-parse5": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", - "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/hastscript": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", - "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^3.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/html-void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", - "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", - "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", - "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", - "dependencies": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "@types/mdurl": "^1.0.0", - "mdast-util-definitions": "^5.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^3.0.0", - "unist-util-generated": "^2.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/@stoplight/markdown-viewer/node_modules/property-information": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", - "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "dependencies": { - "mdast-util-from-markdown": "^0.8.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/style-to-object": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", - "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", - "dependencies": { - "inline-style-parser": "0.1.1" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-builder": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", - "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-generated": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", - "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-position": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", - "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-stringify-position": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", - "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", - "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", - "dependencies": { - "@types/unist": "^2.0.0", - "vfile": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location/node_modules/vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/web-namespaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", - "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown-viewer/node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@stoplight/markdown/node_modules/@stoplight/types": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", - "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", - "dependencies": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/markdown/node_modules/mdast-util-to-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", - "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", - "dependencies": { - "@types/mdast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "dependencies": { - "mdast-util-from-markdown": "^0.8.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/markdown/node_modules/unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@stoplight/mosaic": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", - "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", - "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/button": "3.4.1", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@react-types/textfield": "3.3.0", - "@stoplight/types": "^13.7.0", - "@types/react": "^17.0.3", - "@types/react-dom": "^17.0.3", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "peerDependencies": { - "react": ">= 16.14" - } - }, - "node_modules/@stoplight/mosaic-code-editor": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", - "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", - "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/mosaic-code-viewer": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "peerDependencies": { - "react": ">= 16.14" - } - }, - "node_modules/@stoplight/mosaic-code-editor/node_modules/use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1" - }, - "peerDependencies": { - "react": "16.8.0 - 18", - "react-dom": "16.8.0 - 18" - } - }, - "node_modules/@stoplight/mosaic-code-viewer": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", - "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", - "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "peerDependencies": { - "react": ">= 16.14" - } - }, - "node_modules/@stoplight/mosaic-code-viewer/node_modules/use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1" - }, - "peerDependencies": { - "react": "16.8.0 - 18", - "react-dom": "16.8.0 - 18" - } - }, - "node_modules/@stoplight/mosaic/node_modules/use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "dependencies": { - "@juggle/resize-observer": "^3.3.1" - }, - "peerDependencies": { - "react": "16.8.0 - 18", - "react-dom": "16.8.0 - 18" - } - }, - "node_modules/@stoplight/ordered-object-literal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", - "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/path": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", - "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@stoplight/react-error-boundary": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", - "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", - "dependencies": { - "@sentry/react": "^6.13.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@stoplight/types": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", - "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", - "dependencies": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - }, - "engines": { - "node": "^12.20 || >=14.13" - } - }, - "node_modules/@stoplight/yaml": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", - "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", - "dependencies": { - "@stoplight/ordered-object-literal": "^1.0.1", - "@stoplight/types": "^13.0.0", - "@stoplight/yaml-ast-parser": "0.0.48", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=10.8" - } - }, - "node_modules/@stoplight/yaml-ast-parser": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", - "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" - }, - "node_modules/@svgr/babel-plugin-add-jsx-attribute": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", - "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", - "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", - "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", - "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-svg-dynamic-title": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", - "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-svg-em-dimensions": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", - "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-transform-react-native-svg": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", - "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-plugin-transform-svg-component": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", - "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/babel-preset": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", - "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", - "dependencies": { - "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", - "@svgr/babel-plugin-remove-jsx-attribute": "*", - "@svgr/babel-plugin-remove-jsx-empty-expression": "*", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", - "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", - "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", - "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", - "@svgr/babel-plugin-transform-svg-component": "^6.5.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@svgr/core": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", - "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", - "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/hast-util-to-babel-ast": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", - "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", - "dependencies": { - "@babel/types": "^7.20.0", - "entities": "^4.4.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@svgr/plugin-jsx": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", - "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", - "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/hast-util-to-babel-ast": "^6.5.1", - "svg-parser": "^2.0.4" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@svgr/core": "^6.0.0" - } - }, - "node_modules/@svgr/plugin-svgo": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", - "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", - "dependencies": { - "cosmiconfig": "^7.0.1", - "deepmerge": "^4.2.2", - "svgo": "^2.8.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - }, - "peerDependencies": { - "@svgr/core": "*" - } - }, - "node_modules/@svgr/webpack": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", - "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", - "dependencies": { - "@babel/core": "^7.19.6", - "@babel/plugin-transform-react-constant-elements": "^7.18.12", - "@babel/preset-env": "^7.19.4", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@svgr/core": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "@svgr/plugin-svgo": "^6.5.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" - } - }, - "node_modules/@swc/core": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", - "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", - "dev": true, - "hasInstallScript": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/swc" - }, - "optionalDependencies": { - "@swc/core-darwin-arm64": "1.3.37", - "@swc/core-darwin-x64": "1.3.37", - "@swc/core-linux-arm-gnueabihf": "1.3.37", - "@swc/core-linux-arm64-gnu": "1.3.37", - "@swc/core-linux-arm64-musl": "1.3.37", - "@swc/core-linux-x64-gnu": "1.3.37", - "@swc/core-linux-x64-musl": "1.3.37", - "@swc/core-win32-arm64-msvc": "1.3.37", - "@swc/core-win32-ia32-msvc": "1.3.37", - "@swc/core-win32-x64-msvc": "1.3.37" - } - }, - "node_modules/@swc/core-darwin-arm64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", - "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-darwin-x64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", - "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", - "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", - "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", - "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", - "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", - "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", - "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", - "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", - "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/jest": { - "version": "0.2.24", - "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", - "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", - "dev": true, - "dependencies": { - "@jest/create-cache-key-function": "^27.4.2", - "jsonc-parser": "^3.2.0" - }, - "engines": { - "npm": ">= 7.0.0" - }, - "peerDependencies": { - "@swc/core": "*" - } - }, - "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dependencies": { - "defer-to-connect": "^1.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@testing-library/dom": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", - "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@testing-library/jest-dom": { - "version": "5.16.5", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", - "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", - "dev": true, - "dependencies": { - "@adobe/css-tools": "^4.0.1", - "@babel/runtime": "^7.9.2", - "@types/testing-library__jest-dom": "^5.9.1", - "aria-query": "^5.0.0", - "chalk": "^3.0.0", - "css.escape": "^1.5.1", - "dom-accessibility-api": "^0.5.6", - "lodash": "^4.17.15", - "redent": "^3.0.0" - }, - "engines": { - "node": ">=8", - "npm": ">=6", - "yarn": ">=1" - } - }, - "node_modules/@testing-library/jest-dom/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/@testing-library/react": { - "version": "12.1.5", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", - "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^8.0.0", - "@types/react-dom": "<18.0.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "react": "<18.0.0", - "react-dom": "<18.0.0" - } - }, - "node_modules/@testing-library/react/node_modules/@testing-library/dom": { - "version": "8.20.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", - "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@testing-library/user-event": { - "version": "13.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", - "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5" - }, - "engines": { - "node": ">=10", - "npm": ">=6" - }, - "peerDependencies": { - "@testing-library/dom": ">=7.21.4" - } - }, - "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/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@types/aria-query": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", - "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", - "dev": true - }, - "node_modules/@types/babel__core": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", - "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", - "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.18.3", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", - "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.3.0" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/d3": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", - "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", - "optional": true, - "dependencies": { - "@types/d3-array": "*", - "@types/d3-axis": "*", - "@types/d3-brush": "*", - "@types/d3-chord": "*", - "@types/d3-color": "*", - "@types/d3-contour": "*", - "@types/d3-delaunay": "*", - "@types/d3-dispatch": "*", - "@types/d3-drag": "*", - "@types/d3-dsv": "*", - "@types/d3-ease": "*", - "@types/d3-fetch": "*", - "@types/d3-force": "*", - "@types/d3-format": "*", - "@types/d3-geo": "*", - "@types/d3-hierarchy": "*", - "@types/d3-interpolate": "*", - "@types/d3-path": "*", - "@types/d3-polygon": "*", - "@types/d3-quadtree": "*", - "@types/d3-random": "*", - "@types/d3-scale": "*", - "@types/d3-scale-chromatic": "*", - "@types/d3-selection": "*", - "@types/d3-shape": "*", - "@types/d3-time": "*", - "@types/d3-time-format": "*", - "@types/d3-timer": "*", - "@types/d3-transition": "*", - "@types/d3-zoom": "*" - } - }, - "node_modules/@types/d3-array": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", - "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", - "optional": true - }, - "node_modules/@types/d3-axis": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", - "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-brush": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", - "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-chord": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", - "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", - "optional": true - }, - "node_modules/@types/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", - "optional": true - }, - "node_modules/@types/d3-contour": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", - "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", - "optional": true, - "dependencies": { - "@types/d3-array": "*", - "@types/geojson": "*" - } - }, - "node_modules/@types/d3-delaunay": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", - "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", - "optional": true - }, - "node_modules/@types/d3-dispatch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", - "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", - "optional": true - }, - "node_modules/@types/d3-drag": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", - "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", - "optional": true - }, - "node_modules/@types/d3-ease": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", - "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", - "optional": true - }, - "node_modules/@types/d3-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", - "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", - "optional": true, - "dependencies": { - "@types/d3-dsv": "*" - } - }, - "node_modules/@types/d3-force": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", - "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", - "optional": true - }, - "node_modules/@types/d3-format": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", - "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", - "optional": true - }, - "node_modules/@types/d3-geo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", - "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", - "optional": true, - "dependencies": { - "@types/geojson": "*" - } - }, - "node_modules/@types/d3-hierarchy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", - "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", - "optional": true - }, - "node_modules/@types/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", - "optional": true, - "dependencies": { - "@types/d3-color": "*" - } - }, - "node_modules/@types/d3-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", - "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", - "optional": true - }, - "node_modules/@types/d3-polygon": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", - "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", - "optional": true - }, - "node_modules/@types/d3-quadtree": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", - "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", - "optional": true - }, - "node_modules/@types/d3-random": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", - "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", - "optional": true - }, - "node_modules/@types/d3-scale": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", - "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", - "optional": true, - "dependencies": { - "@types/d3-time": "*" - } - }, - "node_modules/@types/d3-scale-chromatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", - "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", - "optional": true - }, - "node_modules/@types/d3-selection": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", - "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", - "optional": true - }, - "node_modules/@types/d3-shape": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", - "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", - "optional": true, - "dependencies": { - "@types/d3-path": "*" - } - }, - "node_modules/@types/d3-time": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", - "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", - "optional": true - }, - "node_modules/@types/d3-time-format": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", - "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", - "optional": true - }, - "node_modules/@types/d3-timer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", - "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", - "optional": true - }, - "node_modules/@types/d3-transition": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", - "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", - "optional": true, - "dependencies": { - "@types/d3-selection": "*" - } - }, - "node_modules/@types/d3-zoom": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", - "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", - "optional": true, - "dependencies": { - "@types/d3-interpolate": "*", - "@types/d3-selection": "*" - } - }, - "node_modules/@types/eslint": { - "version": "8.21.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", - "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" - }, - "node_modules/@types/express": { - "version": "4.17.17", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", - "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.33", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", - "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/geojson": { - "version": "7946.0.10", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", - "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", - "optional": true - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/har-format": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", - "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" - }, - "node_modules/@types/hast": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", - "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/history": { - "version": "4.7.11", - "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", - "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" - }, - "node_modules/@types/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" - }, - "node_modules/@types/http-proxy": { - "version": "1.17.10", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", - "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" - }, - "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==", - "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==", - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.4.0", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", - "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/jest/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/@types/jest/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@types/js-cookie": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", - "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" - }, - "node_modules/@types/katex": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", - "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" - }, - "node_modules/@types/mdast": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", - "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/mdurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", - "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" - }, - "node_modules/@types/node": { - "version": "18.14.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", - "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" - }, - "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/parse5": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", - "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" - }, - "node_modules/@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", - "dev": true - }, - "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "node_modules/@types/react": { - "version": "17.0.53", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", - "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "17.0.19", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", - "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", - "dependencies": { - "@types/react": "^17" - } - }, - "node_modules/@types/react-router": { - "version": "5.1.20", - "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", - "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*" - } - }, - "node_modules/@types/react-router-config": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", - "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "node_modules/@types/react-router-dom": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", - "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "node_modules/@types/resize-observer-browser": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", - "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", - "optional": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" - }, - "node_modules/@types/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", - "dependencies": { - "@types/node": "*" - } - }, - "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/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", - "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", - "dev": true - }, - "node_modules/@types/sizzle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", - "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", - "dev": true - }, - "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, - "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/swagger-schema-official": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", - "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" - }, - "node_modules/@types/tapable": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", - "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", - "dev": true - }, - "node_modules/@types/testing-library__jest-dom": { - "version": "5.14.5", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", - "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", - "dev": true, - "dependencies": { - "@types/jest": "*" - } - }, - "node_modules/@types/triple-beam": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", - "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" - }, - "node_modules/@types/type-is": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", - "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/uglify-js": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", - "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", - "dev": true, - "dependencies": { - "source-map": "^0.6.1" - } - }, - "node_modules/@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" - }, - "node_modules/@types/webpack": { - "version": "4.41.33", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", - "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/@types/webpack-sources": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", - "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - } - }, - "node_modules/@types/webpack-sources/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@types/ws": { - "version": "8.5.4", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", - "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" - }, - "node_modules/@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", - "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/type-utils": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", - "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", - "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", - "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", - "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", - "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", - "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", - "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.54.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "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==", - "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==" - }, - "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==" - }, - "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==" - }, - "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==", - "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==" - }, - "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==", - "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==", - "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==", - "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==" - }, - "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==", - "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==", - "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==", - "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==", - "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==", - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xobotyi/scrollbar-width": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", - "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" - }, - "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==" - }, - "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==" - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "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-globals/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-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "peerDependencies": { - "acorn": "^8" - } - }, - "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==", - "devOptional": 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/address": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", - "engines": { - "node": ">= 10.0.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/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "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-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/ajv-formats/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==" - }, - "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==", - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/algoliasearch": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", - "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", - "dependencies": { - "@algolia/cache-browser-local-storage": "4.16.0", - "@algolia/cache-common": "4.16.0", - "@algolia/cache-in-memory": "4.16.0", - "@algolia/client-account": "4.16.0", - "@algolia/client-analytics": "4.16.0", - "@algolia/client-common": "4.16.0", - "@algolia/client-personalization": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/logger-console": "4.16.0", - "@algolia/requester-browser-xhr": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/requester-node-http": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "node_modules/algoliasearch-helper": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", - "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", - "dependencies": { - "@algolia/events": "^4.0.1" - }, - "peerDependencies": { - "algoliasearch": ">= 3.1 < 6" - } - }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dependencies": { - "string-width": "^4.1.0" - } - }, - "node_modules/ansi-align/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==" - }, - "node_modules/ansi-align/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "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-escapes/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/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "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==", - "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.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "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/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "dependencies": { - "deep-equal": "^2.0.5" - } - }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.reduce": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", - "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" - }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "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/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - } - }, - "node_modules/babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", - "dev": true, - "dependencies": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "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.3.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" - } - }, - "node_modules/babel-plugin-apply-mdx-type-prop": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", - "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4", - "@mdx-js/util": "1.6.22" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "@babel/core": "^7.11.6" - } - }, - "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "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==", - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-extract-import-names": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", - "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "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": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", - "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-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-styled-components": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", - "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.0", - "@babel/helper-module-imports": "^7.16.0", - "babel-plugin-syntax-jsx": "^6.18.0", - "lodash": "^4.17.11", - "picomatch": "^2.3.0" - }, - "peerDependencies": { - "styled-components": ">= 2" - } - }, - "node_modules/babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" - }, - "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.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", - "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "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/bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==" - }, - "node_modules/base16": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", - "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" - }, - "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/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" - }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", - "engines": { - "node": ">=0.6" - } - }, - "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==", - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/blob-util": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", - "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", - "dev": true - }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" - }, - "node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/bonjour-service": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", - "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", - "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" - }, - "node_modules/boxen": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", - "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", - "dependencies": { - "ansi-align": "^3.0.1", - "camelcase": "^6.2.0", - "chalk": "^4.1.2", - "cli-boxes": "^3.0.0", - "string-width": "^5.0.1", - "type-fest": "^2.5.0", - "widest-line": "^4.0.1", - "wrap-ansi": "^8.0.1" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "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==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/broadcast-channel": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", - "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "detect-node": "^2.1.0", - "js-sha3": "0.8.0", - "microseconds": "0.2.0", - "nano-time": "1.0.0", - "oblivious-set": "1.0.0", - "rimraf": "3.0.2", - "unload": "2.2.0" - } - }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" - }, - "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/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dependencies": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "node_modules/browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dependencies": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "dependencies": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "node_modules/browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dependencies": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "node_modules/browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dependencies": { - "pako": "~1.0.5" - } - }, - "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "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-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" - }, - "node_modules/build": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/build/-/build-0.1.4.tgz", - "integrity": "sha512-KwbDJ/zrsU8KZRRMfoURG14cKIAStUlS8D5jBDvtrZbwO5FEkYqc3oB8HIhRiyD64A48w1lc+sOmQ+mmBw5U/Q==", - "dependencies": { - "cssmin": "0.3.x", - "jsmin": "1.x", - "jxLoader": "*", - "moo-server": "*", - "promised-io": "*", - "timespan": "2.x", - "uglify-js": "1.x", - "walker": "1.x", - "winston": "*", - "wrench": "1.3.x" - }, - "engines": { - "node": ">v0.4.12" - } - }, - "node_modules/builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" - }, - "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cachedir": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", - "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "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/call-me-maybe": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", - "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" - }, - "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/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/camelize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", - "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001470", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", - "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "node_modules/ccount": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", - "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "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/character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/charset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", - "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/check-more-types": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", - "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "dependencies": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - }, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/cheeriojs/cheerio?sponsor=1" - } - }, - "node_modules/cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "dependencies": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "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==", - "engines": { - "node": ">=6.0" - } - }, - "node_modules/ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "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/classcat": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", - "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", - "optional": true - }, - "node_modules/classnames": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", - "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" - }, - "node_modules/clean-css": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", - "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 10.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-boxes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", - "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-table3": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", - "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", - "dependencies": { - "string-width": "^4.2.0" - }, - "engines": { - "node": "10.* || >= 12.*" - }, - "optionalDependencies": { - "@colors/colors": "1.5.0" - } - }, - "node_modules/cli-table3/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==" - }, - "node_modules/cli-table3/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-truncate/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/cli-truncate/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "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/cliui/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/cliui/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/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/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==", - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/clone-deep/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==", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/clone-response/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "dependencies": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" - } - }, - "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==", - "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==" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "node_modules/color/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/color/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" - }, - "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" - }, - "node_modules/colorspace": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", - "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", - "dependencies": { - "color": "^3.1.3", - "text-hex": "1.0.x" - } - }, - "node_modules/combine-promises": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", - "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==", - "engines": { - "node": ">=10" - } - }, - "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==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/common-tags": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", - "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", - "dev": true, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/compression/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/compute-gcd": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", - "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", - "dependencies": { - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "node_modules/compute-lcm": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", - "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", - "dependencies": { - "compute-gcd": "^1.2.1", - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/consola": { - "version": "2.15.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", - "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" - }, - "node_modules/console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" - }, - "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/constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" - }, - "node_modules/content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" - }, - "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "node_modules/copy-text-to-clipboard": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", - "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-to-clipboard": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", - "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", - "dependencies": { - "toggle-selection": "^1.0.6" - } - }, - "node_modules/copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dependencies": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/copy-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/copy-webpack-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/globby": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", - "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-webpack-plugin/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==" - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/copy-webpack-plugin/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/core-js": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", - "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==", - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", - "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", - "dependencies": { - "browserslist": "^4.21.5" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-pure": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", - "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==", - "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": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - } - }, - "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "dependencies": { - "node-fetch": "2.6.7" - } - }, - "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==", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dependencies": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - }, - "engines": { - "node": "*" - } - }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", - "engines": { - "node": ">=4" - } - }, - "node_modules/css-declaration-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", - "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.0.9" - } - }, - "node_modules/css-in-js-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", - "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", - "dependencies": { - "hyphenate-style-name": "^1.0.3" - } - }, - "node_modules/css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/css-loader/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/css-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/css-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/css-loader/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/css-loader/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/css-loader/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/css-minimizer-webpack-plugin": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", - "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", - "dependencies": { - "cssnano": "^5.1.8", - "jest-worker": "^29.1.2", - "postcss": "^8.4.17", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "@parcel/css": { - "optional": true - }, - "@swc/css": { - "optional": true - }, - "clean-css": { - "optional": true - }, - "csso": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "lightningcss": { - "optional": true - } - } - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/css-minimizer-webpack-plugin/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==" - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-selector-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", - "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" - }, - "node_modules/css-to-react-native": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", - "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", - "dependencies": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^4.0.2" - } - }, - "node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", - "dev": true - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssmin": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/cssmin/-/cssmin-0.3.2.tgz", - "integrity": "sha512-bynxGIAJ8ybrnFobjsQotIjA8HFDDgPwbeUWNXXXfR+B4f9kkxdcUyagJoQCSUOfMV+ZZ6bMn8bvbozlCzUGwQ==", - "bin": { - "cssmin": "bin/cssmin" - } - }, - "node_modules/cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", - "dependencies": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-preset-advanced": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", - "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", - "dependencies": { - "autoprefixer": "^10.4.12", - "cssnano-preset-default": "^5.2.14", - "postcss-discard-unused": "^5.1.0", - "postcss-merge-idents": "^5.1.1", - "postcss-reduce-idents": "^5.2.0", - "postcss-zindex": "^5.1.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" - }, - "node_modules/cypress": { - "version": "12.7.0", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", - "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "@cypress/request": "^2.88.10", - "@cypress/xvfb": "^1.2.4", - "@types/node": "^14.14.31", - "@types/sinonjs__fake-timers": "8.1.1", - "@types/sizzle": "^2.3.2", - "arch": "^2.2.0", - "blob-util": "^2.0.2", - "bluebird": "^3.7.2", - "buffer": "^5.6.0", - "cachedir": "^2.3.0", - "chalk": "^4.1.0", - "check-more-types": "^2.24.0", - "cli-cursor": "^3.1.0", - "cli-table3": "~0.6.1", - "commander": "^5.1.0", - "common-tags": "^1.8.0", - "dayjs": "^1.10.4", - "debug": "^4.3.4", - "enquirer": "^2.3.6", - "eventemitter2": "6.4.7", - "execa": "4.1.0", - "executable": "^4.1.1", - "extract-zip": "2.0.1", - "figures": "^3.2.0", - "fs-extra": "^9.1.0", - "getos": "^3.2.1", - "is-ci": "^3.0.0", - "is-installed-globally": "~0.4.0", - "lazy-ass": "^1.6.0", - "listr2": "^3.8.3", - "lodash": "^4.17.21", - "log-symbols": "^4.0.0", - "minimist": "^1.2.6", - "ospath": "^1.2.2", - "pretty-bytes": "^5.6.0", - "proxy-from-env": "1.0.0", - "request-progress": "^3.0.0", - "semver": "^7.3.2", - "supports-color": "^8.1.1", - "tmp": "~0.2.1", - "untildify": "^4.0.0", - "yauzl": "^2.10.0" - }, - "bin": { - "cypress": "bin/cypress" - }, - "engines": { - "node": "^14.0.0 || ^16.0.0 || >=18.0.0" - } - }, - "node_modules/cypress/node_modules/@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", - "dev": true - }, - "node_modules/cypress/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/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dispatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", - "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-drag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", - "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", - "optional": true, - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-selection": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-ease": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", - "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "optional": true, - "dependencies": { - "d3-color": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-selection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", - "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-timer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", - "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "optional": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-transition": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", - "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", - "optional": true, - "dependencies": { - "d3-color": "1 - 3", - "d3-dispatch": "1 - 3", - "d3-ease": "1 - 3", - "d3-interpolate": "1 - 3", - "d3-timer": "1 - 3" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "d3-selection": "2 - 3" - } - }, - "node_modules/d3-zoom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", - "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", - "optional": true, - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "2 - 3", - "d3-transition": "2 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/dagre": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", - "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", - "optional": true, - "dependencies": { - "graphlib": "^2.1.8", - "lodash": "^4.17.15" - } - }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "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/dayjs": { - "version": "1.11.7", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", - "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", - "dev": true - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "node_modules/decko": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", - "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" - }, - "node_modules/decode-uri-component": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", - "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==", - "engines": { - "node": ">=14.16" - } - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/deep-equal": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", - "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "devOptional": true - }, - "node_modules/deepmerge": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", - "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/default-gateway/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "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/default-gateway/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-gateway/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==", - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", - "dependencies": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detab": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", - "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", - "dependencies": { - "repeat-string": "^1.5.4" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", - "engines": { - "node": ">=8" - } - }, - "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/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" - }, - "node_modules/detect-port": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", - "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", - "dependencies": { - "address": "^1.0.1", - "debug": "4" - }, - "bin": { - "detect": "bin/detect-port.js", - "detect-port": "bin/detect-port.js" - } - }, - "node_modules/detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" - }, - "engines": { - "node": ">= 4.2.1" - } - }, - "node_modules/detect-port-alt/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/detect-port-alt/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/diff-sequences": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", - "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dependencies": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "node_modules/diffie-hellman/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" - }, - "node_modules/dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "devOptional": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", - "dev": true - }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dependencies": { - "utila": "~0.4" - } - }, - "node_modules/dom-helpers": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", - "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", - "dependencies": { - "@babel/runtime": "^7.1.2" - } - }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/dom7": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", - "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", - "dependencies": { - "ssr-window": "^4.0.0" - } - }, - "node_modules/domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "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/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/dompurify": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", - "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" - }, - "node_modules/domutils": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", - "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dot-prop/node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" - }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" - }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "node_modules/electron-to-chromium": { - "version": "1.4.315", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", - "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" - }, - "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "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==" - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/emoticon": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", - "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/enabled": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", - "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", - "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/entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "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/error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", - "dependencies": { - "stackframe": "^1.3.4" - } - }, - "node_modules/es-abstract": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", - "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, - "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "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==", - "dev": true, - "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/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" - }, - "node_modules/es6-promise": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "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.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "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": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true, - "engines": { - "node": ">= 0.8.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": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/eslint": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", - "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", - "devOptional": true, - "dependencies": { - "@eslint/eslintrc": "^2.0.0", - "@eslint/js": "8.35.0", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-prettier": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", - "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", - "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-plugin-markdown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", - "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", - "dev": true, - "dependencies": { - "mdast-util-from-markdown": "^0.8.5" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-prettier": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", - "dev": true, - "dependencies": { - "prettier-linter-helpers": "^1.0.0" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "eslint": ">=7.28.0", - "prettier": ">=2.0.0" - }, - "peerDependenciesMeta": { - "eslint-config-prettier": { - "optional": true - } - } - }, - "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==", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "devOptional": true, - "dependencies": { - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" - } - }, - "node_modules/eslint-utils/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==", - "devOptional": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "devOptional": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "devOptional": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "devOptional": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "devOptional": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "devOptional": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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==", - "devOptional": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "devOptional": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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==", - "devOptional": true, - "engines": { - "node": ">=8" - } - }, - "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==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", - "devOptional": true, - "dependencies": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "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==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "devOptional": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": 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==", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "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==", - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eta": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", - "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==", - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "url": "https://github.com/eta-dev/eta?sponsor=1" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eval": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", - "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", - "dependencies": { - "@types/node": "*", - "require-like": ">= 0.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/eventemitter2": { - "version": "6.4.7", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", - "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", - "dev": true - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/executable": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", - "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", - "dev": true, - "dependencies": { - "pify": "^2.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/expect": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", - "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", - "dev": true, - "dependencies": { - "@jest/expect-utils": "^29.4.3", - "jest-get-type": "^29.4.3", - "jest-matcher-utils": "^29.4.3", - "jest-message-util": "^29.4.3", - "jest-util": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "node_modules/express/node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" - }, - "node_modules/express/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/express/node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - }, - "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" - } - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true, - "engines": [ - "node >=0.6.0" - ] - }, - "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==" - }, - "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "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==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "devOptional": true - }, - "node_modules/fast-loops": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", - "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" - }, - "node_modules/fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "node_modules/fast-shallow-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", - "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" - }, - "node_modules/fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", - "dependencies": { - "punycode": "^1.3.2" - } - }, - "node_modules/fast-url-parser/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" - }, - "node_modules/fastest-stable-stringify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", - "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" - }, - "node_modules/fastestsmallesttextencoderdecoder": { - "version": "1.0.22", - "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", - "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "dependencies": { - "format": "^0.2.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fbemitter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", - "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", - "dependencies": { - "fbjs": "^3.0.0" - } - }, - "node_modules/fbjs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", - "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", - "dependencies": { - "cross-fetch": "^3.1.5", - "fbjs-css-vars": "^1.0.0", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.30" - } - }, - "node_modules/fbjs-css-vars": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", - "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/fecha": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" - }, - "node_modules/feed": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", - "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", - "dependencies": { - "xml-js": "^1.6.11" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/figures/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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "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==", - "devOptional": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/file-loader": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", - "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/file-loader/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==", - "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/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/file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/filesize": { - "version": "8.0.7", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", - "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", - "engines": { - "node": ">= 0.4.0" - } - }, - "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==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/filter-obj": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", - "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "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-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "devOptional": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "devOptional": true - }, - "node_modules/flux": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", - "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", - "dependencies": { - "fbemitter": "^3.0.0", - "fbjs": "^3.0.1" - }, - "peerDependencies": { - "react": "^15.0.2 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/fn.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", - "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" - }, - "node_modules/fnv-plus": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", - "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" - }, - "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreach": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", - "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/fork-ts-checker-webpack-plugin": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", - "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", - "dependencies": { - "@babel/code-frame": "^7.8.3", - "@types/json-schema": "^7.0.5", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "cosmiconfig": "^6.0.0", - "deepmerge": "^4.2.2", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "memfs": "^3.1.2", - "minimatch": "^3.0.4", - "schema-utils": "2.7.0", - "semver": "^7.3.2", - "tapable": "^1.0.0" - }, - "engines": { - "node": ">=10", - "yarn": ">=1.0.0" - }, - "peerDependencies": { - "eslint": ">= 6", - "typescript": ">= 2.7", - "vue-template-compiler": "*", - "webpack": ">= 4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - } - } - }, - "node_modules/fork-ts-checker-webpack-plugin/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/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", - "dependencies": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "dependencies": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" - }, - "engines": { - "node": ">= 12.20" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", - "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" - }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fscreen": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", - "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "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.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "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==", - "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.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" - }, - "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": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/getos": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", - "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", - "dev": true, - "dependencies": { - "async": "^3.2.0" - } - }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - } - }, - "node_modules/github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" - }, - "node_modules/github-slugger": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", - "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "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==", - "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==" - }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "dependencies": { - "ini": "2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dependencies": { - "global-prefix": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "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==", - "engines": { - "node": ">=4" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/got/node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/got/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/got/node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "devOptional": true - }, - "node_modules/graphlib": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", - "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", - "optional": true, - "dependencies": { - "lodash": "^4.17.15" - } - }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/gray-matter/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/gray-matter/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==", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "dependencies": { - "duplexer": "^0.1.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hast-to-hyperscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", - "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", - "dependencies": { - "@types/unist": "^2.0.3", - "comma-separated-tokens": "^1.0.0", - "property-information": "^5.3.0", - "space-separated-tokens": "^1.0.0", - "style-to-object": "^0.3.0", - "unist-util-is": "^4.0.0", - "web-namespaces": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", - "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", - "dependencies": { - "@types/parse5": "^5.0.0", - "hastscript": "^6.0.0", - "property-information": "^5.0.0", - "vfile": "^4.0.0", - "vfile-location": "^3.2.0", - "web-namespaces": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-is-element": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", - "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", - "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", - "dependencies": { - "@types/hast": "^2.0.0", - "hast-util-from-parse5": "^6.0.0", - "hast-util-to-parse5": "^6.0.0", - "html-void-elements": "^1.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/hast-util-sanitize": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", - "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", - "dependencies": { - "@types/hast": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-parse5": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", - "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", - "dependencies": { - "hast-to-hyperscript": "^9.0.0", - "property-information": "^5.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-text": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", - "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", - "dependencies": { - "hast-util-is-element": "^1.0.0", - "repeat-string": "^1.0.0", - "unist-util-find-after": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", - "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "bin": { - "he": "bin/he" - } - }, - "node_modules/history": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", - "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", - "dependencies": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^3.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^1.0.1" - } - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "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/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "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/hpack.js/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/hpack.js/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/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-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" - }, - "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/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", - "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/html-minifier-terser/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "engines": { - "node": ">= 12" - } - }, - "node_modules/html-tags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", - "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/html-void-elements": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", - "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/html-webpack-plugin": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/html-webpack-plugin" - }, - "peerDependencies": { - "webpack": "^5.20.0" - } - }, - "node_modules/html-webpack-plugin-4": { - "name": "html-webpack-plugin", - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "dependencies": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - }, - "engines": { - "node": ">=6.9" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/@types/html-minifier-terser": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", - "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", - "dev": true - }, - "node_modules/html-webpack-plugin-4/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "dependencies": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, - "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/terser": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/html-webpack-plugin-4/node_modules/terser/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/html-webpack-plugin-5": { - "name": "html-webpack-plugin", - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "dev": true, - "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/html-webpack-plugin" - }, - "peerDependencies": { - "webpack": "^5.20.0" - } - }, - "node_modules/htmlparser2": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", - "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "entities": "^4.3.0" - } - }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/http-reasons": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", - "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" - }, - "node_modules/http-signature": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", - "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^2.0.2", - "sshpk": "^1.14.1" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/http2-client": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", - "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" - }, - "node_modules/https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/httpsnippet-lite": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", - "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", - "dependencies": { - "@types/har-format": "^1.2.10", - "formdata-node": "^4.4.1", - "stringify-object": "3.3.0" - }, - "engines": { - "node": ">=14.13" - } - }, - "node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true, - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/husky": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", - "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", - "dev": true, - "bin": { - "husky": "lib/bin.js" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/typicode" - } - }, - "node_modules/hyphenate-style-name": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", - "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" - }, - "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==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "dependencies": { - "postcss": "^7.0.14" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/icss-utils/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/icss-utils/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "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": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/image-size": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", - "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", - "dependencies": { - "queue": "6.0.2" - }, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/immer": { - "version": "9.0.19", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", - "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" - } - }, - "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-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "engines": { - "node": ">=4" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/infima": { - "version": "0.2.0-alpha.42", - "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", - "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==", - "engines": { - "node": ">=12" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "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/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" - }, - "node_modules/inline-style-prefixer": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", - "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", - "dependencies": { - "css-in-js-utils": "^3.1.0", - "fast-loops": "^1.1.3" - } - }, - "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dependencies": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "dependencies": { - "ci-info": "^3.2.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "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==", - "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-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "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-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "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==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isomorphic-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", - "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", - "dependencies": { - "node-fetch": "^2.6.1", - "whatwg-fetch": "^3.4.1" - } - }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/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/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.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", - "dev": true, - "dependencies": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - }, - "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.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "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-changed-files/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/jest-changed-files/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/jest-changed-files/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/jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-circus/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", - "dev": true, - "dependencies": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "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-cli/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "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-config/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-config/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-diff": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", - "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-diff/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/jest-diff/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", - "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.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-each/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-each/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-jsdom/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-node/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-get-type": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", - "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-haste-map/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-haste-map/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-haste-map/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/jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-jasmine2/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-jasmine2/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-leak-detector/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-matcher-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", - "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils/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/jest-matcher-utils/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", - "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.4.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.4.3", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/node_modules/@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/node_modules/@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/jest-message-util/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/jest-message-util/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.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.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-resolve/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", - "dev": true, - "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-runner/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-runner/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/jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-runtime/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "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-snapshot/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", - "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", - "dependencies": { - "@jest/types": "^29.4.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-util/node_modules/@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "dependencies": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-util/node_modules/@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-validate/node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", - "dev": true, - "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-watcher/node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-worker": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", - "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", - "dependencies": { - "@types/node": "*", - "jest-util": "^29.4.3", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.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==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/joi": { - "version": "17.8.3", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", - "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", - "dependencies": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" - } - }, - "node_modules/jotai": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", - "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", - "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "@babel/core": "*", - "@babel/template": "*", - "@urql/core": "*", - "immer": "*", - "optics-ts": "*", - "react": ">=16.8", - "react-query": "*", - "valtio": "*", - "wonka": "*", - "xstate": "*" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@babel/template": { - "optional": true - }, - "@urql/core": { - "optional": true - }, - "immer": { - "optional": true - }, - "optics-ts": { - "optional": true - }, - "react-query": { - "optional": true - }, - "valtio": { - "optional": true - }, - "wonka": { - "optional": true - }, - "xstate": { - "optional": true - } - } - }, - "node_modules/js-cookie": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", - "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" - }, - "node_modules/js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", - "devOptional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, - "node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, - "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": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "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.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/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/jsdom/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/jsdom/node_modules/tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsdom/node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jsmin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/jsmin/-/jsmin-1.0.1.tgz", - "integrity": "sha512-OPuL5X/bFKgVdMvEIX3hnpx3jbVpFCrEM8pKPXjFkZUqg521r41ijdyTz7vACOhW6o1neVlcLyd+wkbK5fNHRg==", - "bin": { - "jsmin": "bin/jsmin" - }, - "engines": { - "node": ">=0.1.93" - } - }, - "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" - }, - "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-pointer": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", - "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", - "dependencies": { - "foreach": "^2.0.4" - } - }, - "node_modules/json-promise": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", - "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", - "dependencies": { - "bluebird": "*" - } - }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" - }, - "node_modules/json-schema-compare": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", - "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", - "dependencies": { - "lodash": "^4.17.4" - } - }, - "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==" - }, - "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "devOptional": true - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsprim": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", - "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "node_modules/jxLoader": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jxLoader/-/jxLoader-0.1.1.tgz", - "integrity": "sha512-ClEvAj3K68y8uKhub3RgTmcRPo5DfIWvtxqrKQdDPyZ1UVHIIKvVvjrAsJFSVL5wjv0rt5iH9SMCZ0XRKNzeUA==", - "dependencies": { - "js-yaml": "0.3.x", - "moo-server": "1.3.x", - "promised-io": "*", - "walker": "1.x" - }, - "engines": { - "node": ">v0.4.10" - } - }, - "node_modules/jxLoader/node_modules/js-yaml": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-0.3.7.tgz", - "integrity": "sha512-/7PsVDNP2tVe2Z1cF9kTEkjamIwz4aooDpRKmN1+g/9eePCgcxsv4QDvEbxO0EH+gdDD7MLyDoR6BASo3hH51g==", - "engines": { - "node": "> 0.4.11" - } - }, - "node_modules/katex": { - "version": "0.13.24", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", - "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", - "funding": [ - "https://opencollective.com/katex", - "https://github.com/sponsors/katex" - ], - "dependencies": { - "commander": "^8.0.0" - }, - "bin": { - "katex": "cli.js" - } - }, - "node_modules/katex/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "engines": { - "node": ">= 12" - } - }, - "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dependencies": { - "json-buffer": "3.0.0" - } - }, - "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==", - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/kuler": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", - "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" - }, - "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dependencies": { - "package-json": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lazy-ass": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", - "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", - "dev": true, - "engines": { - "node": "> 0.8" - } - }, - "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==", - "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==", - "devOptional": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", - "engines": { - "node": ">=10" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "node_modules/lint-staged": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", - "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", - "dev": true, - "dependencies": { - "cli-truncate": "^3.1.0", - "colorette": "^2.0.19", - "commander": "^9.4.1", - "debug": "^4.3.4", - "execa": "^6.1.0", - "lilconfig": "2.0.6", - "listr2": "^5.0.5", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-inspect": "^1.12.2", - "pidtree": "^0.6.0", - "string-argv": "^0.3.1", - "yaml": "^2.1.3" - }, - "bin": { - "lint-staged": "bin/lint-staged.js" - }, - "engines": { - "node": "^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/lint-staged" - } - }, - "node_modules/lint-staged/node_modules/cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", - "dev": true, - "dependencies": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || >=14" - } - }, - "node_modules/lint-staged/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/lint-staged/node_modules/execa": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", - "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^3.0.1", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/lint-staged/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/lint-staged/node_modules/human-signals": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", - "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", - "dev": true, - "engines": { - "node": ">=12.20.0" - } - }, - "node_modules/lint-staged/node_modules/is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/listr2": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", - "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", - "dev": true, - "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.19", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.8.0", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": "^14.13.1 || >=16.0.0" - }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" - }, - "peerDependenciesMeta": { - "enquirer": { - "optional": true - } - } - }, - "node_modules/lint-staged/node_modules/listr2/node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/listr2/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/lint-staged/node_modules/listr2/node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lint-staged/node_modules/listr2/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lint-staged/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/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/lint-staged/node_modules/wrap-ansi/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/lint-staged/node_modules/wrap-ansi/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lint-staged/node_modules/yaml": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", - "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, - "node_modules/liquid-json": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", - "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/listr2": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", - "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", - "dev": true, - "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.16", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.5.1", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" - }, - "peerDependenciesMeta": { - "enquirer": { - "optional": true - } - } - }, - "node_modules/listr2/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/listr2/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/listr2/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/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/local-pkg": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", - "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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.curry": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", - "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" - }, - "node_modules/lodash.flow": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", - "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" - }, - "node_modules/lodash.isequalwith": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", - "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" - }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" - }, - "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==", - "devOptional": true - }, - "node_modules/lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", - "dev": true - }, - "node_modules/lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" - }, - "node_modules/lodash.pickby": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", - "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" - }, - "node_modules/lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update/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/log-update/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/log-update/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-update/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/logform": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.5.1.tgz", - "integrity": "sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==", - "dependencies": { - "@colors/colors": "1.5.0", - "@types/triple-beam": "^1.3.2", - "fecha": "^4.2.0", - "ms": "^2.1.1", - "safe-stable-stringify": "^2.3.1", - "triple-beam": "^1.3.0" - } - }, - "node_modules/logform/node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", - "engines": { - "node": ">=10" - } - }, - "node_modules/longest-streak": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", - "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dependencies": { - "tslib": "^2.0.3" - } - }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" - }, - "node_modules/lz-string": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", - "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", - "dev": true, - "bin": { - "lz-string": "bin/bin.js" - } - }, - "node_modules/magic-error": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", - "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==", - "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==", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" - }, - "node_modules/markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "dependencies": { - "repeat-string": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/marked": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", - "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==", - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/match-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", - "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "remove-accents": "0.4.2" - } - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/mdast-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", - "dependencies": { - "unist-util-remove": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-definitions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", - "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-find-and-replace": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", - "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", - "dependencies": { - "escape-string-regexp": "^4.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-from-markdown": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", - "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", - "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-string": "^2.0.0", - "micromark": "~2.11.0", - "parse-entities": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-frontmatter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", - "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", - "dependencies": { - "micromark-extension-frontmatter": "^0.2.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", - "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", - "dependencies": { - "mdast-util-gfm-autolink-literal": "^0.1.0", - "mdast-util-gfm-strikethrough": "^0.2.0", - "mdast-util-gfm-table": "^0.1.0", - "mdast-util-gfm-task-list-item": "^0.1.0", - "mdast-util-to-markdown": "^0.6.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-autolink-literal": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", - "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", - "dependencies": { - "ccount": "^1.0.0", - "mdast-util-find-and-replace": "^1.1.0", - "micromark": "^2.11.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-strikethrough": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", - "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", - "dependencies": { - "mdast-util-to-markdown": "^0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-table": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", - "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", - "dependencies": { - "markdown-table": "^2.0.0", - "mdast-util-to-markdown": "~0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", - "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", - "dependencies": { - "mdast-util-to-markdown": "~0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", - "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "mdast-util-definitions": "^4.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^2.0.0", - "unist-util-generated": "^1.0.0", - "unist-util-position": "^3.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", - "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "longest-streak": "^2.0.0", - "mdast-util-to-string": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" - }, - "node_modules/mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", - "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", - "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, - "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==" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromark": { - "version": "2.11.4", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", - "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "debug": "^4.0.0", - "parse-entities": "^2.0.0" - } - }, - "node_modules/micromark-extension-frontmatter": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", - "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", - "dependencies": { - "fault": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", - "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", - "dependencies": { - "micromark": "~2.11.0", - "micromark-extension-gfm-autolink-literal": "~0.5.0", - "micromark-extension-gfm-strikethrough": "~0.6.5", - "micromark-extension-gfm-table": "~0.4.0", - "micromark-extension-gfm-tagfilter": "~0.3.0", - "micromark-extension-gfm-task-list-item": "~0.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", - "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", - "dependencies": { - "micromark": "~2.11.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", - "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", - "dependencies": { - "micromark": "~2.11.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-table": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", - "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", - "dependencies": { - "micromark": "~2.11.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", - "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", - "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", - "dependencies": { - "micromark": "~2.11.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/microseconds": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", - "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" - }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" - } - }, - "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-format": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", - "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", - "dependencies": { - "charset": "^1.0.0" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", - "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/mini-css-extract-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/mini-css-extract-plugin/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==" - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" - }, - "node_modules/mobx": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", - "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - } - }, - "node_modules/mobx-react": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", - "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", - "dependencies": { - "mobx-react-lite": "^3.4.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - }, - "peerDependencies": { - "mobx": "^6.1.0", - "react": "^16.8.0 || ^17 || ^18" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/mobx-react-lite": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", - "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - }, - "peerDependencies": { - "mobx": "^6.1.0", - "react": "^16.8.0 || ^17 || ^18" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/monaco-editor": { - "version": "0.36.1", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", - "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", - "peer": true - }, - "node_modules/moo-server": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/moo-server/-/moo-server-1.3.0.tgz", - "integrity": "sha512-9A8/eor2DXwpv1+a4pZAAydqLFVrWoKoO1fzdzqLUhYVXAO1Kgd1FR2gFZi7YdHzF0s4W8cDNwCfKJQrvLqxDw==", - "engines": { - "node": ">v0.4.10" - } - }, - "node_modules/mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", - "engines": { - "node": ">=10" - } - }, - "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==" - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, - "node_modules/nano-memoize": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", - "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" - }, - "node_modules/nano-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", - "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", - "dependencies": { - "big-integer": "^1.6.16" - } - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "devOptional": true - }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "engines": { - "node": ">= 0.6" - } - }, - "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==" - }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node_modules/node-abi": { - "version": "3.33.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", - "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", - "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" - }, - "node_modules/node-addon-api": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", - "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" - }, - "node_modules/node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "github", - "url": "https://paypal.me/jimmywarting" - } - ], - "engines": { - "node": ">=10.5.0" - } - }, - "node_modules/node-emoji": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", - "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", - "dependencies": { - "lodash": "^4.17.21" - } - }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-fetch-h2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", - "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", - "dependencies": { - "http2-client": "^1.2.5" - }, - "engines": { - "node": "4.x || >=6.0.0" - } - }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-polyfill-webpack-plugin": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", - "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", - "dependencies": { - "assert": "^2.0.0", - "browserify-zlib": "^0.2.0", - "buffer": "^6.0.3", - "console-browserify": "^1.2.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.12.0", - "domain-browser": "^4.19.0", - "events": "^3.3.0", - "filter-obj": "^2.0.2", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "punycode": "^2.1.1", - "querystring-es3": "^0.2.1", - "readable-stream": "^3.6.0", - "stream-browserify": "^3.0.0", - "stream-http": "^3.2.0", - "string_decoder": "^1.3.0", - "timers-browserify": "^2.0.12", - "tty-browserify": "^0.0.1", - "url": "^0.11.0", - "util": "^0.12.4", - "vm-browserify": "^1.1.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "webpack": ">=5" - } - }, - "node_modules/node-polyfill-webpack-plugin/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "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.2.1" - } - }, - "node_modules/node-readfiles": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", - "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", - "dependencies": { - "es6-promise": "^3.2.1" - } - }, - "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" - }, - "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==", - "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": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nprogress": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", - "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/nwsapi": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", - "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", - "dev": true - }, - "node_modules/oas-kit-common": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", - "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", - "dependencies": { - "fast-safe-stringify": "^2.0.7" - } - }, - "node_modules/oas-linter": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", - "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", - "dependencies": { - "@exodus/schemasafe": "^1.0.0-rc.2", - "should": "^13.2.1", - "yaml": "^1.10.0" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/oas-resolver": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", - "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", - "dependencies": { - "node-fetch-h2": "^2.3.0", - "oas-kit-common": "^1.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "bin": { - "resolve": "resolve.js" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/oas-resolver/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/oas-resolver/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==" - }, - "node_modules/oas-resolver/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/oas-resolver/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==", - "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/oas-resolver/node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/oas-resolver/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "engines": { - "node": ">=12" - } - }, - "node_modules/oas-schema-walker": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", - "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==", - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/oas-validator": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", - "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", - "dependencies": { - "call-me-maybe": "^1.0.1", - "oas-kit-common": "^1.0.8", - "oas-linter": "^3.2.2", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "reftools": "^1.1.9", - "should": "^13.2.1", - "yaml": "^1.10.0" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "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.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", - "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", - "dev": true, - "dependencies": { - "array.prototype.reduce": "^1.0.5", - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/oblivious-set": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", - "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/one-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", - "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", - "dependencies": { - "fn.name": "1.x.x" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/openapi-sampler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", - "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", - "dependencies": { - "@types/json-schema": "^7.0.7", - "json-pointer": "0.6.2" - } - }, - "node_modules/openapi3-ts": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", - "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", - "dependencies": { - "yaml": "^1.10.2" - } - }, - "node_modules/opener": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "bin": { - "opener": "bin/opener-bin.js" - } - }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "devOptional": 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/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" - }, - "node_modules/ospath": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", - "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", - "dev": true - }, - "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "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/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/package-json/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "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/papaparse": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", - "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" - }, - "node_modules/param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "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-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/parse-numeric-range": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" - }, - "node_modules/parse-srcset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", - "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" - }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "dependencies": { - "entities": "^4.4.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "dependencies": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" - }, - "node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "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": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" - }, - "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==", - "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-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dependencies": { - "isarray": "0.0.1" - } - }, - "node_modules/path-to-regexp/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - }, - "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/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/perfect-scrollbar": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", - "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pidtree": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", - "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", - "dev": true, - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "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==", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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/pkg-dir/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==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/polished": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", - "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", - "dependencies": { - "@babel/runtime": "^7.17.8" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", - "dependencies": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" - }, - "peerDependencies": { - "postcss": "^8.2.2" - } - }, - "node_modules/postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-unused": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", - "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-loader": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", - "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", - "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.8" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" - } - }, - "node_modules/postcss-merge-idents": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", - "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", - "dependencies": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", - "dependencies": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", - "dependencies": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", - "dependencies": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-extract-imports/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-extract-imports/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "dependencies": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-local-by-default/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-local-by-default/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-scope/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-scope/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "dependencies": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "node_modules/postcss-modules-values/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss-modules-values/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", - "dependencies": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", - "dependencies": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-idents": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", - "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sort-media-queries": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", - "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", - "dependencies": { - "sort-css-media-queries": "2.1.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.4.16" - } - }, - "node_modules/postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", - "dependencies": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, - "node_modules/postcss-zindex": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", - "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postman-collection": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", - "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", - "dependencies": { - "@faker-js/faker": "5.5.3", - "file-type": "3.9.0", - "http-reasons": "0.1.0", - "iconv-lite": "0.6.3", - "liquid-json": "0.3.1", - "lodash": "4.17.21", - "mime-format": "2.0.1", - "mime-types": "2.1.35", - "postman-url-encoder": "3.0.5", - "semver": "7.3.8", - "uuid": "8.3.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/postman-collection/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/postman-url-encoder": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", - "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "dependencies": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=10" - } - }, - "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==", - "devOptional": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/prettier": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", - "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", - "dev": true, - "peer": true, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dev": true, - "dependencies": { - "fast-diff": "^1.1.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==", - "engines": { - "node": "*" - } - }, - "node_modules/pretty-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", - "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, - "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1", - "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/pretty-format/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==", - "dev": true - }, - "node_modules/pretty-time": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", - "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/prism-react-renderer": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", - "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", - "peerDependencies": { - "react": ">=0.14.9" - } - }, - "node_modules/prismjs": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", - "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", - "engines": { - "node": ">=6" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "engines": { - "node": ">= 0.6.0" - } - }, - "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/promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dependencies": { - "asap": "~2.0.3" - } - }, - "node_modules/promised-io": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/promised-io/-/promised-io-0.3.6.tgz", - "integrity": "sha512-bNwZusuNIW4m0SPR8jooSyndD35ggirHlxVl/UhIaZD/F0OBv9ebfc6tNmbpZts3QXHggkjIBH8lvtnzhtcz0A==" - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "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/property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "dependencies": { - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", - "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", - "dev": true - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dependencies": { - "escape-goat": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pure-color": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", - "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" - }, - "node_modules/qs": { - "version": "6.10.4", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", - "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/query-string": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", - "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", - "dependencies": { - "decode-uri-component": "^0.4.1", - "filter-obj": "^5.1.0", - "split-on-first": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/query-string/node_modules/filter-obj": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", - "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, - "node_modules/queue": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", - "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", - "dependencies": { - "inherits": "~2.0.3" - } - }, - "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==", - "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==", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-body/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", - "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/raw-loader/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==", - "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/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "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/react-base16-styling": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", - "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", - "dependencies": { - "base16": "^1.0.0", - "lodash.curry": "^4.0.1", - "lodash.flow": "^3.3.0", - "pure-color": "^1.2.0" - } - }, - "node_modules/react-dev-utils": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", - "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", - "dependencies": { - "@babel/code-frame": "^7.16.0", - "address": "^1.1.2", - "browserslist": "^4.18.1", - "chalk": "^4.1.2", - "cross-spawn": "^7.0.3", - "detect-port-alt": "^1.1.6", - "escape-string-regexp": "^4.0.0", - "filesize": "^8.0.6", - "find-up": "^5.0.0", - "fork-ts-checker-webpack-plugin": "^6.5.0", - "global-modules": "^2.0.0", - "globby": "^11.0.4", - "gzip-size": "^6.0.0", - "immer": "^9.0.7", - "is-root": "^2.1.0", - "loader-utils": "^3.2.0", - "open": "^8.4.0", - "pkg-up": "^3.1.0", - "prompts": "^2.4.2", - "react-error-overlay": "^6.0.11", - "recursive-readdir": "^2.2.2", - "shell-quote": "^1.7.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/react-dev-utils/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/node_modules/loader-utils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", - "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/react-dev-utils/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/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==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/react-dev-utils/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/react-dev-utils/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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-error-overlay": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", - "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" - }, - "node_modules/react-fast-compare": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", - "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" - }, - "node_modules/react-flow-renderer": { - "version": "10.3.17", - "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", - "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", - "deprecated": "react-flow-renderer has been renamed to reactflow, please use this package from now on https://reactflow.dev/docs/guides/migrate-to-v11/", - "optional": true, - "dependencies": { - "@babel/runtime": "^7.18.9", - "@types/d3": "^7.4.0", - "@types/resize-observer-browser": "^0.1.7", - "classcat": "^5.0.3", - "d3-drag": "^3.0.0", - "d3-selection": "^3.0.0", - "d3-zoom": "^3.0.0", - "zustand": "^3.7.2" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "react": "16 || 17 || 18", - "react-dom": "16 || 17 || 18" - } - }, - "node_modules/react-full-screen": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", - "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", - "dependencies": { - "fscreen": "^1.0.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">= 16.8.0" - } - }, - "node_modules/react-helmet-async": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", - "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "invariant": "^2.2.4", - "prop-types": "^15.7.2", - "react-fast-compare": "^3.2.0", - "shallowequal": "^1.1.0" - }, - "peerDependencies": { - "react": "^16.6.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.6.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" - }, - "node_modules/react-json-view": { - "version": "1.21.3", - "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", - "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", - "dependencies": { - "flux": "^4.0.1", - "react-base16-styling": "^0.6.0", - "react-lifecycles-compat": "^3.0.4", - "react-textarea-autosize": "^8.3.2" - }, - "peerDependencies": { - "react": "^17.0.0 || ^16.3.0 || ^15.5.4", - "react-dom": "^17.0.0 || ^16.3.0 || ^15.5.4" - } - }, - "node_modules/react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" - }, - "node_modules/react-loadable": { - "name": "@docusaurus/react-loadable", - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": "*" - } - }, - "node_modules/react-loadable-ssr-addon-v5-slorber": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", - "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", - "dependencies": { - "@babel/runtime": "^7.10.3" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "react-loadable": "*", - "webpack": ">=4.41.1 || 5.x" - } - }, - "node_modules/react-overflow-list": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", - "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", - "dependencies": { - "react-use": "^17.3.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">=16" - } - }, - "node_modules/react-overflow-list/node_modules/react-use": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", - "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", - "dependencies": { - "@types/js-cookie": "^2.2.6", - "@xobotyi/scrollbar-width": "^1.9.5", - "copy-to-clipboard": "^3.3.1", - "fast-deep-equal": "^3.1.3", - "fast-shallow-equal": "^1.0.0", - "js-cookie": "^2.2.1", - "nano-css": "^5.3.1", - "react-universal-interface": "^0.6.2", - "resize-observer-polyfill": "^1.5.1", - "screenfull": "^5.1.0", - "set-harmonic-interval": "^1.0.1", - "throttle-debounce": "^3.0.1", - "ts-easing": "^0.2.0", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-overflow-list/node_modules/react-use/node_modules/nano-css": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", - "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", - "dependencies": { - "css-tree": "^1.1.2", - "csstype": "^3.0.6", - "fastest-stable-stringify": "^2.0.2", - "inline-style-prefixer": "^6.0.0", - "rtl-css-js": "^1.14.0", - "sourcemap-codec": "^1.4.8", - "stacktrace-js": "^2.0.2", - "stylis": "^4.0.6" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/react-query": { - "version": "3.39.3", - "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", - "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", - "dependencies": { - "@babel/runtime": "^7.5.5", - "broadcast-channel": "^3.4.1", - "match-sorter": "^6.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/react-router": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", - "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", - "dependencies": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "hoist-non-react-statics": "^3.1.0", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.7.0", - "prop-types": "^15.6.2", - "react-is": "^16.6.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - }, - "peerDependencies": { - "react": ">=15" - } - }, - "node_modules/react-router-config": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", - "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", - "dependencies": { - "@babel/runtime": "^7.1.2" - }, - "peerDependencies": { - "react": ">=15", - "react-router": ">=5" - } - }, - "node_modules/react-router-dom": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", - "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", - "dependencies": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.2", - "react-router": "5.3.4", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - }, - "peerDependencies": { - "react": ">=15" - } - }, - "node_modules/react-router-hash-link": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", - "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", - "dependencies": { - "prop-types": "^15.7.2" - }, - "peerDependencies": { - "react": ">=15", - "react-router-dom": ">=4" - } - }, - "node_modules/react-router/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/react-tabs": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", - "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", - "dependencies": { - "clsx": "^1.1.0", - "prop-types": "^15.5.0" - }, - "peerDependencies": { - "react": "^16.3.0 || ^17.0.0-0" - } - }, - "node_modules/react-textarea-autosize": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", - "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", - "dependencies": { - "@babel/runtime": "^7.20.13", - "use-composed-ref": "^1.3.0", - "use-latest": "^1.2.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-tooltip": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", - "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", - "dependencies": { - "prop-types": "^15.8.1", - "uuid": "^7.0.3" - }, - "engines": { - "npm": ">=6.13" - }, - "peerDependencies": { - "react": ">=16.0.0", - "react-dom": ">=16.0.0" - } - }, - "node_modules/react-tooltip/node_modules/uuid": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", - "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/react-universal-interface": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", - "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", - "peerDependencies": { - "react": "*", - "tslib": "*" - } - }, - "node_modules/react-waypoint": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", - "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "consolidated-events": "^1.1.0 || ^2.0.0", - "prop-types": "^15.0.0", - "react-is": "^17.0.1 || ^18.0.0" - }, - "peerDependencies": { - "react": "^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/readable-stream": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", - "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reading-time": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", - "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" - }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/recursive-readdir": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", - "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", - "dependencies": { - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/redoc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", - "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", - "dependencies": { - "@redocly/openapi-core": "^1.0.0-beta.104", - "classnames": "^2.3.1", - "decko": "^1.2.0", - "dompurify": "^2.2.8", - "eventemitter3": "^4.0.7", - "json-pointer": "^0.6.2", - "lunr": "^2.3.9", - "mark.js": "^8.11.1", - "marked": "^4.0.15", - "mobx-react": "^7.2.0", - "openapi-sampler": "^1.3.0", - "path-browserify": "^1.0.1", - "perfect-scrollbar": "^1.5.5", - "polished": "^4.1.3", - "prismjs": "^1.27.0", - "prop-types": "^15.7.2", - "react-tabs": "^3.2.2", - "slugify": "~1.4.7", - "stickyfill": "^1.1.1", - "style-loader": "^3.3.1", - "swagger2openapi": "^7.0.6", - "url-template": "^2.0.8" - }, - "engines": { - "node": ">=6.9", - "npm": ">=3.0.0" - }, - "peerDependencies": { - "core-js": "^3.1.4", - "mobx": "^6.0.4", - "react": "^16.8.4 || ^17.0.0", - "react-dom": "^16.8.4 || ^17.0.0", - "styled-components": "^4.1.1 || ^5.1.1" - } - }, - "node_modules/redoc/node_modules/slugify": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", - "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/redoc/node_modules/style-loader": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", - "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/reftools": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", - "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==", - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "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==" - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "node_modules/regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - }, - "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==", - "devOptional": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/regexpu-core": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", - "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", - "dependencies": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "dependencies": { - "rc": "1.2.8" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dependencies": { - "rc": "^1.2.8" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "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": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/rehype-katex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", - "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", - "dependencies": { - "@types/katex": "^0.11.0", - "hast-util-to-text": "^2.0.0", - "katex": "^0.13.0", - "rehype-parse": "^7.0.0", - "unified": "^9.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-parse": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", - "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", - "dependencies": { - "hast-util-from-parse5": "^6.0.0", - "parse5": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-parse/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/remark-emoji": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", - "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", - "dependencies": { - "emoticon": "^3.2.0", - "node-emoji": "^1.10.0", - "unist-util-visit": "^2.0.3" - } - }, - "node_modules/remark-footnotes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", - "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-frontmatter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", - "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", - "dependencies": { - "mdast-util-frontmatter": "^0.2.0", - "micromark-extension-frontmatter": "^0.2.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-gfm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", - "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", - "dependencies": { - "mdast-util-gfm": "^0.1.0", - "micromark-extension-gfm": "^0.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-math": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", - "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", - "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", - "dependencies": { - "@babel/core": "7.12.9", - "@babel/helper-plugin-utils": "7.10.4", - "@babel/plugin-proposal-object-rest-spread": "7.12.1", - "@babel/plugin-syntax-jsx": "7.12.1", - "@mdx-js/util": "1.6.22", - "is-alphabetical": "1.0.4", - "remark-parse": "8.0.3", - "unified": "9.2.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx/node_modules/@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/remark-mdx/node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", - "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.12.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/remark-mdx/node_modules/@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/remark-mdx/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/remark-mdx/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/remark-mdx/node_modules/unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "dependencies": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", - "dependencies": { - "mdast-squeeze-paragraphs": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-stringify": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", - "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", - "dependencies": { - "mdast-util-to-markdown": "^0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remove-accents": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", - "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" - }, - "node_modules/renderkid": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", - "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", - "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^6.0.1" - } - }, - "node_modules/renderkid/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/renderkid/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/request-progress": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", - "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", - "dev": true, - "dependencies": { - "throttleit": "^1.0.0" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-like": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", - "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==", - "engines": { - "node": "*" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, - "node_modules/resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" - }, - "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "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-cwd/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/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/resolve-pathname": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", - "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" - }, - "node_modules/resolve.exports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", - "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dependencies": { - "lowercase-keys": "^1.0.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/rtl-css-js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", - "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", - "dependencies": { - "@babel/runtime": "^7.1.2" - } - }, - "node_modules/rtl-detect": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", - "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" - }, - "node_modules/rtlcss": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", - "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", - "dependencies": { - "find-up": "^5.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.3.11", - "strip-json-comments": "^3.1.1" - }, - "bin": { - "rtlcss": "bin/rtlcss.js" - } - }, - "node_modules/rtlcss/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/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==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rtlcss/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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/rtlcss/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "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/rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "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/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-stable-stringify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", - "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" - }, - "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/sanitize-html": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", - "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", - "dependencies": { - "deepmerge": "^4.2.2", - "escape-string-regexp": "^4.0.0", - "htmlparser2": "^8.0.0", - "is-plain-object": "^5.0.0", - "parse-srcset": "^1.0.2", - "postcss": "^8.3.11" - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "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==", - "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/screenfull": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", - "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==", - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" - }, - "node_modules/selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", - "dependencies": { - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dependencies": { - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/semver-diff/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/semver/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==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/send/node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-handler": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", - "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", - "dependencies": { - "bytes": "3.0.0", - "content-disposition": "0.5.2", - "fast-url-parser": "1.1.3", - "mime-types": "2.1.18", - "minimatch": "3.1.2", - "path-is-inside": "1.0.2", - "path-to-regexp": "2.2.1", - "range-parser": "1.2.0" - } - }, - "node_modules/serve-handler/node_modules/mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "dependencies": { - "mime-db": "~1.33.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/path-to-regexp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", - "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" - }, - "node_modules/serve-index/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-harmonic-interval": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", - "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==", - "engines": { - "node": ">=6.9" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "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==", - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" - }, - "node_modules/sharp": { - "version": "0.30.7", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", - "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", - "hasInstallScript": true, - "dependencies": { - "color": "^4.2.3", - "detect-libc": "^2.0.1", - "node-addon-api": "^5.0.0", - "prebuild-install": "^7.1.1", - "semver": "^7.3.7", - "simple-get": "^4.0.1", - "tar-fs": "^2.1.1", - "tunnel-agent": "^0.6.0" - }, - "engines": { - "node": ">=12.13.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/sharp/node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, - "engines": { - "node": ">=12.5.0" - } - }, - "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==", - "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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/shell-quote": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", - "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/should": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", - "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", - "dependencies": { - "should-equal": "^2.0.0", - "should-format": "^3.0.3", - "should-type": "^1.4.0", - "should-type-adaptors": "^1.0.1", - "should-util": "^1.0.0" - } - }, - "node_modules/should-equal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", - "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", - "dependencies": { - "should-type": "^1.4.0" - } - }, - "node_modules/should-format": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", - "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", - "dependencies": { - "should-type": "^1.3.0", - "should-type-adaptors": "^1.0.1" - } - }, - "node_modules/should-type": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", - "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" - }, - "node_modules/should-type-adaptors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", - "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", - "dependencies": { - "should-type": "^1.3.0", - "should-util": "^1.0.0" - } - }, - "node_modules/should-util": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", - "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" - }, - "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==", - "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.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "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/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "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": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/simple-html-tokenizer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", - "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", - "dev": true - }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" - }, - "node_modules/sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", - "dependencies": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" - }, - "node_modules/sitemap": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", - "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", - "dependencies": { - "@types/node": "^17.0.5", - "@types/sax": "^1.2.1", - "arg": "^5.0.0", - "sax": "^1.2.4" - }, - "bin": { - "sitemap": "dist/cli.js" - }, - "engines": { - "node": ">=12.0.0", - "npm": ">=5.6.0" - } - }, - "node_modules/sitemap/node_modules/@types/node": { - "version": "17.0.45", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", - "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/slugify": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", - "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/sort-css-media-queries": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", - "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==", - "engines": { - "node": ">= 6.3.0" - } - }, - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "deprecated": "Please use @jridgewell/sourcemap-codec instead" - }, - "node_modules/space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/speed-measure-webpack-plugin": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", - "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "peerDependencies": { - "webpack": "^1 || ^2 || ^3 || ^4 || ^5" - } - }, - "node_modules/split-on-first": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", - "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" - }, - "node_modules/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ssr-window": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", - "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" - }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" - }, - "node_modules/stack-generator": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", - "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", - "dependencies": { - "stackframe": "^1.3.4" - } - }, - "node_modules/stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", - "engines": { - "node": "*" - } - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "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/stackframe": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" - }, - "node_modules/stacktrace-gps": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", - "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", - "dependencies": { - "source-map": "0.5.6", - "stackframe": "^1.3.4" - } - }, - "node_modules/stacktrace-gps/node_modules/source-map": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stacktrace-js": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", - "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", - "dependencies": { - "error-stack-parser": "^2.0.6", - "stack-generator": "^2.0.5", - "stacktrace-gps": "^3.0.4" - } - }, - "node_modules/state-local": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", - "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" - }, - "node_modules/state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/std-env": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", - "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" - }, - "node_modules/stickyfill": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", - "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" - }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "dependencies": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "node_modules/stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string-argv": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", - "dev": true, - "engines": { - "node": ">=0.6.19" - } - }, - "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": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/stringify-object": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", - "dependencies": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "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-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", - "dependencies": { - "inline-style-parser": "0.1.1" - } - }, - "node_modules/styled-components": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", - "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", - "dependencies": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/traverse": "^7.4.5", - "@emotion/is-prop-valid": "^0.8.8", - "@emotion/stylis": "^0.8.4", - "@emotion/unitless": "^0.7.4", - "babel-plugin-styled-components": ">= 1.12.0", - "css-to-react-native": "^3.0.0", - "hoist-non-react-statics": "^3.0.0", - "shallowequal": "^1.1.0", - "supports-color": "^5.5.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/styled-components" - }, - "peerDependencies": { - "react": ">= 16.8.0", - "react-dom": ">= 16.8.0", - "react-is": ">= 16.8.0" - } - }, - "node_modules/styled-components/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/styled-components/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/stylehacks": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", - "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" - }, - "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==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-inline-loader": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", - "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", - "dev": true, - "dependencies": { - "loader-utils": "^1.1.0", - "object-assign": "^4.0.1", - "simple-html-tokenizer": "^0.1.1" - } - }, - "node_modules/svg-inline-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/svg-inline-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/svg-parser": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", - "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" - }, - "node_modules/svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/svgo/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==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/svgo/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/svgo/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/svgo/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/swagger2openapi": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", - "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", - "dependencies": { - "call-me-maybe": "^1.0.1", - "node-fetch": "^2.6.1", - "node-fetch-h2": "^2.3.0", - "node-readfiles": "^0.2.0", - "oas-kit-common": "^1.0.8", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "oas-validator": "^5.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "bin": { - "boast": "boast.js", - "oas-validate": "oas-validate.js", - "swagger2openapi": "swagger2openapi.js" - }, - "funding": { - "url": "https://github.com/Mermade/oas-kit?sponsor=1" - } - }, - "node_modules/swagger2openapi/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/swagger2openapi/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==" - }, - "node_modules/swagger2openapi/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/swagger2openapi/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==", - "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/swagger2openapi/node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/swagger2openapi/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "engines": { - "node": ">=12" - } - }, - "node_modules/swiper": { - "version": "8.4.7", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", - "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", - "funding": [ - { - "type": "patreon", - "url": "https://www.patreon.com/swiperjs" - }, - { - "type": "open_collective", - "url": "http://opencollective.com/swiper" - } - ], - "hasInstallScript": true, - "dependencies": { - "dom7": "^4.0.4", - "ssr-window": "^4.0.2" - }, - "engines": { - "node": ">= 4.7.0" - } - }, - "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/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "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.16.5", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", - "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "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==", - "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/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/terser/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==" - }, - "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-hex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", - "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" - }, - "node_modules/throat": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", - "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", - "dev": true - }, - "node_modules/throttle-debounce": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", - "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==", - "engines": { - "node": ">=10" - } - }, - "node_modules/throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" - }, - "node_modules/timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "dependencies": { - "setimmediate": "^1.0.4" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/timespan": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", - "integrity": "sha512-0Jq9+58T2wbOyLth0EU+AUb6JMGCLaTWIykJFa7hyAybjVH9gpVMTfUAwo5fWAvtFt2Tjh/Elg8JtgNpnMnM8g==", - "engines": { - "node": ">= 0.2.0" - } - }, - "node_modules/tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" - }, - "node_modules/tiny-warning": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" - }, - "node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" - }, - "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "engines": { - "node": ">=4" - } - }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "engines": { - "node": ">=6" - } - }, - "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==", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "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/trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==", - "deprecated": "Use String.prototype.trim() instead" - }, - "node_modules/trim-trailing-lines": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", - "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/triple-beam": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", - "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/ts-easing": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", - "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" - }, - "node_modules/ts-keycode-enum": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", - "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" - }, - "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "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==", - "devOptional": 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": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", - "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/uglify-js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz", - "integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ==", - "bin": { - "uglifyjs": "bin/uglifyjs" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "dependencies": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "engines": { - "node": ">=4" - } - }, - "node_modules/unified": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", - "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/unist-builder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", - "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-find-after": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", - "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", - "dependencies": { - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-generated": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", - "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-is": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", - "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", - "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", - "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", - "dependencies": { - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-select": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", - "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", - "dependencies": { - "@types/unist": "^2.0.0", - "css-selector-parser": "^1.0.0", - "nth-check": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-select/node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "dependencies": { - "@types/unist": "^2.0.2" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/unload": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", - "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", - "dependencies": { - "@babel/runtime": "^7.6.2", - "detect-node": "^2.0.4" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/yeoman/update-notifier?sponsor=1" - } - }, - "node_modules/update-notifier/node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/update-notifier/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" - }, - "node_modules/update-notifier/node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/update-notifier/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==" - }, - "node_modules/update-notifier/node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/update-notifier/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/update-notifier/node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/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==", - "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/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/urijs": { - "version": "1.19.11", - "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", - "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" - }, - "node_modules/url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, - "node_modules/url-loader": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", - "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", - "dependencies": { - "loader-utils": "^2.0.0", - "mime-types": "^2.1.27", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "file-loader": "*", - "webpack": "^4.0.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "file-loader": { - "optional": true - } - } - }, - "node_modules/url-loader/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==", - "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/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/url-template": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", - "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" - }, - "node_modules/url/node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" - }, - "node_modules/use-composed-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", - "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/use-isomorphic-layout-effect": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", - "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-latest": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", - "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", - "dependencies": { - "use-isomorphic-layout-effect": "^1.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "node_modules/utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" - }, - "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/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "engines": { - "node": ">= 0.4.0" - } - }, - "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-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", - "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.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/validate.io-array": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", - "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" - }, - "node_modules/validate.io-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", - "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" - }, - "node_modules/validate.io-integer": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", - "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", - "dependencies": { - "validate.io-number": "^1.0.3" - } - }, - "node_modules/validate.io-integer-array": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", - "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", - "dependencies": { - "validate.io-array": "^1.0.3", - "validate.io-integer": "^1.0.4" - } - }, - "node_modules/validate.io-number": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", - "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" - }, - "node_modules/value-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", - "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-location": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", - "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" - }, - "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==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", - "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/wait-on": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", - "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", - "dependencies": { - "axios": "^0.25.0", - "joi": "^17.6.0", - "lodash": "^4.17.21", - "minimist": "^1.2.5", - "rxjs": "^7.5.4" - }, - "bin": { - "wait-on": "bin/wait-on" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/wait-on/node_modules/axios": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", - "dependencies": { - "follow-redirects": "^1.14.7" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/web-namespaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", - "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", - "engines": { - "node": ">= 14" - } - }, - "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.75.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", - "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "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-bundle-analyzer": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", - "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", - "dependencies": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "gzip-size": "^6.0.0", - "lodash": "^4.17.20", - "opener": "^1.5.2", - "sirv": "^1.0.7", - "ws": "^7.3.1" - }, - "bin": { - "webpack-bundle-analyzer": "lib/bin/analyzer.js" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/webpack-bundle-analyzer/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==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/webpack-dev-middleware/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-middleware/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==" - }, - "node_modules/webpack-dev-middleware/node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", - "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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/webpack-dev-server/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-server/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==" - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", - "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "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==", - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "engines": { - "node": ">=10.13.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==", - "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/webpackbar": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", - "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", - "dependencies": { - "chalk": "^4.1.0", - "consola": "^2.15.3", - "pretty-time": "^1.1.0", - "std-env": "^3.0.1" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "webpack": "3 || 4 || 5" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "engines": { - "node": ">=0.8.0" - } - }, - "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-fetch": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", - "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" - }, - "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/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "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==", - "dev": true, - "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-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/widest-line": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", - "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", - "dependencies": { - "string-width": "^5.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" - }, - "node_modules/winston": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.10.0.tgz", - "integrity": "sha512-nT6SIDaE9B7ZRO0u3UvdrimG0HkB7dSTAgInQnNR2SOPJ4bvq5q79+pXLftKmP52lJGW15+H5MCK0nM9D3KB/g==", - "dependencies": { - "@colors/colors": "1.5.0", - "@dabh/diagnostics": "^2.0.2", - "async": "^3.2.3", - "is-stream": "^2.0.0", - "logform": "^2.4.0", - "one-time": "^1.0.0", - "readable-stream": "^3.4.0", - "safe-stable-stringify": "^2.3.1", - "stack-trace": "0.0.x", - "triple-beam": "^1.3.0", - "winston-transport": "^4.5.0" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/winston-transport": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz", - "integrity": "sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==", - "dependencies": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", - "triple-beam": "^1.3.0" - }, - "engines": { - "node": ">= 6.4.0" - } - }, - "node_modules/winston/node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", - "engines": { - "node": ">=10" - } - }, - "node_modules/wolfy87-eventemitter": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", - "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" - }, - "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==", - "devOptional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/wrench": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/wrench/-/wrench-1.3.9.tgz", - "integrity": "sha512-srTJQmLTP5YtW+F5zDuqjMEZqLLr/eJOZfDI5ibfPfRMeDh3oBUefAscuH0q5wBKE339ptH/S/0D18ZkfOfmKQ==", - "deprecated": "wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.", - "engines": { - "node": ">=0.1.97" - } - }, - "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==", - "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.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "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/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/xml-formatter": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", - "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", - "dependencies": { - "xml-parser-xo": "^3.2.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/xml-js": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", - "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", - "dependencies": { - "sax": "^1.2.4" - }, - "bin": { - "xml-js": "bin/cli.js" - } - }, - "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/xml-parser-xo": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", - "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==", - "engines": { - "node": ">= 10" - } - }, - "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/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "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/yaml-ast-parser": { - "version": "0.0.43", - "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", - "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" - }, - "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/yargs/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/yargs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zustand": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", - "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", - "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "react": ">=16.8" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - } - } - }, - "node_modules/zwitch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", - "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - } - }, - "dependencies": { - "@adobe/css-tools": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", - "dev": true - }, - "@algolia/autocomplete-core": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", - "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", - "requires": { - "@algolia/autocomplete-shared": "1.7.4" - } - }, - "@algolia/autocomplete-preset-algolia": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", - "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", - "requires": { - "@algolia/autocomplete-shared": "1.7.4" - } - }, - "@algolia/autocomplete-shared": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", - "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" - }, - "@algolia/cache-browser-local-storage": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", - "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", - "requires": { - "@algolia/cache-common": "4.16.0" - } - }, - "@algolia/cache-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", - "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" - }, - "@algolia/cache-in-memory": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", - "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", - "requires": { - "@algolia/cache-common": "4.16.0" - } - }, - "@algolia/client-account": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", - "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-analytics": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", - "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", - "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", - "requires": { - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-personalization": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", - "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/client-search": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", - "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", - "requires": { - "@algolia/client-common": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "@algolia/events": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", - "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" - }, - "@algolia/logger-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", - "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" - }, - "@algolia/logger-console": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", - "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", - "requires": { - "@algolia/logger-common": "4.16.0" - } - }, - "@algolia/requester-browser-xhr": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", - "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", - "requires": { - "@algolia/requester-common": "4.16.0" - } - }, - "@algolia/requester-common": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", - "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" - }, - "@algolia/requester-node-http": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", - "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", - "requires": { - "@algolia/requester-common": "4.16.0" - } - }, - "@algolia/transporter": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", - "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", - "requires": { - "@algolia/cache-common": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/requester-common": "4.16.0" - } - }, - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", - "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==" - }, - "@babel/core": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", - "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.0", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.21.0", - "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.0", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/generator": { - "version": "7.21.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", - "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", - "requires": { - "@babel/types": "^7.21.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", - "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", - "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", - "requires": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", - "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", - "requires": { - "@babel/types": "^7.21.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" - } - }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "requires": { - "@babel/types": "^7.20.2" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "requires": { - "@babel/types": "^7.20.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" - }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" - }, - "@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==" - }, - "@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "requires": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - } - }, - "@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", - "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "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.21.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", - "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==" - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", - "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", - "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", - "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@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==", - "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==", - "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==", - "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==", - "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==", - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.19.0" - } - }, - "@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==", - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", - "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", - "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.19.0" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/template": "^7.20.7" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", - "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", - "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "requires": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", - "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", - "requires": { - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", - "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-react-constant-elements": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", - "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-react-display-name": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", - "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-react-jsx": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", - "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.21.0" - } - }, - "@babel/plugin-transform-react-jsx-development": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", - "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", - "requires": { - "@babel/plugin-transform-react-jsx": "^7.18.6" - } - }, - "@babel/plugin-transform-react-pure-annotations": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", - "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "regenerator-transform": "^0.15.1" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", - "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", - "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-typescript": "^7.20.0" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/preset-env": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", - "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", - "requires": { - "@babel/compat-data": "^7.20.1", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-async-generator-functions": "^7.20.1", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.2", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.20.2", - "@babel/plugin-transform-classes": "^7.20.2", - "@babel/plugin-transform-computed-properties": "^7.18.9", - "@babel/plugin-transform-destructuring": "^7.20.2", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.8", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.19.6", - "@babel/plugin-transform-modules-commonjs": "^7.19.6", - "@babel/plugin-transform-modules-systemjs": "^7.19.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.20.1", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.19.0", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "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.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", - "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-react-display-name": "^7.18.6", - "@babel/plugin-transform-react-jsx": "^7.18.6", - "@babel/plugin-transform-react-jsx-development": "^7.18.6", - "@babel/plugin-transform-react-pure-annotations": "^7.18.6" - } - }, - "@babel/preset-typescript": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", - "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.21.0", - "@babel/plugin-transform-typescript": "^7.21.0" - } - }, - "@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" - }, - "@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", - "requires": { - "regenerator-runtime": "^0.13.11" - } - }, - "@babel/runtime-corejs3": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", - "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", - "requires": { - "core-js-pure": "^3.25.1", - "regenerator-runtime": "^0.13.11" - } - }, - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - }, - "@babel/traverse": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", - "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.2", - "@babel/types": "^7.21.2", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", - "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", - "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "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 - }, - "@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==" - }, - "@cypress/react": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", - "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", - "dev": true, - "requires": {} - }, - "@cypress/request": { - "version": "2.88.11", - "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", - "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "http-signature": "~1.3.6", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "performance-now": "^2.1.0", - "qs": "~6.10.3", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^8.3.2" - }, - "dependencies": { - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - } - } - }, - "@cypress/webpack-dev-server": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", - "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", - "dev": true, - "requires": { - "find-up": "6.3.0", - "fs-extra": "9.1.0", - "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", - "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", - "local-pkg": "0.4.1", - "speed-measure-webpack-plugin": "1.4.2", - "tslib": "^2.3.1", - "webpack-dev-server": "^4.7.4", - "webpack-merge": "^5.4.0" - } - }, - "@cypress/xvfb": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", - "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "lodash.once": "^4.1.1" - }, - "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" - } - } - } - }, - "@dabh/diagnostics": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", - "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", - "requires": { - "colorspace": "1.1.x", - "enabled": "2.0.x", - "kuler": "^2.0.0" - } - }, - "@dbt-labs/react-dbt-dag": { - "version": "0.8.7", - "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", - "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", - "optional": true, - "requires": { - "classnames": "^2.3.1", - "dagre": "^0.8.5", - "graphlib": "^2.1.8", - "lodash": "^4.17.21", - "react-flow-renderer": "^10.3.8" - } - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==" - }, - "@docsearch/css": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", - "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" - }, - "@docsearch/react": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", - "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", - "requires": { - "@algolia/autocomplete-core": "1.7.4", - "@algolia/autocomplete-preset-algolia": "1.7.4", - "@docsearch/css": "3.3.3", - "algoliasearch": "^4.0.0" - } - }, - "@docusaurus/core": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", - "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", - "requires": { - "@babel/core": "^7.18.6", - "@babel/generator": "^7.18.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-runtime": "^7.18.6", - "@babel/preset-env": "^7.18.6", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@babel/runtime": "^7.18.6", - "@babel/runtime-corejs3": "^7.18.6", - "@babel/traverse": "^7.18.8", - "@docusaurus/cssnano-preset": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@slorber/static-site-generator-webpack-plugin": "^4.0.7", - "@svgr/webpack": "^6.2.1", - "autoprefixer": "^10.4.7", - "babel-loader": "^8.2.5", - "babel-plugin-dynamic-import-node": "^2.3.3", - "boxen": "^6.2.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "clean-css": "^5.3.0", - "cli-table3": "^0.6.2", - "combine-promises": "^1.1.0", - "commander": "^5.1.0", - "copy-webpack-plugin": "^11.0.0", - "core-js": "^3.23.3", - "css-loader": "^6.7.1", - "css-minimizer-webpack-plugin": "^4.0.0", - "cssnano": "^5.1.12", - "del": "^6.1.1", - "detect-port": "^1.3.0", - "escape-html": "^1.0.3", - "eta": "^2.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "html-minifier-terser": "^6.1.0", - "html-tags": "^3.2.0", - "html-webpack-plugin": "^5.5.0", - "import-fresh": "^3.3.0", - "leven": "^3.1.0", - "lodash": "^4.17.21", - "mini-css-extract-plugin": "^2.6.1", - "postcss": "^8.4.14", - "postcss-loader": "^7.0.0", - "prompts": "^2.4.2", - "react-dev-utils": "^12.0.1", - "react-helmet-async": "^1.3.0", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", - "react-loadable-ssr-addon-v5-slorber": "^1.0.1", - "react-router": "^5.3.3", - "react-router-config": "^5.1.1", - "react-router-dom": "^5.3.3", - "rtl-detect": "^1.0.4", - "semver": "^7.3.7", - "serve-handler": "^6.1.3", - "shelljs": "^0.8.5", - "terser-webpack-plugin": "^5.3.3", - "tslib": "^2.4.0", - "update-notifier": "^5.1.0", - "url-loader": "^4.1.1", - "wait-on": "^6.0.1", - "webpack": "^5.73.0", - "webpack-bundle-analyzer": "^4.5.0", - "webpack-dev-server": "^4.9.3", - "webpack-merge": "^5.8.0", - "webpackbar": "^5.0.2" - }, - "dependencies": { - "css-loader": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", - "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" - } - }, - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "requires": {} - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "requires": { - "icss-utils": "^5.0.0" - } - } - } - }, - "@docusaurus/cssnano-preset": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", - "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", - "requires": { - "cssnano-preset-advanced": "^5.3.8", - "postcss": "^8.4.14", - "postcss-sort-media-queries": "^4.2.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/eslint-plugin": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", - "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", - "dev": true, - "requires": { - "@typescript-eslint/utils": "^5.30.5", - "tslib": "^2.4.0" - } - }, - "@docusaurus/logger": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", - "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", - "requires": { - "chalk": "^4.1.2", - "tslib": "^2.4.0" - } - }, - "@docusaurus/lqip-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", - "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", - "requires": { - "@docusaurus/logger": "2.3.1", - "file-loader": "^6.2.0", - "lodash": "^4.17.21", - "sharp": "^0.30.7", - "tslib": "^2.4.0" - } - }, - "@docusaurus/mdx-loader": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", - "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", - "requires": { - "@babel/parser": "^7.18.8", - "@babel/traverse": "^7.18.8", - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@mdx-js/mdx": "^1.6.22", - "escape-html": "^1.0.3", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "image-size": "^1.0.1", - "mdast-util-to-string": "^2.0.0", - "remark-emoji": "^2.2.0", - "stringify-object": "^3.3.0", - "tslib": "^2.4.0", - "unified": "^9.2.2", - "unist-util-visit": "^2.0.3", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/module-type-aliases": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", - "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", - "requires": { - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/types": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "@types/react-router-dom": "*", - "react-helmet-async": "*", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" - } - }, - "@docusaurus/plugin-content-blog": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", - "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "cheerio": "^1.0.0-rc.12", - "feed": "^4.2.2", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "reading-time": "^1.5.0", - "tslib": "^2.4.0", - "unist-util-visit": "^2.0.3", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-content-docs": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", - "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@types/react-router-config": "^5.0.6", - "combine-promises": "^1.1.0", - "fs-extra": "^10.1.0", - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-content-pages": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", - "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-debug": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", - "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "fs-extra": "^10.1.0", - "react-json-view": "^1.21.3", - "tslib": "^2.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/plugin-google-analytics": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", - "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/plugin-google-gtag": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", - "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/plugin-google-tag-manager": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", - "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "tslib": "^2.4.0" - } - }, - "@docusaurus/plugin-ideal-image": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", - "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/lqip-loader": "2.3.1", - "@docusaurus/responsive-loader": "^1.7.0", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@endiliey/react-ideal-image": "^0.0.11", - "react-waypoint": "^10.3.0", - "sharp": "^0.30.7", - "tslib": "^2.4.0", - "webpack": "^5.73.0" - } - }, - "@docusaurus/plugin-sitemap": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", - "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "fs-extra": "^10.1.0", - "sitemap": "^7.1.1", - "tslib": "^2.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/preset-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", - "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/plugin-debug": "2.3.1", - "@docusaurus/plugin-google-analytics": "2.3.1", - "@docusaurus/plugin-google-gtag": "2.3.1", - "@docusaurus/plugin-google-tag-manager": "2.3.1", - "@docusaurus/plugin-sitemap": "2.3.1", - "@docusaurus/theme-classic": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-search-algolia": "2.3.1", - "@docusaurus/types": "2.3.1" - } - }, - "@docusaurus/react-loadable": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "requires": { - "@types/react": "*", - "prop-types": "^15.6.2" - } - }, - "@docusaurus/responsive-loader": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", - "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", - "requires": { - "loader-utils": "^2.0.0" - } - }, - "@docusaurus/theme-classic": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", - "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", - "requires": { - "@docusaurus/core": "2.3.1", - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/types": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-common": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "@mdx-js/react": "^1.6.22", - "clsx": "^1.2.1", - "copy-text-to-clipboard": "^3.0.1", - "infima": "0.2.0-alpha.42", - "lodash": "^4.17.21", - "nprogress": "^0.2.0", - "postcss": "^8.4.14", - "prism-react-renderer": "^1.3.5", - "prismjs": "^1.28.0", - "react-router-dom": "^5.3.3", - "rtlcss": "^3.5.0", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - } - }, - "@docusaurus/theme-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", - "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", - "requires": { - "@docusaurus/mdx-loader": "2.3.1", - "@docusaurus/module-type-aliases": "2.3.1", - "@docusaurus/plugin-content-blog": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/plugin-content-pages": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router-config": "*", - "clsx": "^1.2.1", - "parse-numeric-range": "^1.3.0", - "prism-react-renderer": "^1.3.5", - "tslib": "^2.4.0", - "use-sync-external-store": "^1.2.0", - "utility-types": "^3.10.0" - } - }, - "@docusaurus/theme-search-algolia": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", - "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", - "requires": { - "@docsearch/react": "^3.1.1", - "@docusaurus/core": "2.3.1", - "@docusaurus/logger": "2.3.1", - "@docusaurus/plugin-content-docs": "2.3.1", - "@docusaurus/theme-common": "2.3.1", - "@docusaurus/theme-translations": "2.3.1", - "@docusaurus/utils": "2.3.1", - "@docusaurus/utils-validation": "2.3.1", - "algoliasearch": "^4.13.1", - "algoliasearch-helper": "^3.10.0", - "clsx": "^1.2.1", - "eta": "^2.0.0", - "fs-extra": "^10.1.0", - "lodash": "^4.17.21", - "tslib": "^2.4.0", - "utility-types": "^3.10.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/theme-translations": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", - "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", - "requires": { - "fs-extra": "^10.1.0", - "tslib": "^2.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/types": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", - "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*", - "commander": "^5.1.0", - "joi": "^17.6.0", - "react-helmet-async": "^1.3.0", - "utility-types": "^3.10.0", - "webpack": "^5.73.0", - "webpack-merge": "^5.8.0" - } - }, - "@docusaurus/utils": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", - "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", - "requires": { - "@docusaurus/logger": "2.3.1", - "@svgr/webpack": "^6.2.1", - "escape-string-regexp": "^4.0.0", - "file-loader": "^6.2.0", - "fs-extra": "^10.1.0", - "github-slugger": "^1.4.0", - "globby": "^11.1.0", - "gray-matter": "^4.0.3", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "micromatch": "^4.0.5", - "resolve-pathname": "^3.0.0", - "shelljs": "^0.8.5", - "tslib": "^2.4.0", - "url-loader": "^4.1.1", - "webpack": "^5.73.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "@docusaurus/utils-common": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", - "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", - "requires": { - "tslib": "^2.4.0" - } - }, - "@docusaurus/utils-validation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", - "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", - "requires": { - "@docusaurus/logger": "2.3.1", - "@docusaurus/utils": "2.3.1", - "joi": "^17.6.0", - "js-yaml": "^4.1.0", - "tslib": "^2.4.0" - } - }, - "@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==", - "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==" - }, - "@emotion/stylis": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", - "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" - }, - "@emotion/unitless": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", - "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" - }, - "@endiliey/react-ideal-image": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", - "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", - "requires": {} - }, - "@eslint/eslintrc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", - "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", - "devOptional": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": 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==", - "devOptional": true - } - } - }, - "@eslint/js": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", - "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", - "devOptional": true - }, - "@exodus/schemasafe": { - "version": "1.0.0-rc.10", - "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", - "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" - }, - "@faker-js/faker": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", - "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" - }, - "@fortawesome/fontawesome-common-types": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", - "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==" - }, - "@fortawesome/fontawesome-svg-core": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", - "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.4.0" - } - }, - "@fortawesome/react-fontawesome": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", - "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", - "requires": { - "prop-types": "^15.8.1" - } - }, - "@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" - }, - "@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "devOptional": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "devOptional": true - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "devOptional": 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" - }, - "dependencies": { - "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" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "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" - } - }, - "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" - } - }, - "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" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "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" - } - }, - "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 - }, - "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 - } - } - }, - "@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.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/create-cache-key-function": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", - "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1" - } - }, - "@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", - "dev": true, - "requires": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - } - }, - "@jest/expect-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", - "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", - "dev": true, - "requires": { - "jest-get-type": "^29.4.3" - } - }, - "@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - } - } - }, - "@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } - }, - "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" - } - } - } - }, - "@jest/schemas": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", - "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", - "requires": { - "@sinclair/typebox": "^0.25.16" - } - }, - "@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - } - }, - "@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - } - }, - "@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "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" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "@jsdevtools/ono": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", - "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" - }, - "@juggle/resize-observer": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", - "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" - }, - "@mdx-js/mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", - "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", - "requires": { - "@babel/core": "7.12.9", - "@babel/plugin-syntax-jsx": "7.12.1", - "@babel/plugin-syntax-object-rest-spread": "7.8.3", - "@mdx-js/util": "1.6.22", - "babel-plugin-apply-mdx-type-prop": "1.6.22", - "babel-plugin-extract-import-names": "1.6.22", - "camelcase-css": "2.0.1", - "detab": "2.0.4", - "hast-util-raw": "6.0.1", - "lodash.uniq": "4.5.0", - "mdast-util-to-hast": "10.0.1", - "remark-footnotes": "2.0.0", - "remark-mdx": "1.6.22", - "remark-parse": "8.0.3", - "remark-squeeze-paragraphs": "4.0.0", - "style-to-object": "0.3.0", - "unified": "9.2.0", - "unist-builder": "2.0.3", - "unist-util-visit": "2.0.3" - }, - "dependencies": { - "@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" - }, - "unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - } - } - }, - "@mdx-js/react": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", - "requires": {} - }, - "@mdx-js/util": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", - "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==" - }, - "@monaco-editor/loader": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", - "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", - "requires": { - "state-local": "^1.0.6" - } - }, - "@monaco-editor/react": { - "version": "4.4.6", - "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", - "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", - "requires": { - "@monaco-editor/loader": "^1.3.2", - "prop-types": "^15.7.2" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" - }, - "@react-hook/debounce": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", - "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", - "requires": { - "@react-hook/latest": "^1.0.2" - } - }, - "@react-hook/event": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", - "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", - "requires": {} - }, - "@react-hook/latest": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", - "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", - "requires": {} - }, - "@react-hook/passive-layout-effect": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", - "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", - "requires": {} - }, - "@react-hook/resize-observer": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", - "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", - "requires": { - "@juggle/resize-observer": "^3.3.1", - "@react-hook/latest": "^1.0.2", - "@react-hook/passive-layout-effect": "^1.2.0" - } - }, - "@react-hook/size": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", - "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", - "requires": { - "@react-hook/passive-layout-effect": "^1.2.0", - "@react-hook/resize-observer": "^1.2.1" - } - }, - "@react-hook/throttle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", - "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", - "requires": { - "@react-hook/latest": "^1.0.2" - } - }, - "@react-hook/window-size": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", - "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", - "requires": { - "@react-hook/debounce": "^3.0.0", - "@react-hook/event": "^1.2.1", - "@react-hook/throttle": "^2.2.0" - } - }, - "@react-types/button": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", - "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", - "requires": { - "@react-types/shared": "^3.8.0" - } - }, - "@react-types/checkbox": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", - "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", - "requires": { - "@react-types/shared": "^3.18.1" - }, - "dependencies": { - "@react-types/shared": { - "version": "3.18.1", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", - "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", - "requires": {} - } - } - }, - "@react-types/radio": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", - "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", - "requires": { - "@react-types/shared": "^3.8.0" - } - }, - "@react-types/shared": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", - "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", - "requires": {} - }, - "@react-types/switch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", - "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", - "requires": { - "@react-types/checkbox": "^3.2.3", - "@react-types/shared": "^3.8.0" - } - }, - "@react-types/textfield": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", - "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", - "requires": { - "@react-types/shared": "^3.9.0" - } - }, - "@redocly/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "dependencies": { - "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==" - } - } - }, - "@redocly/openapi-core": { - "version": "1.0.0-beta.123", - "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", - "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", - "requires": { - "@redocly/ajv": "^8.11.0", - "@types/node": "^14.11.8", - "colorette": "^1.2.0", - "js-levenshtein": "^1.1.6", - "js-yaml": "^4.1.0", - "lodash.isequal": "^4.5.0", - "minimatch": "^5.0.1", - "node-fetch": "^2.6.1", - "pluralize": "^8.0.0", - "yaml-ast-parser": "0.0.43" - }, - "dependencies": { - "@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" - }, - "minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "@rehooks/component-size": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", - "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", - "requires": {} - }, - "@sentry/browser": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", - "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", - "requires": { - "@sentry/core": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/core": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", - "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", - "requires": { - "@sentry/hub": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/hub": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", - "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", - "requires": { - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/minimal": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", - "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", - "requires": { - "@sentry/hub": "6.19.7", - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/react": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", - "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", - "requires": { - "@sentry/browser": "6.19.7", - "@sentry/minimal": "6.19.7", - "@sentry/types": "6.19.7", - "@sentry/utils": "6.19.7", - "hoist-non-react-statics": "^3.3.2", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sentry/types": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", - "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==" - }, - "@sentry/utils": { - "version": "6.19.7", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", - "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", - "requires": { - "@sentry/types": "6.19.7", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" - }, - "@sideway/pinpoint": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" - }, - "@sinclair/typebox": { - "version": "0.25.24", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", - "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" - }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" - }, - "@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@slorber/static-site-generator-webpack-plugin": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", - "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", - "requires": { - "eval": "^0.1.8", - "p-map": "^4.0.0", - "webpack-sources": "^3.2.2" - } - }, - "@stoplight/elements": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", - "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", - "requires": { - "@stoplight/elements-core": "~7.7.17", - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "file-saver": "^2.0.5", - "lodash": "^4.17.19", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0" - } - }, - "@stoplight/elements-core": { - "version": "7.7.17", - "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", - "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", - "requires": { - "@stoplight/http-spec": "^5.1.4", - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-ref-parser": "^9.0.5", - "@stoplight/json-schema-sampler": "0.2.3", - "@stoplight/json-schema-viewer": "^4.9.0", - "@stoplight/markdown-viewer": "^5.6.0", - "@stoplight/mosaic": "^1.33.0", - "@stoplight/mosaic-code-editor": "^1.33.0", - "@stoplight/mosaic-code-viewer": "^1.33.0", - "@stoplight/path": "^1.3.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@stoplight/types": "^13.7.0", - "@stoplight/yaml": "^4.2.3", - "classnames": "^2.2.6", - "httpsnippet-lite": "^3.0.1", - "jotai": "1.3.9", - "json-schema": "^0.4.0", - "lodash": "^4.17.19", - "nanoid": "^3.1.32", - "prop-types": "^15.7.2", - "react-query": "^3.34.19", - "react-router-dom": "^5.2.0", - "react-router-hash-link": "^2.1.0", - "tslib": "^2.1.0", - "urijs": "^1.19.11", - "util": "^0.12.4", - "xml-formatter": "^2.6.1" - } - }, - "@stoplight/http-spec": { - "version": "5.9.4", - "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", - "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", - "requires": { - "@stoplight/json": "^3.18.1", - "@stoplight/json-schema-generator": "1.0.2", - "@stoplight/types": "^13.15.0", - "@types/json-schema": "7.0.11", - "@types/swagger-schema-official": "~2.0.22", - "@types/type-is": "^1.6.3", - "fnv-plus": "^1.3.1", - "lodash.isequalwith": "^4.4.0", - "lodash.pick": "^4.4.0", - "lodash.pickby": "^4.6.0", - "openapi3-ts": "^2.0.2", - "postman-collection": "^4.1.2", - "tslib": "^2.3.1", - "type-is": "^1.6.18" - } - }, - "@stoplight/json": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", - "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", - "requires": { - "@stoplight/ordered-object-literal": "^1.0.3", - "@stoplight/path": "^1.3.2", - "@stoplight/types": "^13.6.0", - "jsonc-parser": "~2.2.1", - "lodash": "^4.17.21", - "safe-stable-stringify": "^1.1" - }, - "dependencies": { - "jsonc-parser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", - "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" - } - } - }, - "@stoplight/json-schema-generator": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", - "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", - "requires": { - "cross-fetch": "^3.1.5", - "json-promise": "1.1.x", - "minimist": "1.2.6", - "mkdirp": "0.5.x", - "pretty-data": "0.40.x" - }, - "dependencies": { - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - } - } - }, - "@stoplight/json-schema-merge-allof": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", - "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", - "requires": { - "compute-lcm": "^1.1.0", - "json-schema-compare": "^0.2.2", - "lodash": "^4.17.4" - } - }, - "@stoplight/json-schema-ref-parser": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", - "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", - "requires": { - "@jsdevtools/ono": "^7.1.3", - "@stoplight/path": "^1.3.2", - "@stoplight/yaml": "^4.0.2", - "call-me-maybe": "^1.0.1", - "fastestsmallesttextencoderdecoder": "^1.0.22", - "isomorphic-fetch": "^3.0.0", - "node-abort-controller": "^3.0.1" - } - }, - "@stoplight/json-schema-sampler": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", - "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", - "requires": { - "@types/json-schema": "^7.0.7", - "json-pointer": "^0.6.1" - } - }, - "@stoplight/json-schema-tree": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", - "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", - "requires": { - "@stoplight/json": "^3.12.0", - "@stoplight/json-schema-merge-allof": "^0.7.8", - "@stoplight/lifecycle": "^2.3.2", - "@types/json-schema": "^7.0.7", - "magic-error": "0.0.1" - } - }, - "@stoplight/json-schema-viewer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", - "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", - "requires": { - "@stoplight/json": "^3.20.1", - "@stoplight/json-schema-tree": "^2.2.2", - "@stoplight/react-error-boundary": "^2.0.0", - "@types/json-schema": "^7.0.7", - "classnames": "^2.2.6", - "fnv-plus": "^1.3.1", - "jotai": "^1.4.5", - "lodash": "^4.17.19" - }, - "dependencies": { - "jotai": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", - "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", - "requires": {} - } - } - }, - "@stoplight/lifecycle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", - "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", - "requires": { - "tslib": "^2.3.1", - "wolfy87-eventemitter": "~5.2.8" - } - }, - "@stoplight/markdown": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", - "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", - "requires": { - "@stoplight/types": "^12.3.0", - "@stoplight/yaml": "^4.2.2", - "github-slugger": "^1.3.0", - "hast-util-whitespace": "^2.0.0", - "lodash": "^4.17.21", - "mdast-util-to-string": "^3.1.0", - "remark-frontmatter": "^3.0.0", - "remark-gfm": "^1.0.0", - "remark-parse": "^9.0.0", - "remark-stringify": "^9.0.1", - "tslib": "^2.3.0", - "unified": "^9.2.1", - "unist-util-select": "^4.0.0", - "unist-util-visit": "^3.1.0" - }, - "dependencies": { - "@stoplight/types": { - "version": "12.5.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", - "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", - "requires": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - } - }, - "mdast-util-to-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", - "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", - "requires": { - "@types/mdast": "^3.0.0" - } - }, - "remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "requires": { - "mdast-util-from-markdown": "^0.8.0" - } - }, - "unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - } - }, - "unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - } - } - }, - "@stoplight/markdown-viewer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", - "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", - "requires": { - "@rehooks/component-size": "^1.0.3", - "@stoplight/markdown": "^3.1.3", - "@stoplight/react-error-boundary": "^2.0.0", - "deepmerge": "^4.2.2", - "hast-to-hyperscript": "^10.0.1", - "hast-util-raw": "7.0.0", - "hast-util-sanitize": "^4.0.0", - "hastscript": "^7.0.2", - "mdast-util-to-hast": "^11.1.1", - "remark-parse": "^9.0.0", - "unified": "^9.2.1", - "unist-builder": "^3.0.0", - "unist-util-select": "^4.0.1", - "unist-util-visit": "^3.1.0" - }, - "dependencies": { - "@types/parse5": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", - "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" - }, - "comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==" - }, - "hast-to-hyperscript": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", - "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", - "requires": { - "@types/unist": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-object": "^0.4.1", - "web-namespaces": "^2.0.0" - } - }, - "hast-util-from-parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", - "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", - "requires": { - "@types/hast": "^2.0.0", - "@types/unist": "^2.0.0", - "hastscript": "^7.0.0", - "property-information": "^6.0.0", - "vfile": "^5.0.0", - "vfile-location": "^4.0.0", - "web-namespaces": "^2.0.0" - }, - "dependencies": { - "vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "requires": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - } - } - } - }, - "hast-util-parse-selector": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", - "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", - "requires": { - "@types/hast": "^2.0.0" - } - }, - "hast-util-raw": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", - "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", - "requires": { - "@types/hast": "^2.0.0", - "@types/parse5": "^6.0.0", - "@types/unist": "^2.0.3", - "hast-util-from-parse5": "^7.0.0", - "hast-util-to-parse5": "^7.0.0", - "html-void-elements": "^2.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - } - }, - "hast-util-to-parse5": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", - "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - } - }, - "hastscript": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", - "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^3.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0" - } - }, - "html-void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", - "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==" - }, - "mdast-util-definitions": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", - "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", - "requires": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" - }, - "dependencies": { - "unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - } - }, - "unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - } - } - }, - "mdast-util-to-hast": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", - "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", - "requires": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "@types/mdurl": "^1.0.0", - "mdast-util-definitions": "^5.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^3.0.0", - "unist-util-generated": "^2.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^4.0.0" - }, - "dependencies": { - "unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" - } - }, - "unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - } - } - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "property-information": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", - "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==" - }, - "remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "requires": { - "mdast-util-from-markdown": "^0.8.0" - } - }, - "space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==" - }, - "style-to-object": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", - "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", - "requires": { - "inline-style-parser": "0.1.1" - } - }, - "unist-builder": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", - "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-generated": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", - "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==" - }, - "unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-position": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", - "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-stringify-position": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", - "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", - "requires": { - "@types/unist": "^2.0.0" - } - }, - "unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - } - }, - "unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - } - }, - "vfile-location": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", - "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", - "requires": { - "@types/unist": "^2.0.0", - "vfile": "^5.0.0" - }, - "dependencies": { - "vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "requires": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - } - } - } - }, - "vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - } - }, - "web-namespaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", - "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==" - }, - "zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" - } - } - }, - "@stoplight/mosaic": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", - "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", - "requires": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/button": "3.4.1", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@react-types/textfield": "3.3.0", - "@stoplight/types": "^13.7.0", - "@types/react": "^17.0.3", - "@types/react-dom": "^17.0.3", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "dependencies": { - "use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "requires": { - "@juggle/resize-observer": "^3.3.1" - } - } - } - }, - "@stoplight/mosaic-code-editor": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", - "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", - "requires": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/mosaic-code-viewer": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "dependencies": { - "use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "requires": { - "@juggle/resize-observer": "^3.3.1" - } - } - } - }, - "@stoplight/mosaic-code-viewer": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", - "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", - "requires": { - "@fortawesome/fontawesome-svg-core": "^6.1.1", - "@fortawesome/react-fontawesome": "^0.2.0", - "@react-hook/size": "^2.1.1", - "@react-hook/window-size": "^3.0.7", - "@react-types/radio": "3.1.2", - "@react-types/shared": "3.9.0", - "@react-types/switch": "3.1.2", - "@stoplight/mosaic": "1.40.0", - "@stoplight/types": "^13.7.0", - "clsx": "^1.1.1", - "copy-to-clipboard": "^3.3.1", - "dom-helpers": "^3.3.1", - "lodash.get": "^4.4.2", - "nano-memoize": "^1.2.1", - "polished": "^4.1.3", - "prism-react-renderer": "^1.2.1", - "prismjs": "^1.23.0", - "react-fast-compare": "^3.2.0", - "react-overflow-list": "^0.5.0", - "ts-keycode-enum": "^1.0.6", - "tslib": "^2.1.0", - "use-resize-observer": "^9.0.2", - "zustand": "^3.5.2" - }, - "dependencies": { - "use-resize-observer": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", - "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", - "requires": { - "@juggle/resize-observer": "^3.3.1" - } - } - } - }, - "@stoplight/ordered-object-literal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", - "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==" - }, - "@stoplight/path": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", - "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==" - }, - "@stoplight/react-error-boundary": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", - "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", - "requires": { - "@sentry/react": "^6.13.2" - } - }, - "@stoplight/types": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", - "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", - "requires": { - "@types/json-schema": "^7.0.4", - "utility-types": "^3.10.0" - } - }, - "@stoplight/yaml": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", - "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", - "requires": { - "@stoplight/ordered-object-literal": "^1.0.1", - "@stoplight/types": "^13.0.0", - "@stoplight/yaml-ast-parser": "0.0.48", - "tslib": "^2.2.0" - } - }, - "@stoplight/yaml-ast-parser": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", - "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" - }, - "@svgr/babel-plugin-add-jsx-attribute": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", - "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", - "requires": {} - }, - "@svgr/babel-plugin-remove-jsx-attribute": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", - "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", - "requires": {} - }, - "@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", - "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", - "requires": {} - }, - "@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", - "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", - "requires": {} - }, - "@svgr/babel-plugin-svg-dynamic-title": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", - "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", - "requires": {} - }, - "@svgr/babel-plugin-svg-em-dimensions": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", - "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", - "requires": {} - }, - "@svgr/babel-plugin-transform-react-native-svg": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", - "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", - "requires": {} - }, - "@svgr/babel-plugin-transform-svg-component": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", - "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", - "requires": {} - }, - "@svgr/babel-preset": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", - "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", - "requires": { - "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", - "@svgr/babel-plugin-remove-jsx-attribute": "*", - "@svgr/babel-plugin-remove-jsx-empty-expression": "*", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", - "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", - "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", - "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", - "@svgr/babel-plugin-transform-svg-component": "^6.5.1" - } - }, - "@svgr/core": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", - "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", - "requires": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.1" - } - }, - "@svgr/hast-util-to-babel-ast": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", - "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", - "requires": { - "@babel/types": "^7.20.0", - "entities": "^4.4.0" - } - }, - "@svgr/plugin-jsx": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", - "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", - "requires": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/hast-util-to-babel-ast": "^6.5.1", - "svg-parser": "^2.0.4" - } - }, - "@svgr/plugin-svgo": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", - "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", - "requires": { - "cosmiconfig": "^7.0.1", - "deepmerge": "^4.2.2", - "svgo": "^2.8.0" - } - }, - "@svgr/webpack": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", - "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", - "requires": { - "@babel/core": "^7.19.6", - "@babel/plugin-transform-react-constant-elements": "^7.18.12", - "@babel/preset-env": "^7.19.4", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@svgr/core": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "@svgr/plugin-svgo": "^6.5.1" - } - }, - "@swc/core": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", - "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", - "dev": true, - "requires": { - "@swc/core-darwin-arm64": "1.3.37", - "@swc/core-darwin-x64": "1.3.37", - "@swc/core-linux-arm-gnueabihf": "1.3.37", - "@swc/core-linux-arm64-gnu": "1.3.37", - "@swc/core-linux-arm64-musl": "1.3.37", - "@swc/core-linux-x64-gnu": "1.3.37", - "@swc/core-linux-x64-musl": "1.3.37", - "@swc/core-win32-arm64-msvc": "1.3.37", - "@swc/core-win32-ia32-msvc": "1.3.37", - "@swc/core-win32-x64-msvc": "1.3.37" - } - }, - "@swc/core-darwin-arm64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", - "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", - "dev": true, - "optional": true - }, - "@swc/core-darwin-x64": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", - "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", - "dev": true, - "optional": true - }, - "@swc/core-linux-arm-gnueabihf": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", - "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", - "dev": true, - "optional": true - }, - "@swc/core-linux-arm64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", - "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", - "dev": true, - "optional": true - }, - "@swc/core-linux-arm64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", - "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", - "dev": true, - "optional": true - }, - "@swc/core-linux-x64-gnu": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", - "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", - "dev": true, - "optional": true - }, - "@swc/core-linux-x64-musl": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", - "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", - "dev": true, - "optional": true - }, - "@swc/core-win32-arm64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", - "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", - "dev": true, - "optional": true - }, - "@swc/core-win32-ia32-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", - "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", - "dev": true, - "optional": true - }, - "@swc/core-win32-x64-msvc": { - "version": "1.3.37", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", - "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", - "dev": true, - "optional": true - }, - "@swc/jest": { - "version": "0.2.24", - "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", - "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", - "dev": true, - "requires": { - "@jest/create-cache-key-function": "^27.4.2", - "jsonc-parser": "^3.2.0" - } - }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "requires": { - "defer-to-connect": "^1.0.1" - } - }, - "@testing-library/dom": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", - "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - } - }, - "@testing-library/jest-dom": { - "version": "5.16.5", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", - "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", - "dev": true, - "requires": { - "@adobe/css-tools": "^4.0.1", - "@babel/runtime": "^7.9.2", - "@types/testing-library__jest-dom": "^5.9.1", - "aria-query": "^5.0.0", - "chalk": "^3.0.0", - "css.escape": "^1.5.1", - "dom-accessibility-api": "^0.5.6", - "lodash": "^4.17.15", - "redent": "^3.0.0" - }, - "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" - } - } - } - }, - "@testing-library/react": { - "version": "12.1.5", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", - "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^8.0.0", - "@types/react-dom": "<18.0.0" - }, - "dependencies": { - "@testing-library/dom": { - "version": "8.20.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", - "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "^5.0.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.4.4", - "pretty-format": "^27.0.2" - } - } - } - }, - "@testing-library/user-event": { - "version": "13.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", - "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "@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 - }, - "@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==" - }, - "@types/aria-query": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", - "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", - "dev": true - }, - "@types/babel__core": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", - "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", - "dev": true, - "requires": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", - "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.18.3", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", - "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", - "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "requires": { - "@types/node": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/d3": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", - "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", - "optional": true, - "requires": { - "@types/d3-array": "*", - "@types/d3-axis": "*", - "@types/d3-brush": "*", - "@types/d3-chord": "*", - "@types/d3-color": "*", - "@types/d3-contour": "*", - "@types/d3-delaunay": "*", - "@types/d3-dispatch": "*", - "@types/d3-drag": "*", - "@types/d3-dsv": "*", - "@types/d3-ease": "*", - "@types/d3-fetch": "*", - "@types/d3-force": "*", - "@types/d3-format": "*", - "@types/d3-geo": "*", - "@types/d3-hierarchy": "*", - "@types/d3-interpolate": "*", - "@types/d3-path": "*", - "@types/d3-polygon": "*", - "@types/d3-quadtree": "*", - "@types/d3-random": "*", - "@types/d3-scale": "*", - "@types/d3-scale-chromatic": "*", - "@types/d3-selection": "*", - "@types/d3-shape": "*", - "@types/d3-time": "*", - "@types/d3-time-format": "*", - "@types/d3-timer": "*", - "@types/d3-transition": "*", - "@types/d3-zoom": "*" - } - }, - "@types/d3-array": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", - "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", - "optional": true - }, - "@types/d3-axis": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", - "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-brush": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", - "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-chord": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", - "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", - "optional": true - }, - "@types/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", - "optional": true - }, - "@types/d3-contour": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", - "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", - "optional": true, - "requires": { - "@types/d3-array": "*", - "@types/geojson": "*" - } - }, - "@types/d3-delaunay": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", - "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", - "optional": true - }, - "@types/d3-dispatch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", - "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", - "optional": true - }, - "@types/d3-drag": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", - "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", - "optional": true - }, - "@types/d3-ease": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", - "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", - "optional": true - }, - "@types/d3-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", - "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", - "optional": true, - "requires": { - "@types/d3-dsv": "*" - } - }, - "@types/d3-force": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", - "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", - "optional": true - }, - "@types/d3-format": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", - "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", - "optional": true - }, - "@types/d3-geo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", - "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", - "optional": true, - "requires": { - "@types/geojson": "*" - } - }, - "@types/d3-hierarchy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", - "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", - "optional": true - }, - "@types/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", - "optional": true, - "requires": { - "@types/d3-color": "*" - } - }, - "@types/d3-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", - "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", - "optional": true - }, - "@types/d3-polygon": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", - "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", - "optional": true - }, - "@types/d3-quadtree": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", - "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", - "optional": true - }, - "@types/d3-random": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", - "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", - "optional": true - }, - "@types/d3-scale": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", - "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", - "optional": true, - "requires": { - "@types/d3-time": "*" - } - }, - "@types/d3-scale-chromatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", - "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", - "optional": true - }, - "@types/d3-selection": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", - "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", - "optional": true - }, - "@types/d3-shape": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", - "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", - "optional": true, - "requires": { - "@types/d3-path": "*" - } - }, - "@types/d3-time": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", - "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", - "optional": true - }, - "@types/d3-time-format": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", - "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", - "optional": true - }, - "@types/d3-timer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", - "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", - "optional": true - }, - "@types/d3-transition": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", - "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", - "optional": true, - "requires": { - "@types/d3-selection": "*" - } - }, - "@types/d3-zoom": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", - "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", - "optional": true, - "requires": { - "@types/d3-interpolate": "*", - "@types/d3-selection": "*" - } - }, - "@types/eslint": { - "version": "8.21.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", - "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" - }, - "@types/express": { - "version": "4.17.17", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", - "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.33", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", - "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/geojson": { - "version": "7946.0.10", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", - "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", - "optional": true - }, - "@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/har-format": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", - "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" - }, - "@types/hast": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", - "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", - "requires": { - "@types/unist": "*" - } - }, - "@types/history": { - "version": "4.7.11", - "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", - "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" - }, - "@types/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" - }, - "@types/http-proxy": { - "version": "1.17.10", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", - "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", - "requires": { - "@types/node": "*" - } - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" - }, - "@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==", - "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==", - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "@types/jest": { - "version": "29.4.0", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", - "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", - "dev": true, - "requires": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "@types/js-cookie": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", - "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" - }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" - }, - "@types/katex": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", - "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" - }, - "@types/mdast": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", - "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", - "requires": { - "@types/unist": "*" - } - }, - "@types/mdurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", - "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" - }, - "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" - }, - "@types/node": { - "version": "18.14.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", - "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" - }, - "@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/parse5": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", - "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" - }, - "@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", - "dev": true - }, - "@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "@types/react": { - "version": "17.0.53", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", - "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", - "requires": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "@types/react-dom": { - "version": "17.0.19", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", - "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", - "requires": { - "@types/react": "^17" - } - }, - "@types/react-router": { - "version": "5.1.20", - "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", - "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*" - } - }, - "@types/react-router-config": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", - "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "@types/react-router-dom": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", - "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", - "requires": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "@types/resize-observer-browser": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", - "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", - "optional": true - }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" - }, - "@types/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", - "requires": { - "@types/node": "*" - } - }, - "@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/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", - "dev": true - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sinonjs__fake-timers": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", - "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", - "dev": true - }, - "@types/sizzle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", - "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", - "dev": true - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "requires": { - "@types/node": "*" - } - }, - "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, - "@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/swagger-schema-official": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", - "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" - }, - "@types/tapable": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", - "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", - "dev": true - }, - "@types/testing-library__jest-dom": { - "version": "5.14.5", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", - "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", - "dev": true, - "requires": { - "@types/jest": "*" - } - }, - "@types/triple-beam": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", - "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" - }, - "@types/type-is": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", - "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", - "requires": { - "@types/node": "*" - } - }, - "@types/uglify-js": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", - "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - } - }, - "@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" - }, - "@types/webpack": { - "version": "4.41.33", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", - "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - } - }, - "@types/webpack-sources": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", - "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - } - } - }, - "@types/ws": { - "version": "8.5.4", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", - "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", - "requires": { - "@types/node": "*" - } - }, - "@types/yargs": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", - "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" - }, - "@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", - "dev": true, - "optional": true, - "requires": { - "@types/node": "*" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", - "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/type-utils": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "regexpp": "^3.2.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/parser": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", - "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", - "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0" - } - }, - "@typescript-eslint/type-utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", - "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "5.54.0", - "@typescript-eslint/utils": "5.54.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/types": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", - "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", - "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/visitor-keys": "5.54.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/utils": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", - "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.54.0", - "@typescript-eslint/types": "5.54.0", - "@typescript-eslint/typescript-estree": "5.54.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^3.0.0", - "semver": "^7.3.7" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "5.54.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", - "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.54.0", - "eslint-visitor-keys": "^3.3.0" - } - }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "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==" - }, - "@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==" - }, - "@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==" - }, - "@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==", - "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==" - }, - "@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==", - "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==", - "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==", - "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==" - }, - "@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==", - "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==", - "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==", - "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==", - "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==", - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@xobotyi/scrollbar-width": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", - "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" - }, - "@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==" - }, - "abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" - }, - "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" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } - } - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "requires": {} - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "devOptional": true, - "requires": {} - }, - "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 - }, - "address": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==" - }, - "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" - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "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-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "requires": { - "ajv": "^8.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "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==" - } - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "requires": {} - }, - "algoliasearch": { - "version": "4.16.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", - "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", - "requires": { - "@algolia/cache-browser-local-storage": "4.16.0", - "@algolia/cache-common": "4.16.0", - "@algolia/cache-in-memory": "4.16.0", - "@algolia/client-account": "4.16.0", - "@algolia/client-analytics": "4.16.0", - "@algolia/client-common": "4.16.0", - "@algolia/client-personalization": "4.16.0", - "@algolia/client-search": "4.16.0", - "@algolia/logger-common": "4.16.0", - "@algolia/logger-console": "4.16.0", - "@algolia/requester-browser-xhr": "4.16.0", - "@algolia/requester-common": "4.16.0", - "@algolia/requester-node-http": "4.16.0", - "@algolia/transporter": "4.16.0" - } - }, - "algoliasearch-helper": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", - "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", - "requires": { - "@algolia/events": "^4.0.1" - } - }, - "ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "requires": { - "string-width": "^4.1.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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "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" - }, - "dependencies": { - "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 - } - } - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==" - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "dev": true - }, - "arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "requires": { - "deep-equal": "^2.0.5" - } - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" - }, - "array.prototype.reduce": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", - "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - } - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "requires": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "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 - }, - "async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" - }, - "autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", - "requires": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true - }, - "aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "requires": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - } - }, - "babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", - "dev": true, - "requires": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - } - }, - "babel-loader": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - } - }, - "babel-plugin-apply-mdx-type-prop": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", - "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", - "requires": { - "@babel/helper-plugin-utils": "7.10.4", - "@mdx-js/util": "1.6.22" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - } - } - }, - "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==", - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-extract-import-names": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", - "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", - "requires": { - "@babel/helper-plugin-utils": "7.10.4" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - } - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "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": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", - "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-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - } - }, - "babel-plugin-styled-components": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", - "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.16.0", - "@babel/helper-module-imports": "^7.16.0", - "babel-plugin-syntax-jsx": "^6.18.0", - "lodash": "^4.17.11", - "picomatch": "^2.3.0" - } - }, - "babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" - }, - "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.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" - } - }, - "bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==" - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "base16": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", - "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==" - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "blob-util": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", - "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", - "dev": true - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" - }, - "body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "requires": { - "side-channel": "^1.0.4" - } - } - } - }, - "bonjour-service": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", - "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" - }, - "boxen": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", - "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", - "requires": { - "ansi-align": "^3.0.1", - "camelcase": "^6.2.0", - "chalk": "^4.1.2", - "cli-boxes": "^3.0.0", - "string-width": "^5.0.1", - "type-fest": "^2.5.0", - "widest-line": "^4.0.1", - "wrap-ansi": "^8.0.1" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "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==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "broadcast-channel": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", - "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", - "requires": { - "@babel/runtime": "^7.7.2", - "detect-node": "^2.1.0", - "js-sha3": "0.8.0", - "microseconds": "0.2.0", - "nano-time": "1.0.0", - "oblivious-set": "1.0.0", - "rimraf": "3.0.2", - "unload": "2.2.0" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" - }, - "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 - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "requires": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - } - }, - "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-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" - }, - "build": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/build/-/build-0.1.4.tgz", - "integrity": "sha512-KwbDJ/zrsU8KZRRMfoURG14cKIAStUlS8D5jBDvtrZbwO5FEkYqc3oB8HIhRiyD64A48w1lc+sOmQ+mmBw5U/Q==", - "requires": { - "cssmin": "0.3.x", - "jsmin": "1.x", - "jxLoader": "*", - "moo-server": "*", - "promised-io": "*", - "timespan": "2.x", - "uglify-js": "1.x", - "walker": "1.x", - "winston": "*", - "wrench": "1.3.x" - } - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" - }, - "cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "dependencies": { - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" - }, - "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" - } - } - }, - "cachedir": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", - "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", - "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" - } - }, - "call-me-maybe": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", - "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" - }, - "camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "requires": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" - }, - "camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" - }, - "camelize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", - "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==" - }, - "caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "requires": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "caniuse-lite": { - "version": "1.0.30001470", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", - "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==" - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "ccount": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", - "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==" - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "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 - }, - "character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" - }, - "character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==" - }, - "character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" - }, - "charset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", - "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==" - }, - "check-more-types": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", - "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", - "dev": true - }, - "cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "requires": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - } - }, - "cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "requires": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "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==" - }, - "ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==" - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "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 - }, - "classcat": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", - "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", - "optional": true - }, - "classnames": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", - "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" - }, - "clean-css": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", - "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", - "requires": { - "source-map": "~0.6.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" - }, - "cli-boxes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", - "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==" - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-table3": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", - "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", - "requires": { - "@colors/colors": "1.5.0", - "string-width": "^4.2.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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "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" - }, - "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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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" - } - } - } - }, - "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==", - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "dependencies": { - "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==", - "requires": { - "isobject": "^3.0.1" - } - } - } - }, - "clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "requires": { - "mimic-response": "^1.0.0" - }, - "dependencies": { - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - } - } - }, - "clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==" - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true - }, - "collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==" - }, - "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": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "requires": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" - }, - "dependencies": { - "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - } - } - }, - "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==", - "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==" - }, - "color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" - }, - "colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" - }, - "colorspace": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", - "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", - "requires": { - "color": "^3.1.3", - "text-hex": "1.0.x" - } - }, - "combine-promises": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", - "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==" - }, - "commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==" - }, - "common-tags": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", - "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "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==" - } - } - }, - "compute-gcd": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", - "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", - "requires": { - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "compute-lcm": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", - "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", - "requires": { - "compute-gcd": "^1.2.1", - "validate.io-array": "^1.0.3", - "validate.io-function": "^1.0.2", - "validate.io-integer-array": "^1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "requires": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - } - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==" - }, - "consola": { - "version": "2.15.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", - "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" - }, - "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==" - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==" - }, - "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "copy-text-to-clipboard": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", - "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==" - }, - "copy-to-clipboard": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", - "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", - "requires": { - "toggle-selection": "^1.0.6" - } - }, - "copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "requires": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "requires": { - "is-glob": "^4.0.3" - } - }, - "globby": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", - "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" - } - } - }, - "core-js": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", - "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==" - }, - "core-js-compat": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", - "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", - "requires": { - "browserslist": "^4.21.5" - } - }, - "core-js-pure": { - "version": "3.29.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", - "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - }, - "cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "requires": { - "node-fetch": "2.6.7" - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==" - }, - "css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==" - }, - "css-declaration-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", - "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", - "requires": {} - }, - "css-in-js-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", - "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", - "requires": { - "hyphenate-style-name": "^1.0.3" - } - }, - "css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "css-minimizer-webpack-plugin": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", - "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", - "requires": { - "cssnano": "^5.1.8", - "jest-worker": "^29.1.2", - "postcss": "^8.4.17", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - } - }, - "css-selector-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", - "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" - }, - "css-to-react-native": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", - "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", - "requires": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^4.0.2" - } - }, - "css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "requires": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" - }, - "css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" - }, - "cssmin": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/cssmin/-/cssmin-0.3.2.tgz", - "integrity": "sha512-bynxGIAJ8ybrnFobjsQotIjA8HFDDgPwbeUWNXXXfR+B4f9kkxdcUyagJoQCSUOfMV+ZZ6bMn8bvbozlCzUGwQ==" - }, - "cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", - "requires": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - } - }, - "cssnano-preset-advanced": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", - "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", - "requires": { - "autoprefixer": "^10.4.12", - "cssnano-preset-default": "^5.2.14", - "postcss-discard-unused": "^5.1.0", - "postcss-merge-idents": "^5.1.1", - "postcss-reduce-idents": "^5.2.0", - "postcss-zindex": "^5.1.0" - } - }, - "cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "requires": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - } - }, - "cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", - "requires": {} - }, - "csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "requires": { - "css-tree": "^1.1.2" - } - }, - "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.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" - }, - "cypress": { - "version": "12.7.0", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", - "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", - "dev": true, - "requires": { - "@cypress/request": "^2.88.10", - "@cypress/xvfb": "^1.2.4", - "@types/node": "^14.14.31", - "@types/sinonjs__fake-timers": "8.1.1", - "@types/sizzle": "^2.3.2", - "arch": "^2.2.0", - "blob-util": "^2.0.2", - "bluebird": "^3.7.2", - "buffer": "^5.6.0", - "cachedir": "^2.3.0", - "chalk": "^4.1.0", - "check-more-types": "^2.24.0", - "cli-cursor": "^3.1.0", - "cli-table3": "~0.6.1", - "commander": "^5.1.0", - "common-tags": "^1.8.0", - "dayjs": "^1.10.4", - "debug": "^4.3.4", - "enquirer": "^2.3.6", - "eventemitter2": "6.4.7", - "execa": "4.1.0", - "executable": "^4.1.1", - "extract-zip": "2.0.1", - "figures": "^3.2.0", - "fs-extra": "^9.1.0", - "getos": "^3.2.1", - "is-ci": "^3.0.0", - "is-installed-globally": "~0.4.0", - "lazy-ass": "^1.6.0", - "listr2": "^3.8.3", - "lodash": "^4.17.21", - "log-symbols": "^4.0.0", - "minimist": "^1.2.6", - "ospath": "^1.2.2", - "pretty-bytes": "^5.6.0", - "proxy-from-env": "1.0.0", - "request-progress": "^3.0.0", - "semver": "^7.3.2", - "supports-color": "^8.1.1", - "tmp": "~0.2.1", - "untildify": "^4.0.0", - "yauzl": "^2.10.0" - }, - "dependencies": { - "@types/node": { - "version": "14.18.37", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", - "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", - "dev": true - }, - "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" - } - } - } - }, - "d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "optional": true - }, - "d3-dispatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", - "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", - "optional": true - }, - "d3-drag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", - "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", - "optional": true, - "requires": { - "d3-dispatch": "1 - 3", - "d3-selection": "3" - } - }, - "d3-ease": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", - "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "optional": true - }, - "d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "optional": true, - "requires": { - "d3-color": "1 - 3" - } - }, - "d3-selection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", - "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", - "optional": true - }, - "d3-timer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", - "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "optional": true - }, - "d3-transition": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", - "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", - "optional": true, - "requires": { - "d3-color": "1 - 3", - "d3-dispatch": "1 - 3", - "d3-ease": "1 - 3", - "d3-interpolate": "1 - 3", - "d3-timer": "1 - 3" - } - }, - "d3-zoom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", - "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", - "optional": true, - "requires": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "2 - 3", - "d3-transition": "2 - 3" - } - }, - "dagre": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", - "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", - "optional": true, - "requires": { - "graphlib": "^2.1.8", - "lodash": "^4.17.15" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "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" - } - }, - "dayjs": { - "version": "1.11.7", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", - "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "decko": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", - "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" - }, - "decode-uri-component": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", - "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==" - }, - "decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "requires": { - "mimic-response": "^3.1.0" - } - }, - "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "deep-equal": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", - "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "devOptional": true - }, - "deepmerge": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", - "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==" - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "requires": { - "execa": "^5.0.0" - }, - "dependencies": { - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "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" - } - }, - "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==" - }, - "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==" - } - } - }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" - }, - "define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", - "requires": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "detab": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", - "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", - "requires": { - "repeat-string": "^1.5.4" - } - }, - "detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" - }, - "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 - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" - }, - "detect-port": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", - "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", - "requires": { - "address": "^1.0.1", - "debug": "4" - } - }, - "detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "requires": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "diff-sequences": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", - "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "requires": { - "path-type": "^4.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" - }, - "dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "devOptional": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", - "dev": true - }, - "dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "requires": { - "utila": "~0.4" - } - }, - "dom-helpers": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", - "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", - "requires": { - "@babel/runtime": "^7.1.2" - } - }, - "dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "dom7": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", - "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", - "requires": { - "ssr-window": "^4.0.0" - } - }, - "domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==" - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" - }, - "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 - } - } - }, - "domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "requires": { - "domelementtype": "^2.3.0" - } - }, - "dompurify": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", - "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" - }, - "domutils": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", - "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" - } - }, - "dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "requires": { - "is-obj": "^2.0.0" - }, - "dependencies": { - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" - } - } - }, - "dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "dev": true - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" - }, - "duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" - }, - "eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "electron-to-chromium": { - "version": "1.4.315", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", - "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "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==" - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" - }, - "emoticon": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", - "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==" - }, - "enabled": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", - "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, - "enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", - "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" - } - }, - "entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==" - }, - "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" - } - }, - "error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", - "requires": { - "stackframe": "^1.3.4" - } - }, - "es-abstract": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", - "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - } - }, - "es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, - "es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - } - }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" - }, - "es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" - }, - "es6-promise": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "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.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - } - } - }, - "eslint": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", - "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", - "devOptional": true, - "requires": { - "@eslint/eslintrc": "^2.0.0", - "@eslint/js": "8.35.0", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "dependencies": { - "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "devOptional": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": true - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "devOptional": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "devOptional": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "devOptional": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "devOptional": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "devOptional": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "devOptional": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "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==", - "devOptional": true - }, - "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==", - "devOptional": 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==", - "devOptional": true - } - } - }, - "eslint-config-prettier": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", - "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", - "dev": true, - "requires": {} - }, - "eslint-plugin-markdown": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", - "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", - "dev": true, - "requires": { - "mdast-util-from-markdown": "^0.8.5" - } - }, - "eslint-plugin-prettier": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", - "dev": true, - "requires": { - "prettier-linter-helpers": "^1.0.0" - } - }, - "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==", - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "devOptional": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "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==", - "devOptional": true - } - } - }, - "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "devOptional": true - }, - "espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", - "devOptional": true, - "requires": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "devOptional": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": 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==", - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - }, - "eta": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", - "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" - }, - "eval": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", - "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", - "requires": { - "@types/node": "*", - "require-like": ">= 0.1.1" - } - }, - "eventemitter2": { - "version": "6.4.7", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", - "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "executable": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", - "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", - "dev": true, - "requires": { - "pify": "^2.2.0" - } - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true - }, - "expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" - }, - "expect": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", - "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", - "dev": true, - "requires": { - "@jest/expect-utils": "^29.4.3", - "jest-get-type": "^29.4.3", - "jest-matcher-utils": "^29.4.3", - "jest-message-util": "^29.4.3", - "jest-util": "^29.4.3" - } - }, - "express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "requires": { - "@types/yauzl": "^2.9.1", - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true - }, - "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==" - }, - "fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-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==" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "devOptional": true - }, - "fast-loops": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", - "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" - }, - "fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "fast-shallow-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", - "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" - }, - "fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", - "requires": { - "punycode": "^1.3.2" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" - } - } - }, - "fastest-stable-stringify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", - "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" - }, - "fastestsmallesttextencoderdecoder": { - "version": "1.0.22", - "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", - "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" - }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "requires": { - "reusify": "^1.0.4" - } - }, - "fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "requires": { - "format": "^0.2.0" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "requires": { - "bser": "2.1.1" - } - }, - "fbemitter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", - "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", - "requires": { - "fbjs": "^3.0.0" - } - }, - "fbjs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", - "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", - "requires": { - "cross-fetch": "^3.1.5", - "fbjs-css-vars": "^1.0.0", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.30" - } - }, - "fbjs-css-vars": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", - "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "requires": { - "pend": "~1.2.0" - } - }, - "fecha": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" - }, - "feed": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", - "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", - "requires": { - "xml-js": "^1.6.11" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - } - } - }, - "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==", - "devOptional": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "file-loader": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", - "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "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==" - }, - "file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==" - }, - "filesize": { - "version": "8.0.7", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", - "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==" - }, - "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==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "filter-obj": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", - "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==" - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "requires": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "devOptional": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "devOptional": true - }, - "flux": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", - "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", - "requires": { - "fbemitter": "^3.0.0", - "fbjs": "^3.0.1" - } - }, - "fn.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", - "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" - }, - "fnv-plus": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", - "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" - }, - "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" - }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "requires": { - "is-callable": "^1.1.3" - } - }, - "foreach": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", - "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true - }, - "fork-ts-checker-webpack-plugin": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", - "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", - "requires": { - "@babel/code-frame": "^7.8.3", - "@types/json-schema": "^7.0.5", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "cosmiconfig": "^6.0.0", - "deepmerge": "^4.2.2", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "memfs": "^3.1.2", - "minimatch": "^3.0.4", - "schema-utils": "2.7.0", - "semver": "^7.3.2", - "tapable": "^1.0.0" - }, - "dependencies": { - "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" - } - }, - "schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", - "requires": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" - } - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" - } - } - }, - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==" - }, - "formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "requires": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" - }, - "fs": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", - "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "fscreen": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", - "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "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.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "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==" - }, - "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.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" - }, - "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": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "requires": { - "pump": "^3.0.0" - } - }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "getos": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", - "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", - "dev": true, - "requires": { - "async": "^3.2.0" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" - }, - "github-slugger": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", - "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "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==", - "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==" - }, - "global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "requires": { - "ini": "2.0.0" - } - }, - "global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "requires": { - "global-prefix": "^3.0.0" - } - }, - "global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "dependencies": { - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" - }, - "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, - "dependencies": { - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "requires": { - "pump": "^3.0.0" - } - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - } - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "devOptional": true - }, - "graphlib": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", - "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", - "optional": true, - "requires": { - "lodash": "^4.17.15" - } - }, - "gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "requires": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "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==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "requires": { - "duplexer": "^0.1.2" - } - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "requires": { - "has-symbols": "^1.0.2" - } - }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==" - }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hast-to-hyperscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", - "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", - "requires": { - "@types/unist": "^2.0.3", - "comma-separated-tokens": "^1.0.0", - "property-information": "^5.3.0", - "space-separated-tokens": "^1.0.0", - "style-to-object": "^0.3.0", - "unist-util-is": "^4.0.0", - "web-namespaces": "^1.0.0" - } - }, - "hast-util-from-parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", - "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", - "requires": { - "@types/parse5": "^5.0.0", - "hastscript": "^6.0.0", - "property-information": "^5.0.0", - "vfile": "^4.0.0", - "vfile-location": "^3.2.0", - "web-namespaces": "^1.0.0" - } - }, - "hast-util-is-element": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", - "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==" - }, - "hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==" - }, - "hast-util-raw": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", - "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", - "requires": { - "@types/hast": "^2.0.0", - "hast-util-from-parse5": "^6.0.0", - "hast-util-to-parse5": "^6.0.0", - "html-void-elements": "^1.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - } - } - }, - "hast-util-sanitize": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", - "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", - "requires": { - "@types/hast": "^2.0.0" - } - }, - "hast-util-to-parse5": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", - "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", - "requires": { - "hast-to-hyperscript": "^9.0.0", - "property-information": "^5.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - } - }, - "hast-util-to-text": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", - "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", - "requires": { - "hast-util-is-element": "^1.0.0", - "repeat-string": "^1.0.0", - "unist-util-find-after": "^3.0.0" - } - }, - "hast-util-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", - "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==" - }, - "hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - } - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" - }, - "history": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", - "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", - "requires": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^3.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "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==" - } - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "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" - } - }, - "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==" - }, - "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" - } - } - } - }, - "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-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" - }, - "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 - }, - "html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", - "requires": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - }, - "dependencies": { - "commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" - } - } - }, - "html-tags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", - "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==" - }, - "html-void-elements": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", - "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==" - }, - "html-webpack-plugin": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "requires": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - } - }, - "html-webpack-plugin-4": { - "version": "npm:html-webpack-plugin@4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "requires": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - }, - "dependencies": { - "@types/html-minifier-terser": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", - "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - } - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "requires": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - } - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "requires": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" - } - }, - "renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, - "requires": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "terser": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "dependencies": { - "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 - } - } - } - } - }, - "html-webpack-plugin-5": { - "version": "npm:html-webpack-plugin@5.5.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", - "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", - "dev": true, - "requires": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - } - }, - "htmlparser2": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", - "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "entities": "^4.3.0" - } - }, - "http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "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" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "dependencies": { - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==" - } - } - }, - "http-reasons": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", - "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" - }, - "http-signature": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", - "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^2.0.2", - "sshpk": "^1.14.1" - } - }, - "http2-client": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", - "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "httpsnippet-lite": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", - "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", - "requires": { - "@types/har-format": "^1.2.10", - "formdata-node": "^4.4.1", - "stringify-object": "3.3.0" - } - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true - }, - "husky": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", - "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", - "dev": true - }, - "hyphenate-style-name": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", - "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==" - }, - "image-size": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", - "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", - "requires": { - "queue": "6.0.2" - } - }, - "immer": { - "version": "9.0.19", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", - "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==" - }, - "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" - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==" - }, - "import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" - }, - "infima": { - "version": "0.2.0-alpha.42", - "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", - "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==" - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "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==" - }, - "ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" - }, - "inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" - }, - "inline-style-prefixer": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", - "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", - "requires": { - "css-in-js-utils": "^3.1.0", - "fast-loops": "^1.1.3" - } - }, - "internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "requires": { - "loose-envify": "^1.0.0" - } - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==" - }, - "is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==" - }, - "is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - } - }, - "is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" - }, - "is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" - }, - "is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "requires": { - "ci-info": "^3.2.0" - } - }, - "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==" - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" - }, - "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==" - }, - "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-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==" - }, - "is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "requires": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - } - }, - "is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true - }, - "is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true - }, - "is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==" - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==" - }, - "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==" - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" - }, - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" - }, - "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-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==" - }, - "is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==" - }, - "is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==" - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==" - }, - "is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==" - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "requires": { - "is-docker": "^2.0.0" - } - }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" - }, - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==" - }, - "isomorphic-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", - "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", - "requires": { - "node-fetch": "^2.6.1", - "whatwg-fetch": "^3.4.1" - } - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "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.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - } - }, - "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - } - }, - "jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - }, - "dependencies": { - "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" - } - }, - "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 - }, - "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 - } - } - }, - "jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", - "dev": true, - "requires": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-diff": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", - "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-get-type": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", - "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", - "dev": true - }, - "jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@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.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } - }, - "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" - } - } - } - }, - "jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "requires": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - } - } - }, - "jest-matcher-utils": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", - "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.4.3" - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "jest-message-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", - "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.4.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.4.3", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "dependencies": { - "@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - } - }, - "@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "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 - }, - "pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "requires": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - } - } - } - }, - "jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*" - } - }, - "jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "requires": {} - }, - "jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true - }, - "jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - } - }, - "jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - }, - "dependencies": { - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } - }, - "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" - } - } - } - }, - "jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "dependencies": { - "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" - } - }, - "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 - }, - "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 - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - } - }, - "jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", - "dev": true, - "requires": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" - }, - "dependencies": { - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-util": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", - "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", - "requires": { - "@jest/types": "^29.4.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "dependencies": { - "@jest/types": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", - "requires": { - "@jest/schemas": "^29.4.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - } - }, - "@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "requires": { - "@types/yargs-parser": "*" - } - } - } - }, - "jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - } - } - }, - "jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, - "dependencies": { - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - } - } - } - }, - "jest-worker": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", - "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", - "requires": { - "@types/node": "*", - "jest-util": "^29.4.3", - "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==", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "joi": { - "version": "17.8.3", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", - "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", - "requires": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" - } - }, - "jotai": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", - "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", - "requires": {} - }, - "js-cookie": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", - "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" - }, - "js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==" - }, - "js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", - "devOptional": true - }, - "js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, - "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": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "requires": { - "argparse": "^2.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "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.6", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "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" - } - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "tough-cookie": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", - "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", - "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - } - }, - "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true - } - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" - }, - "jsmin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/jsmin/-/jsmin-1.0.1.tgz", - "integrity": "sha512-OPuL5X/bFKgVdMvEIX3hnpx3jbVpFCrEM8pKPXjFkZUqg521r41ijdyTz7vACOhW6o1neVlcLyd+wkbK5fNHRg==" - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" - }, - "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-pointer": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", - "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", - "requires": { - "foreach": "^2.0.4" - } - }, - "json-promise": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", - "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", - "requires": { - "bluebird": "*" - } - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" - }, - "json-schema-compare": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", - "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", - "requires": { - "lodash": "^4.17.4" - } - }, - "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==" - }, - "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "devOptional": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==" - }, - "jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "jsprim": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", - "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "jxLoader": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jxLoader/-/jxLoader-0.1.1.tgz", - "integrity": "sha512-ClEvAj3K68y8uKhub3RgTmcRPo5DfIWvtxqrKQdDPyZ1UVHIIKvVvjrAsJFSVL5wjv0rt5iH9SMCZ0XRKNzeUA==", - "requires": { - "js-yaml": "0.3.x", - "moo-server": "1.3.x", - "promised-io": "*", - "walker": "1.x" - }, - "dependencies": { - "js-yaml": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-0.3.7.tgz", - "integrity": "sha512-/7PsVDNP2tVe2Z1cF9kTEkjamIwz4aooDpRKmN1+g/9eePCgcxsv4QDvEbxO0EH+gdDD7MLyDoR6BASo3hH51g==" - } - } - }, - "katex": { - "version": "0.13.24", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", - "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", - "requires": { - "commander": "^8.0.0" - }, - "dependencies": { - "commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" - } - } - }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "requires": { - "json-buffer": "3.0.0" - } - }, - "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==" - }, - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" - }, - "klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==" - }, - "kuler": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", - "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" - }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "requires": { - "package-json": "^6.3.0" - } - }, - "lazy-ass": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", - "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", - "dev": true - }, - "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==" - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "devOptional": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==" - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "lint-staged": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", - "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", - "dev": true, - "requires": { - "cli-truncate": "^3.1.0", - "colorette": "^2.0.19", - "commander": "^9.4.1", - "debug": "^4.3.4", - "execa": "^6.1.0", - "lilconfig": "2.0.6", - "listr2": "^5.0.5", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-inspect": "^1.12.2", - "pidtree": "^0.6.0", - "string-argv": "^0.3.1", - "yaml": "^2.1.3" - }, - "dependencies": { - "cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", - "dev": true, - "requires": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" - } - }, - "commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true - }, - "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 - }, - "execa": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", - "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^3.0.1", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - } - }, - "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 - }, - "human-signals": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", - "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true - }, - "is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true - }, - "listr2": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", - "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", - "dev": true, - "requires": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.19", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.8.0", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - } - }, - "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 - }, - "slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true - }, - "npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "requires": { - "path-key": "^4.0.0" - } - }, - "onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "requires": { - "mimic-fn": "^4.0.0" - } - }, - "path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true - }, - "slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dev": true, - "requires": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true - } - } - }, - "strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "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" - }, - "dependencies": { - "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 - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "yaml": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", - "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", - "dev": true - } - } - }, - "liquid-json": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", - "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==" - }, - "listr2": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", - "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", - "dev": true, - "requires": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.16", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.5.1", - "through": "^2.3.8", - "wrap-ansi": "^7.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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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" - } - } - } - }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==" - }, - "loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "local-pkg": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", - "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", - "dev": true - }, - "locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "requires": { - "p-locate": "^6.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash.curry": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", - "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" - }, - "lodash.flow": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", - "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" - }, - "lodash.isequalwith": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", - "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" - }, - "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==", - "devOptional": true - }, - "lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", - "dev": true - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" - }, - "lodash.pickby": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", - "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, - "log-update": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.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 - }, - "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" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - } - } - }, - "logform": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.5.1.tgz", - "integrity": "sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==", - "requires": { - "@colors/colors": "1.5.0", - "@types/triple-beam": "^1.3.2", - "fecha": "^4.2.0", - "ms": "^2.1.1", - "safe-stable-stringify": "^2.3.1", - "triple-beam": "^1.3.0" - }, - "dependencies": { - "safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" - } - } - }, - "longest-streak": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", - "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==" - }, - "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" - } - }, - "lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "requires": { - "tslib": "^2.0.3" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, - "lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" - }, - "lz-string": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", - "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", - "dev": true - }, - "magic-error": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", - "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==" - }, - "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==", - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "requires": { - "tmpl": "1.0.5" - } - }, - "mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" - }, - "markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==" - }, - "markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "requires": { - "repeat-string": "^1.0.0" - } - }, - "marked": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", - "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==" - }, - "match-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", - "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", - "requires": { - "@babel/runtime": "^7.12.5", - "remove-accents": "0.4.2" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "mdast-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", - "requires": { - "unist-util-remove": "^2.0.0" - } - }, - "mdast-util-definitions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", - "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "mdast-util-find-and-replace": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", - "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", - "requires": { - "escape-string-regexp": "^4.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - } - }, - "mdast-util-from-markdown": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", - "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", - "requires": { - "@types/mdast": "^3.0.0", - "mdast-util-to-string": "^2.0.0", - "micromark": "~2.11.0", - "parse-entities": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - } - }, - "mdast-util-frontmatter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", - "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", - "requires": { - "micromark-extension-frontmatter": "^0.2.0" - } - }, - "mdast-util-gfm": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", - "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", - "requires": { - "mdast-util-gfm-autolink-literal": "^0.1.0", - "mdast-util-gfm-strikethrough": "^0.2.0", - "mdast-util-gfm-table": "^0.1.0", - "mdast-util-gfm-task-list-item": "^0.1.0", - "mdast-util-to-markdown": "^0.6.1" - } - }, - "mdast-util-gfm-autolink-literal": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", - "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", - "requires": { - "ccount": "^1.0.0", - "mdast-util-find-and-replace": "^1.1.0", - "micromark": "^2.11.3" - } - }, - "mdast-util-gfm-strikethrough": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", - "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", - "requires": { - "mdast-util-to-markdown": "^0.6.0" - } - }, - "mdast-util-gfm-table": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", - "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", - "requires": { - "markdown-table": "^2.0.0", - "mdast-util-to-markdown": "~0.6.0" - } - }, - "mdast-util-gfm-task-list-item": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", - "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", - "requires": { - "mdast-util-to-markdown": "~0.6.0" - } - }, - "mdast-util-to-hast": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", - "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", - "requires": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "mdast-util-definitions": "^4.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^2.0.0", - "unist-util-generated": "^1.0.0", - "unist-util-position": "^3.0.0", - "unist-util-visit": "^2.0.0" - } - }, - "mdast-util-to-markdown": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", - "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", - "requires": { - "@types/unist": "^2.0.0", - "longest-streak": "^2.0.0", - "mdast-util-to-string": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.0.0", - "zwitch": "^1.0.0" - } - }, - "mdast-util-to-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==" - }, - "mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" - }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" - }, - "memfs": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", - "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", - "requires": { - "fs-monkey": "^1.0.3" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, - "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==" - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" - }, - "micromark": { - "version": "2.11.4", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", - "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", - "requires": { - "debug": "^4.0.0", - "parse-entities": "^2.0.0" - } - }, - "micromark-extension-frontmatter": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", - "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", - "requires": { - "fault": "^1.0.0" - } - }, - "micromark-extension-gfm": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", - "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", - "requires": { - "micromark": "~2.11.0", - "micromark-extension-gfm-autolink-literal": "~0.5.0", - "micromark-extension-gfm-strikethrough": "~0.6.5", - "micromark-extension-gfm-table": "~0.4.0", - "micromark-extension-gfm-tagfilter": "~0.3.0", - "micromark-extension-gfm-task-list-item": "~0.3.0" - } - }, - "micromark-extension-gfm-autolink-literal": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", - "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", - "requires": { - "micromark": "~2.11.3" - } - }, - "micromark-extension-gfm-strikethrough": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", - "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", - "requires": { - "micromark": "~2.11.0" - } - }, - "micromark-extension-gfm-table": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", - "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", - "requires": { - "micromark": "~2.11.0" - } - }, - "micromark-extension-gfm-tagfilter": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", - "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==" - }, - "micromark-extension-gfm-task-list-item": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", - "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", - "requires": { - "micromark": "~2.11.0" - } - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "microseconds": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", - "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-format": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", - "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", - "requires": { - "charset": "^1.0.0" - } - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" - }, - "mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" - }, - "min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", - "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", - "requires": { - "schema-utils": "^4.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" - }, - "mobx": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", - "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==" - }, - "mobx-react": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", - "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", - "requires": { - "mobx-react-lite": "^3.4.0" - } - }, - "mobx-react-lite": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", - "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", - "requires": {} - }, - "monaco-editor": { - "version": "0.36.1", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", - "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", - "peer": true - }, - "moo-server": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/moo-server/-/moo-server-1.3.0.tgz", - "integrity": "sha512-9A8/eor2DXwpv1+a4pZAAydqLFVrWoKoO1fzdzqLUhYVXAO1Kgd1FR2gFZi7YdHzF0s4W8cDNwCfKJQrvLqxDw==" - }, - "mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "nano-memoize": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", - "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" - }, - "nano-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", - "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", - "requires": { - "big-integer": "^1.6.16" - } - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" - }, - "napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "devOptional": true - }, - "natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "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==" - }, - "no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "requires": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node-abi": { - "version": "3.33.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", - "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", - "requires": { - "semver": "^7.3.5" - } - }, - "node-abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", - "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" - }, - "node-addon-api": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", - "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" - }, - "node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" - }, - "node-emoji": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", - "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", - "requires": { - "lodash": "^4.17.21" - } - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "requires": { - "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } - } - }, - "node-fetch-h2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", - "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", - "requires": { - "http2-client": "^1.2.5" - } - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" - }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node-polyfill-webpack-plugin": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", - "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", - "requires": { - "assert": "^2.0.0", - "browserify-zlib": "^0.2.0", - "buffer": "^6.0.3", - "console-browserify": "^1.2.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.12.0", - "domain-browser": "^4.19.0", - "events": "^3.3.0", - "filter-obj": "^2.0.2", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "punycode": "^2.1.1", - "querystring-es3": "^0.2.1", - "readable-stream": "^3.6.0", - "stream-browserify": "^3.0.0", - "stream-http": "^3.2.0", - "string_decoder": "^1.3.0", - "timers-browserify": "^2.0.12", - "tty-browserify": "^0.0.1", - "url": "^0.11.0", - "util": "^0.12.4", - "vm-browserify": "^1.1.2" - }, - "dependencies": { - "buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - } - } - }, - "node-readfiles": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", - "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", - "requires": { - "es6-promise": "^3.2.1" - } - }, - "node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==" - }, - "normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" - }, - "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==", - "requires": { - "path-key": "^3.0.0" - } - }, - "nprogress": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", - "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "requires": { - "boolbase": "^1.0.0" - } - }, - "nwsapi": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", - "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", - "dev": true - }, - "oas-kit-common": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", - "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", - "requires": { - "fast-safe-stringify": "^2.0.7" - } - }, - "oas-linter": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", - "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", - "requires": { - "@exodus/schemasafe": "^1.0.0-rc.2", - "should": "^13.2.1", - "yaml": "^1.10.0" - } - }, - "oas-resolver": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", - "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", - "requires": { - "node-fetch-h2": "^2.3.0", - "oas-kit-common": "^1.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "dependencies": { - "cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - } - }, - "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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" - } - } - }, - "oas-schema-walker": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", - "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==" - }, - "oas-validator": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", - "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", - "requires": { - "call-me-maybe": "^1.0.1", - "oas-kit-common": "^1.0.8", - "oas-linter": "^3.2.2", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "reftools": "^1.1.9", - "should": "^13.2.1", - "yaml": "^1.10.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, - "object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" - }, - "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.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.getownpropertydescriptors": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", - "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", - "dev": true, - "requires": { - "array.prototype.reduce": "^1.0.5", - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "oblivious-set": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", - "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, - "one-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", - "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", - "requires": { - "fn.name": "1.x.x" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "openapi-sampler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", - "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", - "requires": { - "@types/json-schema": "^7.0.7", - "json-pointer": "0.6.2" - } - }, - "openapi3-ts": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", - "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", - "requires": { - "yaml": "^1.10.2" - } - }, - "opener": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==" - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "devOptional": 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" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" - }, - "ospath": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", - "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", - "dev": true - }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" - }, - "p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "requires": { - "p-limit": "^4.0.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - } - }, - "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==" - }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "papaparse": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", - "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" - }, - "param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "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-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "parse-json": { - "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" - } - }, - "parse-numeric-range": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" - }, - "parse-srcset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", - "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" - }, - "parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "requires": { - "entities": "^4.4.0" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "requires": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" - }, - "path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" - }, - "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-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - } - } - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" - }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "perfect-scrollbar": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", - "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" - }, - "pidtree": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", - "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", - "dev": true - }, - "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==", - "requires": { - "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, - "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==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "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==" - } - } - }, - "pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", - "requires": { - "find-up": "^3.0.0" - }, - "dependencies": { - "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" - } - }, - "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-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": "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": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" - } - } - }, - "pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==" - }, - "polished": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", - "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", - "requires": { - "@babel/runtime": "^7.17.8" - } - }, - "postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", - "requires": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", - "requires": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", - "requires": {} - }, - "postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", - "requires": {} - }, - "postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", - "requires": {} - }, - "postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", - "requires": {} - }, - "postcss-discard-unused": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", - "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-loader": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", - "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", - "requires": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.8" - } - }, - "postcss-merge-idents": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", - "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", - "requires": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", - "requires": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" - } - }, - "postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", - "requires": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", - "requires": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "requires": { - "postcss": "^7.0.5" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", - "requires": {} - }, - "postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", - "requires": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", - "requires": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", - "requires": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-reduce-idents": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", - "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - } - }, - "postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-sort-media-queries": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", - "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", - "requires": { - "sort-css-media-queries": "2.1.0" - } - }, - "postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", - "requires": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - } - }, - "postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, - "postcss-zindex": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", - "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", - "requires": {} - }, - "postman-collection": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", - "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", - "requires": { - "@faker-js/faker": "5.5.3", - "file-type": "3.9.0", - "http-reasons": "0.1.0", - "iconv-lite": "0.6.3", - "liquid-json": "0.3.1", - "lodash": "4.17.21", - "mime-format": "2.0.1", - "mime-types": "2.1.35", - "postman-url-encoder": "3.0.5", - "semver": "7.3.8", - "uuid": "8.3.2" - }, - "dependencies": { - "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" - } - } - } - }, - "postman-url-encoder": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", - "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", - "requires": { - "punycode": "^2.1.1" - } - }, - "prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "requires": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "devOptional": true - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==" - }, - "prettier": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", - "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", - "dev": true, - "peer": true - }, - "prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dev": true, - "requires": { - "fast-diff": "^1.1.2" - } - }, - "pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true - }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==" - }, - "pretty-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", - "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", - "requires": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, - "pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1", - "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 - }, - "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==", - "dev": true - } - } - }, - "pretty-time": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", - "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==" - }, - "prism-react-renderer": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", - "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", - "requires": {} - }, - "prismjs": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", - "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" - }, - "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==" - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "requires": { - "asap": "~2.0.3" - } - }, - "promised-io": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/promised-io/-/promised-io-0.3.6.tgz", - "integrity": "sha512-bNwZusuNIW4m0SPR8jooSyndD35ggirHlxVl/UhIaZD/F0OBv9ebfc6tNmbpZts3QXHggkjIBH8lvtnzhtcz0A==" - }, - "prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - } - }, - "prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "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==" - } - } - }, - "property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "requires": { - "xtend": "^4.0.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - } - } - }, - "proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", - "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", - "dev": true - }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" - }, - "pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "requires": { - "escape-goat": "^2.0.0" - } - }, - "pure-color": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", - "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" - }, - "qs": { - "version": "6.10.4", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", - "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "query-string": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", - "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", - "requires": { - "decode-uri-component": "^0.4.1", - "filter-obj": "^5.1.0", - "split-on-first": "^3.0.0" - }, - "dependencies": { - "filter-obj": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", - "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==" - } - } - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" - }, - "querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, - "queue": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", - "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", - "requires": { - "inherits": "~2.0.3" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==" - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - } - } - }, - "raw-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", - "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" - } - } - }, - "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" - } - }, - "react-base16-styling": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", - "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", - "requires": { - "base16": "^1.0.0", - "lodash.curry": "^4.0.1", - "lodash.flow": "^3.3.0", - "pure-color": "^1.2.0" - } - }, - "react-dev-utils": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", - "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", - "requires": { - "@babel/code-frame": "^7.16.0", - "address": "^1.1.2", - "browserslist": "^4.18.1", - "chalk": "^4.1.2", - "cross-spawn": "^7.0.3", - "detect-port-alt": "^1.1.6", - "escape-string-regexp": "^4.0.0", - "filesize": "^8.0.6", - "find-up": "^5.0.0", - "fork-ts-checker-webpack-plugin": "^6.5.0", - "global-modules": "^2.0.0", - "globby": "^11.0.4", - "gzip-size": "^6.0.0", - "immer": "^9.0.7", - "is-root": "^2.1.0", - "loader-utils": "^3.2.0", - "open": "^8.4.0", - "pkg-up": "^3.1.0", - "prompts": "^2.4.2", - "react-error-overlay": "^6.0.11", - "recursive-readdir": "^2.2.2", - "shell-quote": "^1.7.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "loader-utils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", - "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==" - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "requires": { - "p-limit": "^3.0.2" - } - }, - "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==" - }, - "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==" - } - } - }, - "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-error-overlay": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", - "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" - }, - "react-fast-compare": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", - "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" - }, - "react-flow-renderer": { - "version": "10.3.17", - "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", - "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", - "optional": true, - "requires": { - "@babel/runtime": "^7.18.9", - "@types/d3": "^7.4.0", - "@types/resize-observer-browser": "^0.1.7", - "classcat": "^5.0.3", - "d3-drag": "^3.0.0", - "d3-selection": "^3.0.0", - "d3-zoom": "^3.0.0", - "zustand": "^3.7.2" - } - }, - "react-full-screen": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", - "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", - "requires": { - "fscreen": "^1.0.2" - } - }, - "react-helmet-async": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", - "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", - "requires": { - "@babel/runtime": "^7.12.5", - "invariant": "^2.2.4", - "prop-types": "^15.7.2", - "react-fast-compare": "^3.2.0", - "shallowequal": "^1.1.0" - } - }, - "react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" - }, - "react-json-view": { - "version": "1.21.3", - "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", - "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", - "requires": { - "flux": "^4.0.1", - "react-base16-styling": "^0.6.0", - "react-lifecycles-compat": "^3.0.4", - "react-textarea-autosize": "^8.3.2" - } - }, - "react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" - }, - "react-loadable": { - "version": "npm:@docusaurus/react-loadable@5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "requires": { - "@types/react": "*", - "prop-types": "^15.6.2" - } - }, - "react-loadable-ssr-addon-v5-slorber": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", - "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", - "requires": { - "@babel/runtime": "^7.10.3" - } - }, - "react-overflow-list": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", - "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", - "requires": { - "react-use": "^17.3.1" - }, - "dependencies": { - "react-use": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", - "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", - "requires": { - "@types/js-cookie": "^2.2.6", - "@xobotyi/scrollbar-width": "^1.9.5", - "copy-to-clipboard": "^3.3.1", - "fast-deep-equal": "^3.1.3", - "fast-shallow-equal": "^1.0.0", - "js-cookie": "^2.2.1", - "nano-css": "^5.3.1", - "react-universal-interface": "^0.6.2", - "resize-observer-polyfill": "^1.5.1", - "screenfull": "^5.1.0", - "set-harmonic-interval": "^1.0.1", - "throttle-debounce": "^3.0.1", - "ts-easing": "^0.2.0", - "tslib": "^2.1.0" - }, - "dependencies": { - "nano-css": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", - "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", - "requires": { - "css-tree": "^1.1.2", - "csstype": "^3.0.6", - "fastest-stable-stringify": "^2.0.2", - "inline-style-prefixer": "^6.0.0", - "rtl-css-js": "^1.14.0", - "sourcemap-codec": "^1.4.8", - "stacktrace-js": "^2.0.2", - "stylis": "^4.0.6" - } - } - } - } - } - }, - "react-query": { - "version": "3.39.3", - "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", - "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", - "requires": { - "@babel/runtime": "^7.5.5", - "broadcast-channel": "^3.4.1", - "match-sorter": "^6.0.2" - } - }, - "react-router": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", - "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", - "requires": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "hoist-non-react-statics": "^3.1.0", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.7.0", - "prop-types": "^15.6.2", - "react-is": "^16.6.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.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==" - } - } - }, - "react-router-config": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", - "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", - "requires": { - "@babel/runtime": "^7.1.2" - } - }, - "react-router-dom": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", - "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", - "requires": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.2", - "react-router": "5.3.4", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - } - }, - "react-router-hash-link": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", - "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", - "requires": { - "prop-types": "^15.7.2" - } - }, - "react-tabs": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", - "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", - "requires": { - "clsx": "^1.1.0", - "prop-types": "^15.5.0" - } - }, - "react-textarea-autosize": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", - "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", - "requires": { - "@babel/runtime": "^7.20.13", - "use-composed-ref": "^1.3.0", - "use-latest": "^1.2.1" - } - }, - "react-tooltip": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", - "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", - "requires": { - "prop-types": "^15.8.1", - "uuid": "^7.0.3" - }, - "dependencies": { - "uuid": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", - "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==" - } - } - }, - "react-universal-interface": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", - "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", - "requires": {} - }, - "react-waypoint": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", - "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", - "requires": { - "@babel/runtime": "^7.12.5", - "consolidated-events": "^1.1.0 || ^2.0.0", - "prop-types": "^15.0.0", - "react-is": "^17.0.1 || ^18.0.0" - } - }, - "readable-stream": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", - "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "requires": { - "picomatch": "^2.2.1" - } - }, - "reading-time": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", - "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" - }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", - "requires": { - "resolve": "^1.1.6" - } - }, - "recursive-readdir": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", - "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", - "requires": { - "minimatch": "^3.0.5" - } - }, - "redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - } - }, - "redoc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", - "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", - "requires": { - "@redocly/openapi-core": "^1.0.0-beta.104", - "classnames": "^2.3.1", - "decko": "^1.2.0", - "dompurify": "^2.2.8", - "eventemitter3": "^4.0.7", - "json-pointer": "^0.6.2", - "lunr": "^2.3.9", - "mark.js": "^8.11.1", - "marked": "^4.0.15", - "mobx-react": "^7.2.0", - "openapi-sampler": "^1.3.0", - "path-browserify": "^1.0.1", - "perfect-scrollbar": "^1.5.5", - "polished": "^4.1.3", - "prismjs": "^1.27.0", - "prop-types": "^15.7.2", - "react-tabs": "^3.2.2", - "slugify": "~1.4.7", - "stickyfill": "^1.1.1", - "style-loader": "^3.3.1", - "swagger2openapi": "^7.0.6", - "url-template": "^2.0.8" - }, - "dependencies": { - "slugify": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", - "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==" - }, - "style-loader": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", - "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", - "requires": {} - } - } - }, - "reftools": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", - "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==" - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" - }, - "regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - } - }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "devOptional": true - }, - "regexpu-core": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", - "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, - "registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "requires": { - "rc": "1.2.8" - } - }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "requires": { - "rc": "^1.2.8" - } - }, - "regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==" - } - } - }, - "rehype-katex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", - "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", - "requires": { - "@types/katex": "^0.11.0", - "hast-util-to-text": "^2.0.0", - "katex": "^0.13.0", - "rehype-parse": "^7.0.0", - "unified": "^9.0.0", - "unist-util-visit": "^2.0.0" - } - }, - "rehype-parse": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", - "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", - "requires": { - "hast-util-from-parse5": "^6.0.0", - "parse5": "^6.0.0" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - } - } - }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==" - }, - "remark-emoji": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", - "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", - "requires": { - "emoticon": "^3.2.0", - "node-emoji": "^1.10.0", - "unist-util-visit": "^2.0.3" - } - }, - "remark-footnotes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", - "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==" - }, - "remark-frontmatter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", - "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", - "requires": { - "mdast-util-frontmatter": "^0.2.0", - "micromark-extension-frontmatter": "^0.2.0" - } - }, - "remark-gfm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", - "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", - "requires": { - "mdast-util-gfm": "^0.1.0", - "micromark-extension-gfm": "^0.3.0" - } - }, - "remark-math": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", - "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==" - }, - "remark-mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", - "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", - "requires": { - "@babel/core": "7.12.9", - "@babel/helper-plugin-utils": "7.10.4", - "@babel/plugin-proposal-object-rest-spread": "7.12.1", - "@babel/plugin-syntax-jsx": "7.12.1", - "@mdx-js/util": "1.6.22", - "is-alphabetical": "1.0.4", - "remark-parse": "8.0.3", - "unified": "9.2.0" - }, - "dependencies": { - "@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", - "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.12.1" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" - }, - "unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - } - } - }, - "remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "requires": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - } - }, - "remark-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", - "requires": { - "mdast-squeeze-paragraphs": "^4.0.0" - } - }, - "remark-stringify": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", - "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", - "requires": { - "mdast-util-to-markdown": "^0.6.0" - } - }, - "remove-accents": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", - "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" - }, - "renderkid": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", - "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", - "requires": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - } - } - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==" - }, - "request-progress": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", - "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", - "dev": true, - "requires": { - "throttleit": "^1.0.0" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" - }, - "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==" - }, - "require-like": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", - "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==" - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, - "resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "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" - }, - "dependencies": { - "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 - } - } - }, - "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==" - }, - "resolve-pathname": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", - "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" - }, - "resolve.exports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", - "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", - "dev": true - }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "requires": { - "lowercase-keys": "^1.0.0" - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rtl-css-js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", - "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", - "requires": { - "@babel/runtime": "^7.1.2" - } - }, - "rtl-detect": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", - "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" - }, - "rtlcss": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", - "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", - "requires": { - "find-up": "^5.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.3.11", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "requires": { - "p-limit": "^3.0.2" - } - }, - "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==" - }, - "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==" - } - } - }, - "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==", - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rxjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", - "requires": { - "tslib": "^2.1.0" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, - "safe-stable-stringify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", - "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sanitize-html": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", - "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", - "requires": { - "deepmerge": "^4.2.2", - "escape-string-regexp": "^4.0.0", - "htmlparser2": "^8.0.0", - "is-plain-object": "^5.0.0", - "parse-srcset": "^1.0.2", - "postcss": "^8.3.11" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "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==", - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - }, - "screenfull": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", - "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==" - }, - "section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "requires": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" - }, - "selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", - "requires": { - "node-forge": "^1" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "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==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "requires": { - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - } - } - }, - "serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-handler": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", - "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", - "requires": { - "bytes": "3.0.0", - "content-disposition": "0.5.2", - "fast-url-parser": "1.1.3", - "mime-types": "2.1.18", - "minimatch": "3.1.2", - "path-is-inside": "1.0.2", - "path-to-regexp": "2.2.1", - "range-parser": "1.2.0" - }, - "dependencies": { - "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" - }, - "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "requires": { - "mime-db": "~1.33.0" - } - }, - "path-to-regexp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", - "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" - } - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==" - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==" - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-harmonic-interval": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", - "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==" - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "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==", - "requires": { - "kind-of": "^6.0.2" - } - }, - "shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" - }, - "sharp": { - "version": "0.30.7", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", - "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", - "requires": { - "color": "^4.2.3", - "detect-libc": "^2.0.1", - "node-addon-api": "^5.0.0", - "prebuild-install": "^7.1.1", - "semver": "^7.3.7", - "simple-get": "^4.0.1", - "tar-fs": "^2.1.1", - "tunnel-agent": "^0.6.0" - }, - "dependencies": { - "color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "requires": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - } - } - } - }, - "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==", - "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==" - }, - "shell-quote": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", - "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==" - }, - "shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } - }, - "should": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", - "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", - "requires": { - "should-equal": "^2.0.0", - "should-format": "^3.0.3", - "should-type": "^1.4.0", - "should-type-adaptors": "^1.0.1", - "should-util": "^1.0.0" - } - }, - "should-equal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", - "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", - "requires": { - "should-type": "^1.4.0" - } - }, - "should-format": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", - "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", - "requires": { - "should-type": "^1.3.0", - "should-type-adaptors": "^1.0.1" - } - }, - "should-type": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", - "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" - }, - "should-type-adaptors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", - "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", - "requires": { - "should-type": "^1.3.0", - "should-util": "^1.0.0" - } - }, - "should-util": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", - "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" - }, - "simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "requires": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "simple-html-tokenizer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", - "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", - "dev": true - }, - "simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "requires": { - "is-arrayish": "^0.3.1" - }, - "dependencies": { - "is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" - } - } - }, - "sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", - "requires": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" - } - }, - "sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" - }, - "sitemap": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", - "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", - "requires": { - "@types/node": "^17.0.5", - "@types/sax": "^1.2.1", - "arg": "^5.0.0", - "sax": "^1.2.4" - }, - "dependencies": { - "@types/node": { - "version": "17.0.45", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", - "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" - } - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" - }, - "slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, - "slugify": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", - "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==" - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "sort-css-media-queries": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", - "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" - }, - "space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==" - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "speed-measure-webpack-plugin": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", - "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", - "dev": true, - "requires": { - "chalk": "^4.1.0" - } - }, - "split-on-first": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", - "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==" - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssr-window": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", - "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" - }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" - }, - "stack-generator": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", - "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", - "requires": { - "stackframe": "^1.3.4" - } - }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==" - }, - "stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "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 - } - } - }, - "stackframe": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" - }, - "stacktrace-gps": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", - "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", - "requires": { - "source-map": "0.5.6", - "stackframe": "^1.3.4" - }, - "dependencies": { - "source-map": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==" - } - } - }, - "stacktrace-js": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", - "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", - "requires": { - "error-stack-parser": "^2.0.6", - "stack-generator": "^2.0.5", - "stacktrace-gps": "^3.0.4" - } - }, - "state-local": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", - "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" - }, - "state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==" - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - }, - "std-env": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", - "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" - }, - "stickyfill": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", - "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" - }, - "stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "requires": { - "internal-slot": "^1.0.4" - } - }, - "stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "requires": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-argv": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", - "dev": true - }, - "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": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "requires": { - "ansi-regex": "^6.0.1" - } - } - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "stringify-object": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", - "requires": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "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-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==" - }, - "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==" - }, - "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "requires": { - "min-indent": "^1.0.0" - } - }, - "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==" - }, - "style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - } - }, - "style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", - "requires": { - "inline-style-parser": "0.1.1" - } - }, - "styled-components": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", - "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/traverse": "^7.4.5", - "@emotion/is-prop-valid": "^0.8.8", - "@emotion/stylis": "^0.8.4", - "@emotion/unitless": "^0.7.4", - "babel-plugin-styled-components": ">= 1.12.0", - "css-to-react-native": "^3.0.0", - "hoist-non-react-statics": "^3.0.0", - "shallowequal": "^1.1.0", - "supports-color": "^5.5.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "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" - } - } - } - }, - "stylehacks": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", - "requires": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - } - }, - "stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" - }, - "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==", - "requires": { - "has-flag": "^4.0.0" - } - }, - "supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "dev": true, - "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" - }, - "svg-inline-loader": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", - "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "object-assign": "^4.0.1", - "simple-html-tokenizer": "^0.1.1" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, - "svg-parser": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", - "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" - }, - "svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "requires": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "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==" - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" - } - } - }, - "swagger2openapi": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", - "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", - "requires": { - "call-me-maybe": "^1.0.1", - "node-fetch": "^2.6.1", - "node-fetch-h2": "^2.3.0", - "node-readfiles": "^0.2.0", - "oas-kit-common": "^1.0.8", - "oas-resolver": "^2.5.6", - "oas-schema-walker": "^1.1.5", - "oas-validator": "^5.0.8", - "reftools": "^1.1.9", - "yaml": "^1.10.0", - "yargs": "^17.0.1" - }, - "dependencies": { - "cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - } - }, - "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==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" - } - } - }, - "swiper": { - "version": "8.4.7", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", - "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", - "requires": { - "dom7": "^4.0.4", - "ssr-window": "^4.0.2" - } - }, - "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 - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" - }, - "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "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.16.5", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", - "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "dependencies": { - "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==" - } - } - }, - "terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", - "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "dependencies": { - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.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==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "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-hex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", - "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" - }, - "throat": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", - "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", - "dev": true - }, - "throttle-debounce": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", - "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==" - }, - "throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" - }, - "timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "requires": { - "setimmediate": "^1.0.4" - } - }, - "timespan": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", - "integrity": "sha512-0Jq9+58T2wbOyLth0EU+AUb6JMGCLaTWIykJFa7hyAybjVH9gpVMTfUAwo5fWAvtFt2Tjh/Elg8JtgNpnMnM8g==" - }, - "tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" - }, - "tiny-warning": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" - }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" - }, - "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==", - "requires": { - "is-number": "^7.0.0" - } - }, - "toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, - "totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==" - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "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" - } - }, - "trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==" - }, - "trim-trailing-lines": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", - "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==" - }, - "triple-beam": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", - "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==" - }, - "trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==" - }, - "ts-easing": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", - "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" - }, - "ts-keycode-enum": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", - "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" - }, - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - }, - "tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "devOptional": 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": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "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==", - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "peer": true - }, - "ua-parser-js": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", - "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==" - }, - "uglify-js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz", - "integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ==" - }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "requires": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - } - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==" - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==" - }, - "unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==" - }, - "unified": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", - "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - }, - "unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "requires": { - "crypto-random-string": "^2.0.0" - } - }, - "unist-builder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", - "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==" - }, - "unist-util-find-after": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", - "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", - "requires": { - "unist-util-is": "^4.0.0" - } - }, - "unist-util-generated": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", - "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==" - }, - "unist-util-is": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", - "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==" - }, - "unist-util-position": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", - "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==" - }, - "unist-util-remove": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", - "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", - "requires": { - "unist-util-is": "^4.0.0" - } - }, - "unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "unist-util-select": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", - "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", - "requires": { - "@types/unist": "^2.0.0", - "css-selector-parser": "^1.0.0", - "nth-check": "^2.0.0", - "zwitch": "^2.0.0" - }, - "dependencies": { - "zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" - } - } - }, - "unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "requires": { - "@types/unist": "^2.0.2" - } - }, - "unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - } - }, - "unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" - }, - "unload": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", - "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", - "requires": { - "@babel/runtime": "^7.6.2", - "detect-node": "^2.0.4" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" - }, - "untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "requires": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - } - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" - }, - "cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" - }, - "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==" - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "requires": { - "ci-info": "^2.0.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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==" - }, - "widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "requires": { - "string-width": "^4.0.0" - } - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - } - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { - "punycode": "^2.1.0" - } - }, - "urijs": { - "version": "1.19.11", - "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", - "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" - } - } - }, - "url-loader": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", - "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", - "requires": { - "loader-utils": "^2.0.0", - "mime-types": "^2.1.27", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "requires": { - "prepend-http": "^2.0.0" - } - }, - "url-template": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", - "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" - }, - "use-composed-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", - "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", - "requires": {} - }, - "use-isomorphic-layout-effect": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", - "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", - "requires": {} - }, - "use-latest": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", - "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", - "requires": { - "use-isomorphic-layout-effect": "^1.1.1" - } - }, - "use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "requires": {} - }, - "util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "requires": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" - }, - "utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - }, - "v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", - "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.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - } - } - }, - "validate.io-array": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", - "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" - }, - "validate.io-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", - "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" - }, - "validate.io-integer": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", - "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", - "requires": { - "validate.io-number": "^1.0.3" - } - }, - "validate.io-integer-array": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", - "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", - "requires": { - "validate.io-array": "^1.0.3", - "validate.io-integer": "^1.0.4" - } - }, - "validate.io-number": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", - "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" - }, - "value-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", - "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", - "requires": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" - } - }, - "vfile-location": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", - "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==" - }, - "vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", - "requires": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - } - }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" - }, - "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" - } - }, - "wait-on": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", - "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", - "requires": { - "axios": "^0.25.0", - "joi": "^17.6.0", - "lodash": "^4.17.21", - "minimist": "^1.2.5", - "rxjs": "^7.5.4" - }, - "dependencies": { - "axios": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", - "requires": { - "follow-redirects": "^1.14.7" - } - } - } - }, - "walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "requires": { - "makeerror": "1.0.12" - } - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "web-namespaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", - "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==" - }, - "web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==" - }, - "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.75.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", - "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-bundle-analyzer": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", - "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", - "requires": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "gzip-size": "^6.0.0", - "lodash": "^4.17.20", - "opener": "^1.5.2", - "sirv": "^1.0.7", - "ws": "^7.3.1" - }, - "dependencies": { - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" - }, - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" - } - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", - "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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==" - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "ws": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", - "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", - "requires": {} - } - } - }, - "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==", - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==" - }, - "webpackbar": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", - "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", - "requires": { - "chalk": "^4.1.0", - "consola": "^2.15.3", - "pretty-time": "^1.1.0", - "std-env": "^3.0.1" - } - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==" - }, - "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" - } - }, - "whatwg-fetch": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", - "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" - }, - "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" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "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==", - "dev": true, - "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-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "requires": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - } - }, - "which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - } - }, - "widest-line": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", - "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", - "requires": { - "string-width": "^5.0.1" - } - }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" - }, - "winston": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.10.0.tgz", - "integrity": "sha512-nT6SIDaE9B7ZRO0u3UvdrimG0HkB7dSTAgInQnNR2SOPJ4bvq5q79+pXLftKmP52lJGW15+H5MCK0nM9D3KB/g==", - "requires": { - "@colors/colors": "1.5.0", - "@dabh/diagnostics": "^2.0.2", - "async": "^3.2.3", - "is-stream": "^2.0.0", - "logform": "^2.4.0", - "one-time": "^1.0.0", - "readable-stream": "^3.4.0", - "safe-stable-stringify": "^2.3.1", - "stack-trace": "0.0.x", - "triple-beam": "^1.3.0", - "winston-transport": "^4.5.0" - }, - "dependencies": { - "safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" - } - } - }, - "winston-transport": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz", - "integrity": "sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==", - "requires": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", - "triple-beam": "^1.3.0" - } - }, - "wolfy87-eventemitter": { - "version": "5.2.9", - "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", - "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" - }, - "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==", - "devOptional": true - }, - "wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "requires": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" - }, - "ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "requires": { - "ansi-regex": "^6.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "wrench": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/wrench/-/wrench-1.3.9.tgz", - "integrity": "sha512-srTJQmLTP5YtW+F5zDuqjMEZqLLr/eJOZfDI5ibfPfRMeDh3oBUefAscuH0q5wBKE339ptH/S/0D18ZkfOfmKQ==" - }, - "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==", - "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.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "requires": {} - }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" - }, - "xml-formatter": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", - "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", - "requires": { - "xml-parser-xo": "^3.2.0" - } - }, - "xml-js": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", - "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", - "requires": { - "sax": "^1.2.4" - } - }, - "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 - }, - "xml-parser-xo": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", - "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==" - }, - "xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" - }, - "yaml-ast-parser": { - "version": "0.0.43", - "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", - "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" - }, - "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" - }, - "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-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - } - } - }, - "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 - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true - }, - "zustand": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", - "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", - "requires": {} - }, - "zwitch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", - "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==" - } - } -} +{ + "name": "website", + "version": "0.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "0.0.0", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/plugin-ideal-image": "2.3.1", + "@docusaurus/preset-classic": "2.3.1", + "@docusaurus/theme-search-algolia": "2.3.1", + "@mdx-js/react": "^1.6.21", + "@monaco-editor/react": "^4.4.6", + "@stoplight/elements": "^7.7.17", + "@svgr/webpack": "^6.0.0", + "axios": "^0.27.2", + "classnames": "^2.3.1", + "clsx": "^1.1.1", + "color": "^3.1.2", + "core-js": "^3.20.0", + "feed": "^4.2.2", + "file-loader": "^6.2.0", + "fs": "0.0.2", + "gray-matter": "^4.0.3", + "hast-util-is-element": "^1.1.0", + "js-yaml": "^4.1.0", + "mobx": "^6.3.9", + "node-polyfill-webpack-plugin": "^1.1.4", + "papaparse": "^5.3.2", + "prism-react-renderer": "^1.2.1", + "query-string": "^8.1.0", + "raw-loader": "^4.0.2", + "react": "^17.0.1", + "react-dom": "^17.0.1", + "react-full-screen": "^1.1.1", + "react-is": "^18.1.0", + "react-tooltip": "^4.2.21", + "redoc": "^2.0.0-rc.57", + "rehype-katex": "^5.0.0", + "remark-math": "^3.0.1", + "sanitize-html": "^2.8.0", + "slugify": "^1.6.1", + "styled-components": "5.3.3", + "swiper": "^8.4.3", + "url-loader": "^4.1.1" + }, + "devDependencies": { + "@cypress/react": "^7.0.2", + "@cypress/webpack-dev-server": "^3.2.3", + "@docusaurus/eslint-plugin": "2.3.1", + "@swc/core": "^1.2.174", + "@swc/jest": "^0.2.20", + "@testing-library/jest-dom": "^5.16.2", + "@testing-library/react": "^12.1.3", + "@testing-library/user-event": "^13.5.0", + "@typescript-eslint/eslint-plugin": "^5.54.0", + "@typescript-eslint/parser": "^5.54.0", + "css-loader": "^3.4.2", + "cypress": "^12.6.0", + "dotenv": "^10.0.0", + "eslint": "^8.35.0", + "eslint-config-prettier": "^8.6.0", + "eslint-plugin-markdown": "^3.0.0", + "eslint-plugin-prettier": "^4.2.1", + "husky": "^8.0.3", + "jest": "^27.5.1", + "jest-cli": "^27.5.1", + "lint-staged": "^13.1.2", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "stream-http": "^3.2.0", + "style-loader": "^1.1.3", + "svg-inline-loader": "^0.8.2", + "tty-browserify": "0.0.1", + "webpack": "^5.75.0", + "webpack-dev-server": "^4.11.1" + }, + "optionalDependencies": { + "@dbt-labs/react-dbt-dag": "0.8.7" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", + "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", + "dev": true + }, + "node_modules/@algolia/autocomplete-core": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", + "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", + "dependencies": { + "@algolia/autocomplete-shared": "1.7.4" + } + }, + "node_modules/@algolia/autocomplete-preset-algolia": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", + "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", + "dependencies": { + "@algolia/autocomplete-shared": "1.7.4" + }, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/autocomplete-shared": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", + "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" + }, + "node_modules/@algolia/cache-browser-local-storage": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", + "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", + "dependencies": { + "@algolia/cache-common": "4.16.0" + } + }, + "node_modules/@algolia/cache-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", + "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" + }, + "node_modules/@algolia/cache-in-memory": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", + "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", + "dependencies": { + "@algolia/cache-common": "4.16.0" + } + }, + "node_modules/@algolia/client-account": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", + "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", + "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", + "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", + "dependencies": { + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", + "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/client-search": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", + "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", + "dependencies": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/@algolia/events": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", + "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" + }, + "node_modules/@algolia/logger-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", + "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" + }, + "node_modules/@algolia/logger-console": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", + "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", + "dependencies": { + "@algolia/logger-common": "4.16.0" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", + "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", + "dependencies": { + "@algolia/requester-common": "4.16.0" + } + }, + "node_modules/@algolia/requester-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", + "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" + }, + "node_modules/@algolia/requester-node-http": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", + "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", + "dependencies": { + "@algolia/requester-common": "4.16.0" + } + }, + "node_modules/@algolia/transporter": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", + "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", + "dependencies": { + "@algolia/cache-common": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/requester-common": "4.16.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", + "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.0", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.0", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.0", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", + "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", + "dependencies": { + "@babel/types": "^7.21.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", + "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", + "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "dependencies": { + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", + "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dependencies": { + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "dependencies": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "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": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "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.21.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", + "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", + "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@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.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@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.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "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==", + "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==", + "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==", + "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==", + "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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "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==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", + "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", + "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", + "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", + "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "dependencies": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", + "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "dependencies": { + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-simple-access": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", + "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", + "dependencies": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-identifier": "^7.19.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", + "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", + "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-constant-elements": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", + "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", + "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", + "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-jsx": "^7.18.6", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-development": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", + "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", + "dependencies": { + "@babel/plugin-transform-react-jsx": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-pure-annotations": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", + "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", + "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", + "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", + "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "dependencies": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-react": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", + "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-react-display-name": "^7.18.6", + "@babel/plugin-transform-react-jsx": "^7.18.6", + "@babel/plugin-transform-react-jsx-development": "^7.18.6", + "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", + "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.21.0", + "@babel/plugin-transform-typescript": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" + }, + "node_modules/@babel/runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", + "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", + "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", + "dependencies": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", + "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.2", + "@babel/types": "^7.21.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", + "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "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/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@cypress/react": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", + "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", + "dev": true, + "peerDependencies": { + "@types/react": "^16.9.16 || ^17.0.0", + "cypress": "*", + "react": "^=16.x || ^=17.x", + "react-dom": "^=16.x || ^=17.x" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@cypress/request": { + "version": "2.88.11", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", + "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "http-signature": "~1.3.6", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "performance-now": "^2.1.0", + "qs": "~6.10.3", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@cypress/request/node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/@cypress/webpack-dev-server": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", + "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", + "dev": true, + "dependencies": { + "find-up": "6.3.0", + "fs-extra": "9.1.0", + "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", + "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", + "local-pkg": "0.4.1", + "speed-measure-webpack-plugin": "1.4.2", + "tslib": "^2.3.1", + "webpack-dev-server": "^4.7.4", + "webpack-merge": "^5.4.0" + } + }, + "node_modules/@cypress/xvfb": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", + "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "lodash.once": "^4.1.1" + } + }, + "node_modules/@cypress/xvfb/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/@dbt-labs/react-dbt-dag": { + "version": "0.8.7", + "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", + "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", + "license": "ISC", + "optional": true, + "dependencies": { + "classnames": "^2.3.1", + "dagre": "^0.8.5", + "graphlib": "^2.1.8", + "lodash": "^4.17.21", + "react-flow-renderer": "^10.3.8" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@docsearch/css": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", + "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" + }, + "node_modules/@docsearch/react": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", + "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", + "dependencies": { + "@algolia/autocomplete-core": "1.7.4", + "@algolia/autocomplete-preset-algolia": "1.7.4", + "@docsearch/css": "3.3.3", + "algoliasearch": "^4.0.0" + }, + "peerDependencies": { + "@types/react": ">= 16.8.0 < 19.0.0", + "react": ">= 16.8.0 < 19.0.0", + "react-dom": ">= 16.8.0 < 19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/@docusaurus/core": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", + "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", + "dependencies": { + "@babel/core": "^7.18.6", + "@babel/generator": "^7.18.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.18.6", + "@babel/preset-env": "^7.18.6", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@babel/runtime": "^7.18.6", + "@babel/runtime-corejs3": "^7.18.6", + "@babel/traverse": "^7.18.8", + "@docusaurus/cssnano-preset": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@slorber/static-site-generator-webpack-plugin": "^4.0.7", + "@svgr/webpack": "^6.2.1", + "autoprefixer": "^10.4.7", + "babel-loader": "^8.2.5", + "babel-plugin-dynamic-import-node": "^2.3.3", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "clean-css": "^5.3.0", + "cli-table3": "^0.6.2", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "copy-webpack-plugin": "^11.0.0", + "core-js": "^3.23.3", + "css-loader": "^6.7.1", + "css-minimizer-webpack-plugin": "^4.0.0", + "cssnano": "^5.1.12", + "del": "^6.1.1", + "detect-port": "^1.3.0", + "escape-html": "^1.0.3", + "eta": "^2.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "html-minifier-terser": "^6.1.0", + "html-tags": "^3.2.0", + "html-webpack-plugin": "^5.5.0", + "import-fresh": "^3.3.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "mini-css-extract-plugin": "^2.6.1", + "postcss": "^8.4.14", + "postcss-loader": "^7.0.0", + "prompts": "^2.4.2", + "react-dev-utils": "^12.0.1", + "react-helmet-async": "^1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.3", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.3", + "rtl-detect": "^1.0.4", + "semver": "^7.3.7", + "serve-handler": "^6.1.3", + "shelljs": "^0.8.5", + "terser-webpack-plugin": "^5.3.3", + "tslib": "^2.4.0", + "update-notifier": "^5.1.0", + "url-loader": "^4.1.1", + "wait-on": "^6.0.1", + "webpack": "^5.73.0", + "webpack-bundle-analyzer": "^4.5.0", + "webpack-dev-server": "^4.9.3", + "webpack-merge": "^5.8.0", + "webpackbar": "^5.0.2" + }, + "bin": { + "docusaurus": "bin/docusaurus.mjs" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/core/node_modules/css-loader": { + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", + "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.19", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/@docusaurus/core/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/core/node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/core/node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/@docusaurus/cssnano-preset": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", + "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", + "dependencies": { + "cssnano-preset-advanced": "^5.3.8", + "postcss": "^8.4.14", + "postcss-sort-media-queries": "^4.2.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/eslint-plugin": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", + "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "^5.30.5", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "eslint": ">=6" + } + }, + "node_modules/@docusaurus/logger": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", + "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/lqip-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", + "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", + "dependencies": { + "@docusaurus/logger": "2.3.1", + "file-loader": "^6.2.0", + "lodash": "^4.17.21", + "sharp": "^0.30.7", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/mdx-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", + "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", + "dependencies": { + "@babel/parser": "^7.18.8", + "@babel/traverse": "^7.18.8", + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@mdx-js/mdx": "^1.6.22", + "escape-html": "^1.0.3", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "image-size": "^1.0.1", + "mdast-util-to-string": "^2.0.0", + "remark-emoji": "^2.2.0", + "stringify-object": "^3.3.0", + "tslib": "^2.4.0", + "unified": "^9.2.2", + "unist-util-visit": "^2.0.3", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/mdx-loader/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/module-type-aliases": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", + "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", + "dependencies": { + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/types": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "*", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/@docusaurus/plugin-content-blog": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", + "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "cheerio": "^1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "reading-time": "^1.5.0", + "tslib": "^2.4.0", + "unist-util-visit": "^2.0.3", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-content-docs": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", + "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@types/react-router-config": "^5.0.6", + "combine-promises": "^1.1.0", + "fs-extra": "^10.1.0", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-content-pages": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", + "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-debug": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", + "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "fs-extra": "^10.1.0", + "react-json-view": "^1.21.3", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-debug/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/plugin-google-analytics": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", + "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", + "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", + "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-ideal-image": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", + "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/lqip-loader": "2.3.1", + "@docusaurus/responsive-loader": "^1.7.0", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@endiliey/react-ideal-image": "^0.0.11", + "react-waypoint": "^10.3.0", + "sharp": "^0.30.7", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "jimp": "*", + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + }, + "peerDependenciesMeta": { + "jimp": { + "optional": true + } + } + }, + "node_modules/@docusaurus/plugin-sitemap": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", + "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "sitemap": "^7.1.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/preset-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", + "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/plugin-debug": "2.3.1", + "@docusaurus/plugin-google-analytics": "2.3.1", + "@docusaurus/plugin-google-gtag": "2.3.1", + "@docusaurus/plugin-google-tag-manager": "2.3.1", + "@docusaurus/plugin-sitemap": "2.3.1", + "@docusaurus/theme-classic": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-search-algolia": "2.3.1", + "@docusaurus/types": "2.3.1" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/react-loadable": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "dependencies": { + "@types/react": "*", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": "*" + } + }, + "node_modules/@docusaurus/responsive-loader": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", + "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", + "dependencies": { + "loader-utils": "^2.0.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "jimp": "*", + "sharp": "*" + }, + "peerDependenciesMeta": { + "jimp": { + "optional": true + }, + "sharp": { + "optional": true + } + } + }, + "node_modules/@docusaurus/theme-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", + "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", + "dependencies": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@mdx-js/react": "^1.6.22", + "clsx": "^1.2.1", + "copy-text-to-clipboard": "^3.0.1", + "infima": "0.2.0-alpha.42", + "lodash": "^4.17.21", + "nprogress": "^0.2.0", + "postcss": "^8.4.14", + "prism-react-renderer": "^1.3.5", + "prismjs": "^1.28.0", + "react-router-dom": "^5.3.3", + "rtlcss": "^3.5.0", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", + "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", + "dependencies": { + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^1.2.1", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^1.3.5", + "tslib": "^2.4.0", + "use-sync-external-store": "^1.2.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", + "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", + "dependencies": { + "@docsearch/react": "^3.1.1", + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "algoliasearch": "^4.13.1", + "algoliasearch-helper": "^3.10.0", + "clsx": "^1.2.1", + "eta": "^2.0.0", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/theme-translations": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", + "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", + "dependencies": { + "fs-extra": "^10.1.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/theme-translations/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@docusaurus/types": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", + "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.6.0", + "react-helmet-async": "^1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0", + "webpack-merge": "^5.8.0" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/utils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", + "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", + "dependencies": { + "@docusaurus/logger": "2.3.1", + "@svgr/webpack": "^6.2.1", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "github-slugger": "^1.4.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.4.0", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "@docusaurus/types": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/types": { + "optional": true + } + } + }, + "node_modules/@docusaurus/utils-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", + "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", + "dependencies": { + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "@docusaurus/types": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/types": { + "optional": true + } + } + }, + "node_modules/@docusaurus/utils-validation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", + "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", + "dependencies": { + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "joi": "^17.6.0", + "js-yaml": "^4.1.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/utils/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "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==", + "dependencies": { + "@emotion/memoize": "0.7.4" + } + }, + "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==" + }, + "node_modules/@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "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/@endiliey/react-ideal-image": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", + "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", + "engines": { + "node": ">= 8.9.0", + "npm": "> 3" + }, + "peerDependencies": { + "prop-types": ">=15", + "react": ">=0.14.x", + "react-waypoint": ">=9.0.2" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", + "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", + "devOptional": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": 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==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", + "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@exodus/schemasafe": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", + "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" + }, + "node_modules/@faker-js/faker": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", + "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", + "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", + "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.4.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/react-fontawesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", + "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", + "dependencies": { + "prop-types": "^15.8.1" + }, + "peerDependencies": { + "@fortawesome/fontawesome-svg-core": "~1 || ~6", + "react": ">=16.3" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "devOptional": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "devOptional": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "devOptional": 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/load-nyc-config/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/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@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.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/console/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "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/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/core/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/create-cache-key-function": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", + "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", + "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/fake-timers/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "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/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@jest/reporters/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/@jest/schemas": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", + "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", + "dependencies": { + "@sinclair/typebox": "^0.25.16" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@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.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "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/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, + "node_modules/@juggle/resize-observer": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", + "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" + }, + "node_modules/@mdx-js/mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", + "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@mdx-js/util": "1.6.22", + "babel-plugin-apply-mdx-type-prop": "1.6.22", + "babel-plugin-extract-import-names": "1.6.22", + "camelcase-css": "2.0.1", + "detab": "2.0.4", + "hast-util-raw": "6.0.1", + "lodash.uniq": "4.5.0", + "mdast-util-to-hast": "10.0.1", + "remark-footnotes": "2.0.0", + "remark-mdx": "1.6.22", + "remark-parse": "8.0.3", + "remark-squeeze-paragraphs": "4.0.0", + "style-to-object": "0.3.0", + "unified": "9.2.0", + "unist-builder": "2.0.3", + "unist-util-visit": "2.0.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/mdx/node_modules/@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@mdx-js/mdx/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@mdx-js/mdx/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@mdx-js/mdx/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@mdx-js/mdx/node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/react": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/@mdx-js/util": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", + "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@monaco-editor/loader": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", + "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", + "dependencies": { + "state-local": "^1.0.6" + }, + "peerDependencies": { + "monaco-editor": ">= 0.21.0 < 1" + } + }, + "node_modules/@monaco-editor/react": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", + "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", + "dependencies": { + "@monaco-editor/loader": "^1.3.2", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "monaco-editor": ">= 0.25.0 < 1", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.21", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", + "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" + }, + "node_modules/@react-hook/debounce": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", + "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", + "dependencies": { + "@react-hook/latest": "^1.0.2" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/event": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", + "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/latest": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", + "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/passive-layout-effect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", + "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/resize-observer": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", + "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1", + "@react-hook/latest": "^1.0.2", + "@react-hook/passive-layout-effect": "^1.2.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/size": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", + "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", + "dependencies": { + "@react-hook/passive-layout-effect": "^1.2.0", + "@react-hook/resize-observer": "^1.2.1" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/throttle": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", + "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", + "dependencies": { + "@react-hook/latest": "^1.0.2" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/window-size": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", + "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", + "dependencies": { + "@react-hook/debounce": "^3.0.0", + "@react-hook/event": "^1.2.1", + "@react-hook/throttle": "^2.2.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-types/button": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", + "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", + "dependencies": { + "@react-types/shared": "^3.8.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/checkbox": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", + "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", + "dependencies": { + "@react-types/shared": "^3.18.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" + } + }, + "node_modules/@react-types/checkbox/node_modules/@react-types/shared": { + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", + "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" + } + }, + "node_modules/@react-types/radio": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", + "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", + "dependencies": { + "@react-types/shared": "^3.8.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/shared": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", + "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/switch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", + "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", + "dependencies": { + "@react-types/checkbox": "^3.2.3", + "@react-types/shared": "^3.8.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@react-types/textfield": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", + "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", + "dependencies": { + "@react-types/shared": "^3.9.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1" + } + }, + "node_modules/@redocly/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", + "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/@redocly/ajv/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==" + }, + "node_modules/@redocly/openapi-core": { + "version": "1.0.0-beta.123", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", + "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", + "dependencies": { + "@redocly/ajv": "^8.11.0", + "@types/node": "^14.11.8", + "colorette": "^1.2.0", + "js-levenshtein": "^1.1.6", + "js-yaml": "^4.1.0", + "lodash.isequal": "^4.5.0", + "minimatch": "^5.0.1", + "node-fetch": "^2.6.1", + "pluralize": "^8.0.0", + "yaml-ast-parser": "0.0.43" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@redocly/openapi-core/node_modules/@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" + }, + "node_modules/@redocly/openapi-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@redocly/openapi-core/node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" + }, + "node_modules/@redocly/openapi-core/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rehooks/component-size": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", + "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@sentry/browser": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", + "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", + "dependencies": { + "@sentry/core": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/core": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", + "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", + "dependencies": { + "@sentry/hub": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/hub": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", + "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", + "dependencies": { + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/hub/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/minimal": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", + "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", + "dependencies": { + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/minimal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/react": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", + "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", + "dependencies": { + "@sentry/browser": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "hoist-non-react-statics": "^3.3.2", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "react": "15.x || 16.x || 17.x || 18.x" + } + }, + "node_modules/@sentry/react/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sentry/types": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", + "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/utils": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", + "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", + "dependencies": { + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/utils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@sideway/address": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", + "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" + }, + "node_modules/@sinclair/typebox": { + "version": "0.25.24", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", + "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@slorber/static-site-generator-webpack-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", + "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", + "dependencies": { + "eval": "^0.1.8", + "p-map": "^4.0.0", + "webpack-sources": "^3.2.2" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@stoplight/elements": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", + "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", + "dependencies": { + "@stoplight/elements-core": "~7.7.17", + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "file-saver": "^2.0.5", + "lodash": "^4.17.19", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0" + }, + "engines": { + "node": ">=14.13" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/elements-core": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", + "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", + "dependencies": { + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-ref-parser": "^9.0.5", + "@stoplight/json-schema-sampler": "0.2.3", + "@stoplight/json-schema-viewer": "^4.9.0", + "@stoplight/markdown-viewer": "^5.6.0", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/mosaic-code-editor": "^1.33.0", + "@stoplight/mosaic-code-viewer": "^1.33.0", + "@stoplight/path": "^1.3.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "httpsnippet-lite": "^3.0.1", + "jotai": "1.3.9", + "json-schema": "^0.4.0", + "lodash": "^4.17.19", + "nanoid": "^3.1.32", + "prop-types": "^15.7.2", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0", + "react-router-hash-link": "^2.1.0", + "tslib": "^2.1.0", + "urijs": "^1.19.11", + "util": "^0.12.4", + "xml-formatter": "^2.6.1" + }, + "engines": { + "node": ">=14.13" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/http-spec": { + "version": "5.9.4", + "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", + "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", + "dependencies": { + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-generator": "1.0.2", + "@stoplight/types": "^13.15.0", + "@types/json-schema": "7.0.11", + "@types/swagger-schema-official": "~2.0.22", + "@types/type-is": "^1.6.3", + "fnv-plus": "^1.3.1", + "lodash.isequalwith": "^4.4.0", + "lodash.pick": "^4.4.0", + "lodash.pickby": "^4.6.0", + "openapi3-ts": "^2.0.2", + "postman-collection": "^4.1.2", + "tslib": "^2.3.1", + "type-is": "^1.6.18" + }, + "engines": { + "node": ">=14.13" + } + }, + "node_modules/@stoplight/json": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", + "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", + "dependencies": { + "@stoplight/ordered-object-literal": "^1.0.3", + "@stoplight/path": "^1.3.2", + "@stoplight/types": "^13.6.0", + "jsonc-parser": "~2.2.1", + "lodash": "^4.17.21", + "safe-stable-stringify": "^1.1" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/@stoplight/json-schema-generator": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", + "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", + "dependencies": { + "cross-fetch": "^3.1.5", + "json-promise": "1.1.x", + "minimist": "1.2.6", + "mkdirp": "0.5.x", + "pretty-data": "0.40.x" + }, + "bin": { + "json-schema-generator": "bin/cli.js" + } + }, + "node_modules/@stoplight/json-schema-generator/node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/@stoplight/json-schema-merge-allof": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", + "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", + "dependencies": { + "compute-lcm": "^1.1.0", + "json-schema-compare": "^0.2.2", + "lodash": "^4.17.4" + } + }, + "node_modules/@stoplight/json-schema-ref-parser": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", + "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", + "dependencies": { + "@jsdevtools/ono": "^7.1.3", + "@stoplight/path": "^1.3.2", + "@stoplight/yaml": "^4.0.2", + "call-me-maybe": "^1.0.1", + "fastestsmallesttextencoderdecoder": "^1.0.22", + "isomorphic-fetch": "^3.0.0", + "node-abort-controller": "^3.0.1" + } + }, + "node_modules/@stoplight/json-schema-sampler": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", + "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", + "dependencies": { + "@types/json-schema": "^7.0.7", + "json-pointer": "^0.6.1" + } + }, + "node_modules/@stoplight/json-schema-tree": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", + "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", + "dependencies": { + "@stoplight/json": "^3.12.0", + "@stoplight/json-schema-merge-allof": "^0.7.8", + "@stoplight/lifecycle": "^2.3.2", + "@types/json-schema": "^7.0.7", + "magic-error": "0.0.1" + }, + "engines": { + "node": ">=10.18" + } + }, + "node_modules/@stoplight/json-schema-viewer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", + "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", + "dependencies": { + "@stoplight/json": "^3.20.1", + "@stoplight/json-schema-tree": "^2.2.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@types/json-schema": "^7.0.7", + "classnames": "^2.2.6", + "fnv-plus": "^1.3.1", + "jotai": "^1.4.5", + "lodash": "^4.17.19" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@stoplight/markdown-viewer": "^5", + "@stoplight/mosaic": "^1.32", + "@stoplight/mosaic-code-viewer": "^1.32", + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/json-schema-viewer/node_modules/jotai": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", + "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", + "engines": { + "node": ">=12.20.0" + }, + "peerDependencies": { + "@babel/core": "*", + "@babel/template": "*", + "jotai-devtools": "*", + "jotai-immer": "*", + "jotai-optics": "*", + "jotai-redux": "*", + "jotai-tanstack-query": "*", + "jotai-urql": "*", + "jotai-valtio": "*", + "jotai-xstate": "*", + "jotai-zustand": "*", + "react": ">=16.8" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@babel/template": { + "optional": true + }, + "jotai-devtools": { + "optional": true + }, + "jotai-immer": { + "optional": true + }, + "jotai-optics": { + "optional": true + }, + "jotai-redux": { + "optional": true + }, + "jotai-tanstack-query": { + "optional": true + }, + "jotai-urql": { + "optional": true + }, + "jotai-valtio": { + "optional": true + }, + "jotai-xstate": { + "optional": true + }, + "jotai-zustand": { + "optional": true + } + } + }, + "node_modules/@stoplight/json/node_modules/jsonc-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", + "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" + }, + "node_modules/@stoplight/lifecycle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", + "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", + "dependencies": { + "tslib": "^2.3.1", + "wolfy87-eventemitter": "~5.2.8" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/@stoplight/markdown": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", + "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", + "dependencies": { + "@stoplight/types": "^12.3.0", + "@stoplight/yaml": "^4.2.2", + "github-slugger": "^1.3.0", + "hast-util-whitespace": "^2.0.0", + "lodash": "^4.17.21", + "mdast-util-to-string": "^3.1.0", + "remark-frontmatter": "^3.0.0", + "remark-gfm": "^1.0.0", + "remark-parse": "^9.0.0", + "remark-stringify": "^9.0.1", + "tslib": "^2.3.0", + "unified": "^9.2.1", + "unist-util-select": "^4.0.0", + "unist-util-visit": "^3.1.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/markdown-viewer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", + "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", + "dependencies": { + "@rehooks/component-size": "^1.0.3", + "@stoplight/markdown": "^3.1.3", + "@stoplight/react-error-boundary": "^2.0.0", + "deepmerge": "^4.2.2", + "hast-to-hyperscript": "^10.0.1", + "hast-util-raw": "7.0.0", + "hast-util-sanitize": "^4.0.0", + "hastscript": "^7.0.2", + "mdast-util-to-hast": "^11.1.1", + "remark-parse": "^9.0.0", + "unified": "^9.2.1", + "unist-builder": "^3.0.0", + "unist-util-select": "^4.0.1", + "unist-util-visit": "^3.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "@stoplight/mosaic": "^1.24.4", + "@stoplight/mosaic-code-viewer": "^1.24.4", + "react": ">=16.14", + "react-dom": ">=16.14" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" + }, + "node_modules/@stoplight/markdown-viewer/node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-to-hyperscript": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", + "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.1", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", + "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/unist": "^2.0.0", + "hastscript": "^7.0.0", + "property-information": "^6.0.0", + "vfile": "^5.0.0", + "vfile-location": "^4.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-from-parse5/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-parse-selector": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", + "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", + "dependencies": { + "@types/hast": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-raw": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", + "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/parse5": "^6.0.0", + "@types/unist": "^2.0.3", + "hast-util-from-parse5": "^7.0.0", + "hast-util-to-parse5": "^7.0.0", + "html-void-elements": "^2.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hast-util-to-parse5": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", + "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/hastscript": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", + "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^3.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", + "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "@types/mdurl": "^1.0.0", + "mdast-util-definitions": "^5.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/mdast-util-to-hast/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/@stoplight/markdown-viewer/node_modules/property-information": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", + "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dependencies": { + "mdast-util-from-markdown": "^0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/style-to-object": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", + "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-builder": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", + "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", + "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", + "dependencies": { + "@types/unist": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/vfile-location/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown-viewer/node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/@stoplight/markdown/node_modules/@stoplight/types": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", + "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/markdown/node_modules/mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", + "dependencies": { + "@types/mdast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dependencies": { + "mdast-util-from-markdown": "^0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/markdown/node_modules/unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@stoplight/mosaic": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", + "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/button": "3.4.1", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@react-types/textfield": "3.3.0", + "@stoplight/types": "^13.7.0", + "@types/react": "^17.0.3", + "@types/react-dom": "^17.0.3", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "peerDependencies": { + "react": ">= 16.14" + } + }, + "node_modules/@stoplight/mosaic-code-editor": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", + "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/mosaic-code-viewer": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "peerDependencies": { + "react": ">= 16.14" + } + }, + "node_modules/@stoplight/mosaic-code-editor/node_modules/use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1" + }, + "peerDependencies": { + "react": "16.8.0 - 18", + "react-dom": "16.8.0 - 18" + } + }, + "node_modules/@stoplight/mosaic-code-viewer": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", + "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "peerDependencies": { + "react": ">= 16.14" + } + }, + "node_modules/@stoplight/mosaic-code-viewer/node_modules/use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1" + }, + "peerDependencies": { + "react": "16.8.0 - 18", + "react-dom": "16.8.0 - 18" + } + }, + "node_modules/@stoplight/mosaic/node_modules/use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "dependencies": { + "@juggle/resize-observer": "^3.3.1" + }, + "peerDependencies": { + "react": "16.8.0 - 18", + "react-dom": "16.8.0 - 18" + } + }, + "node_modules/@stoplight/ordered-object-literal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", + "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/path": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", + "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/react-error-boundary": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", + "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", + "dependencies": { + "@sentry/react": "^6.13.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@stoplight/types": { + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", + "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@stoplight/yaml": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", + "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", + "dependencies": { + "@stoplight/ordered-object-literal": "^1.0.1", + "@stoplight/types": "^13.0.0", + "@stoplight/yaml-ast-parser": "0.0.48", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=10.8" + } + }, + "node_modules/@stoplight/yaml-ast-parser": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", + "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" + }, + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", + "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", + "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", + "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", + "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", + "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", + "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", + "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-svg-component": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", + "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-preset": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", + "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", + "dependencies": { + "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", + "@svgr/babel-plugin-remove-jsx-attribute": "*", + "@svgr/babel-plugin-remove-jsx-empty-expression": "*", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", + "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", + "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", + "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", + "@svgr/babel-plugin-transform-svg-component": "^6.5.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/core": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", + "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "dependencies": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/hast-util-to-babel-ast": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", + "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", + "dependencies": { + "@babel/types": "^7.20.0", + "entities": "^4.4.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/plugin-jsx": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", + "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", + "dependencies": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/hast-util-to-babel-ast": "^6.5.1", + "svg-parser": "^2.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "^6.0.0" + } + }, + "node_modules/@svgr/plugin-svgo": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", + "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", + "dependencies": { + "cosmiconfig": "^7.0.1", + "deepmerge": "^4.2.2", + "svgo": "^2.8.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" + } + }, + "node_modules/@svgr/webpack": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", + "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", + "dependencies": { + "@babel/core": "^7.19.6", + "@babel/plugin-transform-react-constant-elements": "^7.18.12", + "@babel/preset-env": "^7.19.4", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@svgr/core": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "@svgr/plugin-svgo": "^6.5.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@swc/core": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", + "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", + "dev": true, + "hasInstallScript": true, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.3.37", + "@swc/core-darwin-x64": "1.3.37", + "@swc/core-linux-arm-gnueabihf": "1.3.37", + "@swc/core-linux-arm64-gnu": "1.3.37", + "@swc/core-linux-arm64-musl": "1.3.37", + "@swc/core-linux-x64-gnu": "1.3.37", + "@swc/core-linux-x64-musl": "1.3.37", + "@swc/core-win32-arm64-msvc": "1.3.37", + "@swc/core-win32-ia32-msvc": "1.3.37", + "@swc/core-win32-x64-msvc": "1.3.37" + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", + "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", + "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", + "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", + "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", + "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", + "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", + "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", + "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", + "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", + "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/jest": { + "version": "0.2.24", + "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", + "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", + "dev": true, + "dependencies": { + "@jest/create-cache-key-function": "^27.4.2", + "jsonc-parser": "^3.2.0" + }, + "engines": { + "npm": ">= 7.0.0" + }, + "peerDependencies": { + "@swc/core": "*" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@testing-library/dom": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", + "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@testing-library/jest-dom": { + "version": "5.16.5", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", + "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", + "dev": true, + "dependencies": { + "@adobe/css-tools": "^4.0.1", + "@babel/runtime": "^7.9.2", + "@types/testing-library__jest-dom": "^5.9.1", + "aria-query": "^5.0.0", + "chalk": "^3.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.5.6", + "lodash": "^4.17.15", + "redent": "^3.0.0" + }, + "engines": { + "node": ">=8", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/@testing-library/jest-dom/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/@testing-library/react": { + "version": "12.1.5", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", + "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^8.0.0", + "@types/react-dom": "<18.0.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "react": "<18.0.0", + "react-dom": "<18.0.0" + } + }, + "node_modules/@testing-library/react/node_modules/@testing-library/dom": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", + "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@testing-library/user-event": { + "version": "13.5.0", + "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", + "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.12.5" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + }, + "peerDependencies": { + "@testing-library/dom": ">=7.21.4" + } + }, + "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/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@types/aria-query": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", + "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "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.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/d3": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", + "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", + "optional": true, + "dependencies": { + "@types/d3-array": "*", + "@types/d3-axis": "*", + "@types/d3-brush": "*", + "@types/d3-chord": "*", + "@types/d3-color": "*", + "@types/d3-contour": "*", + "@types/d3-delaunay": "*", + "@types/d3-dispatch": "*", + "@types/d3-drag": "*", + "@types/d3-dsv": "*", + "@types/d3-ease": "*", + "@types/d3-fetch": "*", + "@types/d3-force": "*", + "@types/d3-format": "*", + "@types/d3-geo": "*", + "@types/d3-hierarchy": "*", + "@types/d3-interpolate": "*", + "@types/d3-path": "*", + "@types/d3-polygon": "*", + "@types/d3-quadtree": "*", + "@types/d3-random": "*", + "@types/d3-scale": "*", + "@types/d3-scale-chromatic": "*", + "@types/d3-selection": "*", + "@types/d3-shape": "*", + "@types/d3-time": "*", + "@types/d3-time-format": "*", + "@types/d3-timer": "*", + "@types/d3-transition": "*", + "@types/d3-zoom": "*" + } + }, + "node_modules/@types/d3-array": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", + "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", + "optional": true + }, + "node_modules/@types/d3-axis": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", + "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-brush": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", + "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-chord": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", + "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", + "optional": true + }, + "node_modules/@types/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", + "optional": true + }, + "node_modules/@types/d3-contour": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", + "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", + "optional": true, + "dependencies": { + "@types/d3-array": "*", + "@types/geojson": "*" + } + }, + "node_modules/@types/d3-delaunay": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", + "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", + "optional": true + }, + "node_modules/@types/d3-dispatch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", + "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", + "optional": true + }, + "node_modules/@types/d3-drag": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", + "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-dsv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", + "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", + "optional": true + }, + "node_modules/@types/d3-ease": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", + "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", + "optional": true + }, + "node_modules/@types/d3-fetch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", + "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", + "optional": true, + "dependencies": { + "@types/d3-dsv": "*" + } + }, + "node_modules/@types/d3-force": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", + "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", + "optional": true + }, + "node_modules/@types/d3-format": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", + "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", + "optional": true + }, + "node_modules/@types/d3-geo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", + "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", + "optional": true, + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/d3-hierarchy": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", + "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", + "optional": true + }, + "node_modules/@types/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", + "optional": true, + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@types/d3-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", + "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", + "optional": true + }, + "node_modules/@types/d3-polygon": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", + "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", + "optional": true + }, + "node_modules/@types/d3-quadtree": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", + "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", + "optional": true + }, + "node_modules/@types/d3-random": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", + "optional": true + }, + "node_modules/@types/d3-scale": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", + "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", + "optional": true, + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-scale-chromatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", + "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", + "optional": true + }, + "node_modules/@types/d3-selection": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", + "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", + "optional": true + }, + "node_modules/@types/d3-shape": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", + "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", + "optional": true, + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@types/d3-time": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", + "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", + "optional": true + }, + "node_modules/@types/d3-time-format": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", + "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", + "optional": true + }, + "node_modules/@types/d3-timer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", + "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", + "optional": true + }, + "node_modules/@types/d3-transition": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", + "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", + "optional": true, + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-zoom": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", + "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", + "optional": true, + "dependencies": { + "@types/d3-interpolate": "*", + "@types/d3-selection": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.21.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", + "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" + }, + "node_modules/@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/geojson": { + "version": "7946.0.10", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", + "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", + "optional": true + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/har-format": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", + "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" + }, + "node_modules/@types/hast": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/history": { + "version": "4.7.11", + "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", + "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" + }, + "node_modules/@types/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.10", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", + "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "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==", + "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==", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.4.0", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", + "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", + "dev": true, + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/jest/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/@types/jest/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@types/js-cookie": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", + "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "node_modules/@types/katex": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", + "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" + }, + "node_modules/@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + }, + "node_modules/@types/node": { + "version": "18.14.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", + "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" + }, + "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/parse5": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" + }, + "node_modules/@types/prettier": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "dev": true + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/react": { + "version": "17.0.53", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", + "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "17.0.19", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", + "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", + "dependencies": { + "@types/react": "^17" + } + }, + "node_modules/@types/react-router": { + "version": "5.1.20", + "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", + "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "node_modules/@types/react-router-config": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", + "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "node_modules/@types/react-router-dom": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", + "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "node_modules/@types/resize-observer-browser": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", + "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", + "optional": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + }, + "node_modules/@types/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", + "dependencies": { + "@types/node": "*" + } + }, + "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/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "node_modules/@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", + "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", + "dev": true + }, + "node_modules/@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", + "dev": true + }, + "node_modules/@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "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/swagger-schema-official": { + "version": "2.0.22", + "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", + "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" + }, + "node_modules/@types/tapable": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", + "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", + "dev": true + }, + "node_modules/@types/testing-library__jest-dom": { + "version": "5.14.5", + "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", + "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", + "dev": true, + "dependencies": { + "@types/jest": "*" + } + }, + "node_modules/@types/type-is": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", + "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/uglify-js": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", + "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", + "dev": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "node_modules/@types/webpack": { + "version": "4.41.33", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", + "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "anymatch": "^3.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/@types/webpack-sources": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", + "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + } + }, + "node_modules/@types/webpack-sources/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@types/ws": { + "version": "8.5.4", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", + "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "node_modules/@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", + "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/type-utils": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", + "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", + "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", + "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", + "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", + "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", + "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", + "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.54.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "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==", + "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==" + }, + "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==" + }, + "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==" + }, + "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==", + "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==" + }, + "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==", + "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==", + "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==", + "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==" + }, + "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==", + "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==", + "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==", + "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==", + "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==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xobotyi/scrollbar-width": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", + "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" + }, + "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==" + }, + "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==" + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "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-globals/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-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "peerDependencies": { + "acorn": "^8" + } + }, + "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==", + "devOptional": 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/address": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "engines": { + "node": ">= 10.0.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/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/ajv-formats/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==" + }, + "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==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/algoliasearch": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", + "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.16.0", + "@algolia/cache-common": "4.16.0", + "@algolia/cache-in-memory": "4.16.0", + "@algolia/client-account": "4.16.0", + "@algolia/client-analytics": "4.16.0", + "@algolia/client-common": "4.16.0", + "@algolia/client-personalization": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/logger-console": "4.16.0", + "@algolia/requester-browser-xhr": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/requester-node-http": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "node_modules/algoliasearch-helper": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", + "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", + "dependencies": { + "@algolia/events": "^4.0.1" + }, + "peerDependencies": { + "algoliasearch": ">= 3.1 < 6" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-align/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==" + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "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-escapes/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/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "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==", + "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.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "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/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/aria-query": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", + "dev": true, + "dependencies": { + "deep-equal": "^2.0.5" + } + }, + "node_modules/array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dev": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "dependencies": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "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/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", + "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", + "dev": true + }, + "node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dependencies": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "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.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", + "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@mdx-js/util": "1.6.22" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@babel/core": "^7.11.6" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "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==", + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-extract-import-names": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", + "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "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": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "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-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-styled-components": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", + "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + }, + "peerDependencies": { + "styled-components": ">= 2" + } + }, + "node_modules/babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" + }, + "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.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^27.5.1", + "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/bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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==" + }, + "node_modules/base16": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", + "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" + }, + "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/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dev": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "engines": { + "node": ">=0.6" + } + }, + "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==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/blob-util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", + "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", + "dev": true + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/bonjour-service": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", + "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", + "dependencies": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/boxen": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", + "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", + "dependencies": { + "ansi-align": "^3.0.1", + "camelcase": "^6.2.0", + "chalk": "^4.1.2", + "cli-boxes": "^3.0.0", + "string-width": "^5.0.1", + "type-fest": "^2.5.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "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==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/broadcast-channel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", + "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "detect-node": "^2.1.0", + "js-sha3": "0.8.0", + "microseconds": "0.2.0", + "nano-time": "1.0.0", + "oblivious-set": "1.0.0", + "rimraf": "3.0.2", + "unload": "2.2.0" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "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/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "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-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cachedir": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", + "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "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/call-me-maybe": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", + "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" + }, + "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/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001470", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", + "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "dev": true + }, + "node_modules/ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/charset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", + "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/check-more-types": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", + "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "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==", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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/classcat": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", + "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", + "optional": true + }, + "node_modules/classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "node_modules/clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-boxes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cli-table3/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==" + }, + "node_modules/cli-table3/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate/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/cli-truncate/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/cliui/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/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/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/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==", + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-deep/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==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collapse-white-space": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dependencies": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + }, + "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==", + "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==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color/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/color/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" + }, + "node_modules/colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" + }, + "node_modules/combine-promises": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", + "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==", + "engines": { + "node": ">=10" + } + }, + "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==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/comma-separated-tokens": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", + "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/compression/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/compute-gcd": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", + "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", + "dependencies": { + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "node_modules/compute-lcm": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", + "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", + "dependencies": { + "compute-gcd": "^1.2.1", + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "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/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/copy-text-to-clipboard": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", + "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-to-clipboard": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", + "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", + "dependencies": { + "toggle-selection": "^1.0.6" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/copy-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/globby": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin/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==" + }, + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/copy-webpack-plugin/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/core-js": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", + "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", + "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", + "dependencies": { + "browserslist": "^4.21.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-pure": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", + "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==", + "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": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dependencies": { + "node-fetch": "2.6.7" + } + }, + "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==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/css-declaration-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/css-in-js-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", + "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", + "dependencies": { + "hyphenate-style-name": "^1.0.3" + } + }, + "node_modules/css-loader": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", + "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/css-loader/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/css-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/css-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/css-loader/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/css-loader/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-loader/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/css-minimizer-webpack-plugin": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", + "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", + "dependencies": { + "cssnano": "^5.1.8", + "jest-worker": "^29.1.2", + "postcss": "^8.4.17", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@parcel/css": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "lightningcss": { + "optional": true + } + } + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/css-minimizer-webpack-plugin/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==" + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-selector-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", + "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" + }, + "node_modules/css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "dev": true + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "dependencies": { + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-preset-advanced": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", + "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", + "dependencies": { + "autoprefixer": "^10.4.12", + "cssnano-preset-default": "^5.2.14", + "postcss-discard-unused": "^5.1.0", + "postcss-merge-idents": "^5.1.1", + "postcss-reduce-idents": "^5.2.0", + "postcss-zindex": "^5.1.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "dependencies": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "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.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "node_modules/cypress": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", + "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@cypress/request": "^2.88.10", + "@cypress/xvfb": "^1.2.4", + "@types/node": "^14.14.31", + "@types/sinonjs__fake-timers": "8.1.1", + "@types/sizzle": "^2.3.2", + "arch": "^2.2.0", + "blob-util": "^2.0.2", + "bluebird": "^3.7.2", + "buffer": "^5.6.0", + "cachedir": "^2.3.0", + "chalk": "^4.1.0", + "check-more-types": "^2.24.0", + "cli-cursor": "^3.1.0", + "cli-table3": "~0.6.1", + "commander": "^5.1.0", + "common-tags": "^1.8.0", + "dayjs": "^1.10.4", + "debug": "^4.3.4", + "enquirer": "^2.3.6", + "eventemitter2": "6.4.7", + "execa": "4.1.0", + "executable": "^4.1.1", + "extract-zip": "2.0.1", + "figures": "^3.2.0", + "fs-extra": "^9.1.0", + "getos": "^3.2.1", + "is-ci": "^3.0.0", + "is-installed-globally": "~0.4.0", + "lazy-ass": "^1.6.0", + "listr2": "^3.8.3", + "lodash": "^4.17.21", + "log-symbols": "^4.0.0", + "minimist": "^1.2.6", + "ospath": "^1.2.2", + "pretty-bytes": "^5.6.0", + "proxy-from-env": "1.0.0", + "request-progress": "^3.0.0", + "semver": "^7.3.2", + "supports-color": "^8.1.1", + "tmp": "~0.2.1", + "untildify": "^4.0.0", + "yauzl": "^2.10.0" + }, + "bin": { + "cypress": "bin/cypress" + }, + "engines": { + "node": "^14.0.0 || ^16.0.0 || >=18.0.0" + } + }, + "node_modules/cypress/node_modules/@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", + "dev": true + }, + "node_modules/cypress/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/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-dispatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-drag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", + "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", + "optional": true, + "dependencies": { + "d3-dispatch": "1 - 3", + "d3-selection": "3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "optional": true, + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-selection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", + "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "optional": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-transition": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", + "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "optional": true, + "dependencies": { + "d3-color": "1 - 3", + "d3-dispatch": "1 - 3", + "d3-ease": "1 - 3", + "d3-interpolate": "1 - 3", + "d3-timer": "1 - 3" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "d3-selection": "2 - 3" + } + }, + "node_modules/d3-zoom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", + "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", + "optional": true, + "dependencies": { + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "2 - 3", + "d3-transition": "2 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dagre": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", + "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", + "optional": true, + "dependencies": { + "graphlib": "^2.1.8", + "lodash": "^4.17.15" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "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/dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/decko": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", + "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" + }, + "node_modules/decode-uri-component": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", + "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==", + "engines": { + "node": ">=14.16" + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-equal": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", + "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-get-iterator": "^1.1.2", + "get-intrinsic": "^1.1.3", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.1", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "devOptional": true + }, + "node_modules/deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/default-gateway/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "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/default-gateway/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-gateway/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==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detab": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", + "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", + "dependencies": { + "repeat-string": "^1.5.4" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", + "engines": { + "node": ">=8" + } + }, + "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/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "node_modules/detect-port": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", + "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", + "dependencies": { + "address": "^1.0.1", + "debug": "4" + }, + "bin": { + "detect": "bin/detect-port.js", + "detect-port": "bin/detect-port.js" + } + }, + "node_modules/detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "dependencies": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "bin": { + "detect": "bin/detect-port", + "detect-port": "bin/detect-port" + }, + "engines": { + "node": ">= 4.2.1" + } + }, + "node_modules/detect-port-alt/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/detect-port-alt/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/diff-sequences": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", + "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" + }, + "node_modules/dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "devOptional": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true + }, + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dependencies": { + "utila": "~0.4" + } + }, + "node_modules/dom-helpers": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", + "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", + "dependencies": { + "@babel/runtime": "^7.1.2" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/dom7": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", + "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", + "dependencies": { + "ssr-window": "^4.0.0" + } + }, + "node_modules/domain-browser": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", + "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "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/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/dompurify": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", + "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" + }, + "node_modules/domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dot-prop/node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dev": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.315", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", + "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "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==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/emoticon": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", + "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "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/entities": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "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/error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/es-abstract": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", + "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.4", + "is-array-buffer": "^3.0.1", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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==", + "dev": true, + "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/es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" + }, + "node_modules/es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "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.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "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": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true, + "engines": { + "node": ">= 0.8.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": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", + "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", + "devOptional": true, + "dependencies": { + "@eslint/eslintrc": "^2.0.0", + "@eslint/js": "8.35.0", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", + "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-markdown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", + "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", + "dev": true, + "dependencies": { + "mdast-util-from-markdown": "^0.8.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "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==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "devOptional": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/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==", + "devOptional": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "devOptional": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "devOptional": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "devOptional": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "devOptional": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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==", + "devOptional": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "devOptional": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "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==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "devOptional": true, + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "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==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "devOptional": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": 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==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "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==", + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eta": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", + "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==", + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "url": "https://github.com/eta-dev/eta?sponsor=1" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eval": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", + "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", + "dependencies": { + "@types/node": "*", + "require-like": ">= 0.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/eventemitter2": { + "version": "6.4.7", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", + "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/executable": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", + "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", + "dev": true, + "dependencies": { + "pify": "^2.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/expect": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", + "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.4.3", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.4.3", + "jest-message-util": "^29.4.3", + "jest-util": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/express/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/express/node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/express/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "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==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "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==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "devOptional": true + }, + "node_modules/fast-loops": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", + "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "node_modules/fast-shallow-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", + "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" + }, + "node_modules/fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", + "dependencies": { + "punycode": "^1.3.2" + } + }, + "node_modules/fast-url-parser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, + "node_modules/fastest-stable-stringify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", + "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" + }, + "node_modules/fastestsmallesttextencoderdecoder": { + "version": "1.0.22", + "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", + "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fault": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", + "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/fbemitter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", + "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", + "dependencies": { + "fbjs": "^3.0.0" + } + }, + "node_modules/fbjs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", + "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", + "dependencies": { + "cross-fetch": "^3.1.5", + "fbjs-css-vars": "^1.0.0", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^0.7.30" + } + }, + "node_modules/fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/feed": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", + "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", + "dependencies": { + "xml-js": "^1.6.11" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "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==", + "devOptional": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/file-loader/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==", + "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/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/file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", + "engines": { + "node": ">= 0.4.0" + } + }, + "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==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/filter-obj": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", + "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "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-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "devOptional": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "devOptional": true + }, + "node_modules/flux": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", + "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", + "dependencies": { + "fbemitter": "^3.0.0", + "fbjs": "^3.0.1" + }, + "peerDependencies": { + "react": "^15.0.2 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/fnv-plus": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", + "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/foreach": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", + "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/fork-ts-checker-webpack-plugin": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", + "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", + "dependencies": { + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=10", + "yarn": ">=1.0.0" + }, + "peerDependencies": { + "eslint": ">= 6", + "typescript": ">= 2.7", + "vue-template-compiler": "*", + "webpack": ">= 4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin/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/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/formdata-node": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", + "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", + "dependencies": { + "node-domexception": "1.0.0", + "web-streams-polyfill": "4.0.0-beta.3" + }, + "engines": { + "node": ">= 12.20" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", + "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fscreen": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", + "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "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.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "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==", + "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.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "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": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/getos": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", + "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", + "dev": true, + "dependencies": { + "async": "^3.2.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" + }, + "node_modules/github-slugger": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", + "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "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==", + "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==" + }, + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "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==", + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/got/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/got/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "devOptional": true + }, + "node_modules/graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", + "optional": true, + "dependencies": { + "lodash": "^4.17.15" + } + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/gray-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/gray-matter/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==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "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.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hast-to-hyperscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", + "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "dependencies": { + "@types/unist": "^2.0.3", + "comma-separated-tokens": "^1.0.0", + "property-information": "^5.3.0", + "space-separated-tokens": "^1.0.0", + "style-to-object": "^0.3.0", + "unist-util-is": "^4.0.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-from-parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", + "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "dependencies": { + "@types/parse5": "^5.0.0", + "hastscript": "^6.0.0", + "property-information": "^5.0.0", + "vfile": "^4.0.0", + "vfile-location": "^3.2.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", + "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", + "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", + "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", + "dependencies": { + "@types/hast": "^2.0.0", + "hast-util-from-parse5": "^6.0.0", + "hast-util-to-parse5": "^6.0.0", + "html-void-elements": "^1.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/hast-util-sanitize": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", + "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", + "dependencies": { + "@types/hast": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-parse5": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", + "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "dependencies": { + "hast-to-hyperscript": "^9.0.0", + "property-information": "^5.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-text": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", + "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", + "dependencies": { + "hast-util-is-element": "^1.0.0", + "repeat-string": "^1.0.0", + "unist-util-find-after": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", + "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/history": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", + "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", + "dependencies": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^3.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^1.0.1" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "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/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "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/hpack.js/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/hpack.js/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/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-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" + }, + "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/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/html-void-elements": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", + "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/html-webpack-plugin": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "dependencies": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "webpack": "^5.20.0" + } + }, + "node_modules/html-webpack-plugin-4": { + "name": "html-webpack-plugin", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", + "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", + "dev": true, + "dependencies": { + "@types/html-minifier-terser": "^5.0.0", + "@types/tapable": "^1.0.5", + "@types/webpack": "^4.41.8", + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.20", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" + }, + "engines": { + "node": ">=6.9" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/@types/html-minifier-terser": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", + "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", + "dev": true + }, + "node_modules/html-webpack-plugin-4/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "dependencies": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/pretty-error": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "dev": true, + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/renderkid": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "dev": true, + "dependencies": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dev": true, + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/html-webpack-plugin-4/node_modules/terser/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/html-webpack-plugin-5": { + "name": "html-webpack-plugin", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "dev": true, + "dependencies": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "webpack": "^5.20.0" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "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/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/http-reasons": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", + "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" + }, + "node_modules/http-signature": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", + "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^2.0.2", + "sshpk": "^1.14.1" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/http2-client": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", + "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/httpsnippet-lite": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", + "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", + "dependencies": { + "@types/har-format": "^1.2.10", + "formdata-node": "^4.4.1", + "stringify-object": "3.3.0" + }, + "engines": { + "node": ">=14.13" + } + }, + "node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true, + "bin": { + "husky": "lib/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/hyphenate-style-name": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", + "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" + }, + "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==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/icss-utils/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/icss-utils/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "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": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", + "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/immer": { + "version": "9.0.19", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", + "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "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-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "engines": { + "node": ">=4" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/infima": { + "version": "0.2.0-alpha.42", + "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", + "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==", + "engines": { + "node": ">=12" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "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/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "node_modules/inline-style-prefixer": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", + "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", + "dependencies": { + "css-in-js-utils": "^3.1.0", + "fast-loops": "^1.1.3" + } + }, + "node_modules/internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dependencies": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dev": true, + "dependencies": { + "ci-info": "^3.2.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "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==", + "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-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "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-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "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==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-word-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/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/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.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "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.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "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-changed-files/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/jest-changed-files/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/jest-changed-files/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/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-circus/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "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-cli/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "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-config/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-config/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", + "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/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/jest-diff/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "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.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", + "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-haste-map/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-haste-map/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-haste-map/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/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-jasmine2/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", + "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/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/jest-matcher-utils/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", + "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.4.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.4.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-message-util/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/jest-message-util/node_modules/pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.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.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-runner/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-runner/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/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-runtime/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "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-snapshot/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", + "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", + "dependencies": { + "@jest/types": "^29.4.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "dependencies": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", + "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.4.3", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/joi": { + "version": "17.8.3", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", + "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", + "dependencies": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/jotai": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", + "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", + "engines": { + "node": ">=12.7.0" + }, + "peerDependencies": { + "@babel/core": "*", + "@babel/template": "*", + "@urql/core": "*", + "immer": "*", + "optics-ts": "*", + "react": ">=16.8", + "react-query": "*", + "valtio": "*", + "wonka": "*", + "xstate": "*" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@babel/template": { + "optional": true + }, + "@urql/core": { + "optional": true + }, + "immer": { + "optional": true + }, + "optics-ts": { + "optional": true + }, + "react-query": { + "optional": true + }, + "valtio": { + "optional": true + }, + "wonka": { + "optional": true + }, + "xstate": { + "optional": true + } + } + }, + "node_modules/js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" + }, + "node_modules/js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "devOptional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "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": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "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.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/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/jsdom/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/jsdom/node_modules/tough-cookie": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", + "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsdom/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" + }, + "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-pointer": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", + "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", + "dependencies": { + "foreach": "^2.0.4" + } + }, + "node_modules/json-promise": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", + "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", + "dependencies": { + "bluebird": "*" + } + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "node_modules/json-schema-compare": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", + "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", + "dependencies": { + "lodash": "^4.17.4" + } + }, + "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==" + }, + "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "devOptional": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsprim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", + "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "node_modules/katex": { + "version": "0.13.24", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", + "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], + "dependencies": { + "commander": "^8.0.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/katex/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "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==", + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lazy-ass": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", + "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", + "dev": true, + "engines": { + "node": "> 0.8" + } + }, + "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==", + "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==", + "devOptional": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/lint-staged": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", + "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", + "dev": true, + "dependencies": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.19", + "commander": "^9.4.1", + "debug": "^4.3.4", + "execa": "^6.1.0", + "lilconfig": "2.0.6", + "listr2": "^5.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.6.0", + "string-argv": "^0.3.1", + "yaml": "^2.1.3" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/lint-staged/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/lint-staged/node_modules/execa": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", + "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^3.0.1", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/lint-staged/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/lint-staged/node_modules/human-signals": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", + "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", + "dev": true, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/lint-staged/node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/listr2": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", + "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.19", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.8.0", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/lint-staged/node_modules/listr2/node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/listr2/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/lint-staged/node_modules/listr2/node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/listr2/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/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/lint-staged/node_modules/wrap-ansi/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/lint-staged/node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/yaml": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", + "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", + "dev": true, + "engines": { + "node": ">= 14" + } + }, + "node_modules/liquid-json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", + "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/listr2": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", + "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/listr2/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/listr2/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/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/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/local-pkg": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", + "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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.curry": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", + "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/lodash.flow": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", + "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lodash.isequalwith": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", + "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "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==", + "devOptional": true + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "dev": true + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "node_modules/lodash.pickby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", + "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/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/log-update/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/log-update/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" + }, + "node_modules/lz-string": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", + "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", + "dev": true, + "bin": { + "lz-string": "bin/bin.js" + } + }, + "node_modules/magic-error": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", + "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==", + "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==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/mark.js": { + "version": "8.11.1", + "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", + "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" + }, + "node_modules/markdown-escapes": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "dependencies": { + "repeat-string": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/marked": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", + "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/match-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", + "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "remove-accents": "0.4.2" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdast-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "dependencies": { + "unist-util-remove": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", + "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", + "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", + "dependencies": { + "escape-string-regexp": "^4.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-frontmatter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", + "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", + "dependencies": { + "micromark-extension-frontmatter": "^0.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", + "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", + "dependencies": { + "mdast-util-gfm-autolink-literal": "^0.1.0", + "mdast-util-gfm-strikethrough": "^0.2.0", + "mdast-util-gfm-table": "^0.1.0", + "mdast-util-gfm-task-list-item": "^0.1.0", + "mdast-util-to-markdown": "^0.6.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", + "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", + "dependencies": { + "ccount": "^1.0.0", + "mdast-util-find-and-replace": "^1.1.0", + "micromark": "^2.11.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", + "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", + "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", + "dependencies": { + "markdown-table": "^2.0.0", + "mdast-util-to-markdown": "~0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", + "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", + "dependencies": { + "mdast-util-to-markdown": "~0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", + "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^4.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", + "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", + "dependencies": { + "fs-monkey": "^1.0.3" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "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==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "node_modules/micromark-extension-frontmatter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", + "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", + "dependencies": { + "fault": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", + "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", + "dependencies": { + "micromark": "~2.11.0", + "micromark-extension-gfm-autolink-literal": "~0.5.0", + "micromark-extension-gfm-strikethrough": "~0.6.5", + "micromark-extension-gfm-table": "~0.4.0", + "micromark-extension-gfm-tagfilter": "~0.3.0", + "micromark-extension-gfm-task-list-item": "~0.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", + "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", + "dependencies": { + "micromark": "~2.11.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", + "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", + "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", + "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", + "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/microseconds": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", + "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-format": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", + "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", + "dependencies": { + "charset": "^1.0.0" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", + "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/mini-css-extract-plugin/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==" + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "node_modules/mobx": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", + "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mobx" + } + }, + "node_modules/mobx-react": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", + "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", + "dependencies": { + "mobx-react-lite": "^3.4.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mobx" + }, + "peerDependencies": { + "mobx": "^6.1.0", + "react": "^16.8.0 || ^17 || ^18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/mobx-react-lite": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", + "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mobx" + }, + "peerDependencies": { + "mobx": "^6.1.0", + "react": "^16.8.0 || ^17 || ^18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/monaco-editor": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", + "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", + "peer": true + }, + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "engines": { + "node": ">=10" + } + }, + "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==" + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/nano-memoize": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", + "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" + }, + "node_modules/nano-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", + "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", + "dependencies": { + "big-integer": "^1.6.16" + } + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "devOptional": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "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==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-abi": { + "version": "3.33.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", + "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", + "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" + }, + "node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "dependencies": { + "lodash": "^4.17.21" + } + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch-h2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", + "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", + "dependencies": { + "http2-client": "^1.2.5" + }, + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-polyfill-webpack-plugin": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", + "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", + "dependencies": { + "assert": "^2.0.0", + "browserify-zlib": "^0.2.0", + "buffer": "^6.0.3", + "console-browserify": "^1.2.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.12.0", + "domain-browser": "^4.19.0", + "events": "^3.3.0", + "filter-obj": "^2.0.2", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "punycode": "^2.1.1", + "querystring-es3": "^0.2.1", + "readable-stream": "^3.6.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.3.0", + "timers-browserify": "^2.0.12", + "tty-browserify": "^0.0.1", + "url": "^0.11.0", + "util": "^0.12.4", + "vm-browserify": "^1.1.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "webpack": ">=5" + } + }, + "node_modules/node-polyfill-webpack-plugin/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "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.2.1" + } + }, + "node_modules/node-readfiles": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", + "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", + "dependencies": { + "es6-promise": "^3.2.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + }, + "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==", + "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": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nwsapi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "dev": true + }, + "node_modules/oas-kit-common": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", + "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", + "dependencies": { + "fast-safe-stringify": "^2.0.7" + } + }, + "node_modules/oas-linter": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", + "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", + "dependencies": { + "@exodus/schemasafe": "^1.0.0-rc.2", + "should": "^13.2.1", + "yaml": "^1.10.0" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/oas-resolver": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", + "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", + "dependencies": { + "node-fetch-h2": "^2.3.0", + "oas-kit-common": "^1.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "bin": { + "resolve": "resolve.js" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/oas-resolver/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/oas-resolver/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==" + }, + "node_modules/oas-resolver/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver/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==", + "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/oas-resolver/node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/oas-resolver/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/oas-schema-walker": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", + "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==", + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/oas-validator": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", + "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", + "dependencies": { + "call-me-maybe": "^1.0.1", + "oas-kit-common": "^1.0.8", + "oas-linter": "^3.2.2", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "reftools": "^1.1.9", + "should": "^13.2.1", + "yaml": "^1.10.0" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "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.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "dev": true, + "dependencies": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/oblivious-set": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", + "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "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==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/openapi-sampler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", + "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", + "dependencies": { + "@types/json-schema": "^7.0.7", + "json-pointer": "0.6.2" + } + }, + "node_modules/openapi3-ts": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", + "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", + "dependencies": { + "yaml": "^1.10.2" + } + }, + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "bin": { + "opener": "bin/opener-bin.js" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "devOptional": 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/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, + "node_modules/ospath": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", + "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", + "dev": true + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "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/papaparse": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", + "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "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-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dependencies": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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/parse-numeric-range": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + }, + "node_modules/parse-srcset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", + "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "dependencies": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" + }, + "node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "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": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "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==", + "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-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/path-to-regexp/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "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/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "node_modules/perfect-scrollbar": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", + "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "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==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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/pkg-dir/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==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/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/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/polished": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", + "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", + "dependencies": { + "@babel/runtime": "^7.17.8" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-calc": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "dependencies": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-unused": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", + "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-loader": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", + "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-merge-idents": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", + "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", + "dependencies": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "dependencies": { + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "dependencies": { + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-extract-imports/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-extract-imports/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "dependencies": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-local-by-default/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-local-by-default/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-scope/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-scope/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "dependencies": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "node_modules/postcss-modules-values/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-modules-values/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "dependencies": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "dependencies": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-idents": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", + "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sort-media-queries": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", + "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", + "dependencies": { + "sort-css-media-queries": "2.1.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.4.16" + } + }, + "node_modules/postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/postcss-zindex": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", + "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postman-collection": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", + "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", + "dependencies": { + "@faker-js/faker": "5.5.3", + "file-type": "3.9.0", + "http-reasons": "0.1.0", + "iconv-lite": "0.6.3", + "liquid-json": "0.3.1", + "lodash": "4.17.21", + "mime-format": "2.0.1", + "mime-types": "2.1.35", + "postman-url-encoder": "3.0.5", + "semver": "7.3.8", + "uuid": "8.3.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postman-collection/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/postman-url-encoder": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", + "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prebuild-install": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", + "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "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==", + "devOptional": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/prettier": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", + "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", + "dev": true, + "peer": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==", + "engines": { + "node": "*" + } + }, + "node_modules/pretty-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", + "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^3.0.0" + } + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "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/pretty-format/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==", + "dev": true + }, + "node_modules/pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/prism-react-renderer": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", + "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", + "peerDependencies": { + "react": ">=0.14.9" + } + }, + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "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/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "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/property-information": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", + "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", + "dependencies": { + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-from-env": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", + "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", + "dev": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pure-color": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", + "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" + }, + "node_modules/qs": { + "version": "6.10.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", + "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/query-string": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", + "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", + "dependencies": { + "decode-uri-component": "^0.4.1", + "filter-obj": "^5.1.0", + "split-on-first": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/query-string/node_modules/filter-obj": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", + "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "dependencies": { + "inherits": "~2.0.3" + } + }, + "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==", + "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==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", + "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/raw-loader/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==", + "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/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "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/react-base16-styling": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", + "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", + "dependencies": { + "base16": "^1.0.0", + "lodash.curry": "^4.0.1", + "lodash.flow": "^3.3.0", + "pure-color": "^1.2.0" + } + }, + "node_modules/react-dev-utils": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", + "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", + "dependencies": { + "@babel/code-frame": "^7.16.0", + "address": "^1.1.2", + "browserslist": "^4.18.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "detect-port-alt": "^1.1.6", + "escape-string-regexp": "^4.0.0", + "filesize": "^8.0.6", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^6.5.0", + "global-modules": "^2.0.0", + "globby": "^11.0.4", + "gzip-size": "^6.0.0", + "immer": "^9.0.7", + "is-root": "^2.1.0", + "loader-utils": "^3.2.0", + "open": "^8.4.0", + "pkg-up": "^3.1.0", + "prompts": "^2.4.2", + "react-error-overlay": "^6.0.11", + "recursive-readdir": "^2.2.2", + "shell-quote": "^1.7.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/react-dev-utils/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/react-dev-utils/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/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==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/react-dev-utils/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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-error-overlay": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", + "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" + }, + "node_modules/react-fast-compare": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", + "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" + }, + "node_modules/react-flow-renderer": { + "version": "10.3.17", + "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", + "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", + "deprecated": "react-flow-renderer has been renamed to reactflow, please use this package from now on https://reactflow.dev/docs/guides/migrate-to-v11/", + "optional": true, + "dependencies": { + "@babel/runtime": "^7.18.9", + "@types/d3": "^7.4.0", + "@types/resize-observer-browser": "^0.1.7", + "classcat": "^5.0.3", + "d3-drag": "^3.0.0", + "d3-selection": "^3.0.0", + "d3-zoom": "^3.0.0", + "zustand": "^3.7.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "16 || 17 || 18", + "react-dom": "16 || 17 || 18" + } + }, + "node_modules/react-full-screen": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", + "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", + "dependencies": { + "fscreen": "^1.0.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">= 16.8.0" + } + }, + "node_modules/react-helmet-async": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", + "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "invariant": "^2.2.4", + "prop-types": "^15.7.2", + "react-fast-compare": "^3.2.0", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": "^16.6.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.6.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/react-json-view": { + "version": "1.21.3", + "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", + "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", + "dependencies": { + "flux": "^4.0.1", + "react-base16-styling": "^0.6.0", + "react-lifecycles-compat": "^3.0.4", + "react-textarea-autosize": "^8.3.2" + }, + "peerDependencies": { + "react": "^17.0.0 || ^16.3.0 || ^15.5.4", + "react-dom": "^17.0.0 || ^16.3.0 || ^15.5.4" + } + }, + "node_modules/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "node_modules/react-loadable": { + "name": "@docusaurus/react-loadable", + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "dependencies": { + "@types/react": "*", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": "*" + } + }, + "node_modules/react-loadable-ssr-addon-v5-slorber": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", + "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", + "dependencies": { + "@babel/runtime": "^7.10.3" + }, + "engines": { + "node": ">=10.13.0" + }, + "peerDependencies": { + "react-loadable": "*", + "webpack": ">=4.41.1 || 5.x" + } + }, + "node_modules/react-overflow-list": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", + "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", + "dependencies": { + "react-use": "^17.3.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">=16" + } + }, + "node_modules/react-overflow-list/node_modules/react-use": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", + "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", + "dependencies": { + "@types/js-cookie": "^2.2.6", + "@xobotyi/scrollbar-width": "^1.9.5", + "copy-to-clipboard": "^3.3.1", + "fast-deep-equal": "^3.1.3", + "fast-shallow-equal": "^1.0.0", + "js-cookie": "^2.2.1", + "nano-css": "^5.3.1", + "react-universal-interface": "^0.6.2", + "resize-observer-polyfill": "^1.5.1", + "screenfull": "^5.1.0", + "set-harmonic-interval": "^1.0.1", + "throttle-debounce": "^3.0.1", + "ts-easing": "^0.2.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-overflow-list/node_modules/react-use/node_modules/nano-css": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", + "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", + "dependencies": { + "css-tree": "^1.1.2", + "csstype": "^3.0.6", + "fastest-stable-stringify": "^2.0.2", + "inline-style-prefixer": "^6.0.0", + "rtl-css-js": "^1.14.0", + "sourcemap-codec": "^1.4.8", + "stacktrace-js": "^2.0.2", + "stylis": "^4.0.6" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/react-query": { + "version": "3.39.3", + "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", + "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "broadcast-channel": "^3.4.1", + "match-sorter": "^6.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/react-router": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", + "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "hoist-non-react-statics": "^3.1.0", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.2", + "react-is": "^16.6.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/react-router-config": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", + "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", + "dependencies": { + "@babel/runtime": "^7.1.2" + }, + "peerDependencies": { + "react": ">=15", + "react-router": ">=5" + } + }, + "node_modules/react-router-dom": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", + "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.3.4", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/react-router-hash-link": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", + "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">=15", + "react-router-dom": ">=4" + } + }, + "node_modules/react-router/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/react-tabs": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", + "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", + "dependencies": { + "clsx": "^1.1.0", + "prop-types": "^15.5.0" + }, + "peerDependencies": { + "react": "^16.3.0 || ^17.0.0-0" + } + }, + "node_modules/react-textarea-autosize": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", + "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", + "dependencies": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-tooltip": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", + "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", + "dependencies": { + "prop-types": "^15.8.1", + "uuid": "^7.0.3" + }, + "engines": { + "npm": ">=6.13" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-dom": ">=16.0.0" + } + }, + "node_modules/react-tooltip/node_modules/uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/react-universal-interface": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", + "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", + "peerDependencies": { + "react": "*", + "tslib": "*" + } + }, + "node_modules/react-waypoint": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", + "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "consolidated-events": "^1.1.0 || ^2.0.0", + "prop-types": "^15.0.0", + "react-is": "^17.0.1 || ^18.0.0" + }, + "peerDependencies": { + "react": "^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", + "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/recursive-readdir": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "dependencies": { + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/redoc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", + "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", + "dependencies": { + "@redocly/openapi-core": "^1.0.0-beta.104", + "classnames": "^2.3.1", + "decko": "^1.2.0", + "dompurify": "^2.2.8", + "eventemitter3": "^4.0.7", + "json-pointer": "^0.6.2", + "lunr": "^2.3.9", + "mark.js": "^8.11.1", + "marked": "^4.0.15", + "mobx-react": "^7.2.0", + "openapi-sampler": "^1.3.0", + "path-browserify": "^1.0.1", + "perfect-scrollbar": "^1.5.5", + "polished": "^4.1.3", + "prismjs": "^1.27.0", + "prop-types": "^15.7.2", + "react-tabs": "^3.2.2", + "slugify": "~1.4.7", + "stickyfill": "^1.1.1", + "style-loader": "^3.3.1", + "swagger2openapi": "^7.0.6", + "url-template": "^2.0.8" + }, + "engines": { + "node": ">=6.9", + "npm": ">=3.0.0" + }, + "peerDependencies": { + "core-js": "^3.1.4", + "mobx": "^6.0.4", + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0", + "styled-components": "^4.1.1 || ^5.1.1" + } + }, + "node_modules/redoc/node_modules/slugify": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", + "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/redoc/node_modules/style-loader": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", + "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/reftools": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", + "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==", + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "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==" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "node_modules/regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "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==", + "devOptional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", + "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "dependencies": { + "rc": "1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "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": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/rehype-katex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", + "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "dependencies": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.13.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-parse": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", + "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", + "dependencies": { + "hast-util-from-parse5": "^6.0.0", + "parse5": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-parse/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remark-emoji": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", + "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", + "dependencies": { + "emoticon": "^3.2.0", + "node-emoji": "^1.10.0", + "unist-util-visit": "^2.0.3" + } + }, + "node_modules/remark-footnotes": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", + "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-frontmatter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", + "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", + "dependencies": { + "mdast-util-frontmatter": "^0.2.0", + "micromark-extension-frontmatter": "^0.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-gfm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", + "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", + "dependencies": { + "mdast-util-gfm": "^0.1.0", + "micromark-extension-gfm": "^0.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-math": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", + "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", + "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@mdx-js/util": "1.6.22", + "is-alphabetical": "1.0.4", + "remark-parse": "8.0.3", + "unified": "9.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx/node_modules/@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/remark-mdx/node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/remark-mdx/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/remark-mdx/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/remark-mdx/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/remark-mdx/node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dependencies": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "dependencies": { + "mdast-squeeze-paragraphs": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", + "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remove-accents": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", + "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" + }, + "node_modules/renderkid": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", + "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", + "dependencies": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^6.0.1" + } + }, + "node_modules/renderkid/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/renderkid/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/request-progress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", + "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", + "dev": true, + "dependencies": { + "throttleit": "^1.0.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-like": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", + "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==", + "engines": { + "node": "*" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "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-cwd/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/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/resolve-pathname": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", + "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rtl-css-js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", + "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", + "dependencies": { + "@babel/runtime": "^7.1.2" + } + }, + "node_modules/rtl-detect": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", + "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" + }, + "node_modules/rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "dependencies": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "bin": { + "rtlcss": "bin/rtlcss.js" + } + }, + "node_modules/rtlcss/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/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==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/rtlcss/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "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/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "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/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-stable-stringify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", + "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" + }, + "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/sanitize-html": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", + "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", + "dependencies": { + "deepmerge": "^4.2.2", + "escape-string-regexp": "^4.0.0", + "htmlparser2": "^8.0.0", + "is-plain-object": "^5.0.0", + "parse-srcset": "^1.0.2", + "postcss": "^8.3.11" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "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==", + "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/screenfull": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", + "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==", + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "node_modules/selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "dependencies": { + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/send/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-handler": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", + "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", + "dependencies": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + } + }, + "node_modules/serve-handler/node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-harmonic-interval": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", + "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==", + "engines": { + "node": ">=6.9" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "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==", + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "node_modules/sharp": { + "version": "0.30.7", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", + "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", + "hasInstallScript": true, + "dependencies": { + "color": "^4.2.3", + "detect-libc": "^2.0.1", + "node-addon-api": "^5.0.0", + "prebuild-install": "^7.1.1", + "semver": "^7.3.7", + "simple-get": "^4.0.1", + "tar-fs": "^2.1.1", + "tunnel-agent": "^0.6.0" + }, + "engines": { + "node": ">=12.13.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/sharp/node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" + } + }, + "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==", + "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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", + "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/should": { + "version": "13.2.3", + "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", + "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", + "dependencies": { + "should-equal": "^2.0.0", + "should-format": "^3.0.3", + "should-type": "^1.4.0", + "should-type-adaptors": "^1.0.1", + "should-util": "^1.0.0" + } + }, + "node_modules/should-equal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", + "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", + "dependencies": { + "should-type": "^1.4.0" + } + }, + "node_modules/should-format": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", + "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", + "dependencies": { + "should-type": "^1.3.0", + "should-type-adaptors": "^1.0.1" + } + }, + "node_modules/should-type": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", + "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" + }, + "node_modules/should-type-adaptors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", + "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", + "dependencies": { + "should-type": "^1.3.0", + "should-util": "^1.0.0" + } + }, + "node_modules/should-util": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", + "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" + }, + "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==", + "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.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "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/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "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": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/simple-html-tokenizer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", + "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", + "dev": true + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/sirv": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", + "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "dependencies": { + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^1.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/sitemap": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", + "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", + "dependencies": { + "@types/node": "^17.0.5", + "@types/sax": "^1.2.1", + "arg": "^5.0.0", + "sax": "^1.2.4" + }, + "bin": { + "sitemap": "dist/cli.js" + }, + "engines": { + "node": ">=12.0.0", + "npm": ">=5.6.0" + } + }, + "node_modules/sitemap/node_modules/@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/slugify": { + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", + "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/sort-css-media-queries": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", + "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==", + "engines": { + "node": ">= 6.3.0" + } + }, + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead" + }, + "node_modules/space-separated-tokens": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", + "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/speed-measure-webpack-plugin": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", + "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "webpack": "^1 || ^2 || ^3 || ^4 || ^5" + } + }, + "node_modules/split-on-first": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", + "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dev": true, + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ssr-window": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", + "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" + }, + "node_modules/stack-generator": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", + "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "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/stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" + }, + "node_modules/stacktrace-gps": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", + "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", + "dependencies": { + "source-map": "0.5.6", + "stackframe": "^1.3.4" + } + }, + "node_modules/stacktrace-gps/node_modules/source-map": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stacktrace-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", + "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", + "dependencies": { + "error-stack-parser": "^2.0.6", + "stack-generator": "^2.0.5", + "stacktrace-gps": "^3.0.4" + } + }, + "node_modules/state-local": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", + "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" + }, + "node_modules/state-toggle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", + "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" + }, + "node_modules/stickyfill": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", + "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "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": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "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-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-loader": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/style-to-object": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", + "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/styled-components": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", + "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", + "dependencies": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^0.8.8", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0", + "react-is": ">= 16.8.0" + } + }, + "node_modules/styled-components/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/styled-components/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/stylehacks": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-inline-loader": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", + "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", + "dev": true, + "dependencies": { + "loader-utils": "^1.1.0", + "object-assign": "^4.0.1", + "simple-html-tokenizer": "^0.1.1" + } + }, + "node_modules/svg-inline-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/svg-inline-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/svgo/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==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/svgo/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/svgo/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/svgo/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/svgo/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/svgo/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/swagger2openapi": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", + "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", + "dependencies": { + "call-me-maybe": "^1.0.1", + "node-fetch": "^2.6.1", + "node-fetch-h2": "^2.3.0", + "node-readfiles": "^0.2.0", + "oas-kit-common": "^1.0.8", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "oas-validator": "^5.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "bin": { + "boast": "boast.js", + "oas-validate": "oas-validate.js", + "swagger2openapi": "swagger2openapi.js" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/swagger2openapi/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/swagger2openapi/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==" + }, + "node_modules/swagger2openapi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/swagger2openapi/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==", + "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/swagger2openapi/node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/swagger2openapi/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/swiper": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", + "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", + "funding": [ + { + "type": "patreon", + "url": "https://www.patreon.com/swiperjs" + }, + { + "type": "open_collective", + "url": "http://opencollective.com/swiper" + } + ], + "hasInstallScript": true, + "dependencies": { + "dom7": "^4.0.4", + "ssr-window": "^4.0.2" + }, + "engines": { + "node": ">= 4.7.0" + } + }, + "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/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "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.16.5", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", + "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "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==", + "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/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/terser/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==" + }, + "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": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "node_modules/throttle-debounce": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", + "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/throttleit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", + "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tiny-invariant": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", + "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" + }, + "node_modules/tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, + "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==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "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/trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==", + "deprecated": "Use String.prototype.trim() instead" + }, + "node_modules/trim-trailing-lines": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", + "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-easing": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", + "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" + }, + "node_modules/ts-keycode-enum": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", + "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" + }, + "node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "dev": true + }, + "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==", + "devOptional": 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": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", + "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unherit": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "dependencies": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unified": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", + "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/unist-builder": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", + "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-find-after": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", + "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-generated": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", + "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", + "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", + "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-select": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", + "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", + "dependencies": { + "@types/unist": "^2.0.0", + "css-selector-parser": "^1.0.0", + "nth-check": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-select/node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dependencies": { + "@types/unist": "^2.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unload": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", + "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", + "dependencies": { + "@babel/runtime": "^7.6.2", + "detect-node": "^2.0.4" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/update-notifier/node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/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==" + }, + "node_modules/update-notifier/node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/update-notifier/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/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==", + "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/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "dependencies": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } + } + }, + "node_modules/url-loader/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==", + "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/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/url-template": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", + "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + }, + "node_modules/use-composed-ref": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", + "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", + "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-latest": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", + "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", + "dependencies": { + "use-isomorphic-layout-effect": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "node_modules/utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" + }, + "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/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "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-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "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.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/validate.io-array": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", + "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" + }, + "node_modules/validate.io-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", + "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" + }, + "node_modules/validate.io-integer": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", + "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", + "dependencies": { + "validate.io-number": "^1.0.3" + } + }, + "node_modules/validate.io-integer-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", + "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", + "dependencies": { + "validate.io-array": "^1.0.3", + "validate.io-integer": "^1.0.4" + } + }, + "node_modules/validate.io-number": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", + "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" + }, + "node_modules/value-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", + "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", + "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "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==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "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/wait-on": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", + "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", + "dependencies": { + "axios": "^0.25.0", + "joi": "^17.6.0", + "lodash": "^4.17.21", + "minimist": "^1.2.5", + "rxjs": "^7.5.4" + }, + "bin": { + "wait-on": "bin/wait-on" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/wait-on/node_modules/axios": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", + "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "dependencies": { + "follow-redirects": "^1.14.7" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/web-namespaces": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", + "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/web-streams-polyfill": { + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", + "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", + "engines": { + "node": ">= 14" + } + }, + "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.75.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", + "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "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-bundle-analyzer": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", + "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", + "dependencies": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack-bundle-analyzer/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==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-middleware/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==" + }, + "node_modules/webpack-dev-middleware/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", + "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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/webpack-dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-server/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==" + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "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==", + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.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==", + "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/webpackbar": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", + "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", + "dependencies": { + "chalk": "^4.1.0", + "consola": "^2.15.3", + "pretty-time": "^1.1.0", + "std-env": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "webpack": "3 || 4 || 5" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "engines": { + "node": ">=0.8.0" + } + }, + "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-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" + }, + "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/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "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==", + "dev": true, + "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-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/widest-line": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", + "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", + "dependencies": { + "string-width": "^5.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" + }, + "node_modules/wolfy87-eventemitter": { + "version": "5.2.9", + "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", + "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" + }, + "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==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "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==", + "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.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "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/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/xml-formatter": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", + "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", + "dependencies": { + "xml-parser-xo": "^3.2.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/xml-js": { + "version": "1.6.11", + "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", + "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", + "dependencies": { + "sax": "^1.2.4" + }, + "bin": { + "xml-js": "bin/cli.js" + } + }, + "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/xml-parser-xo": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", + "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==", + "engines": { + "node": ">= 10" + } + }, + "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/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "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/yaml-ast-parser": { + "version": "0.0.43", + "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", + "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" + }, + "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/yargs/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/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zustand": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", + "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", + "engines": { + "node": ">=12.7.0" + }, + "peerDependencies": { + "react": ">=16.8" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + } + } + }, + "node_modules/zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + }, + "dependencies": { + "@adobe/css-tools": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", + "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", + "dev": true + }, + "@algolia/autocomplete-core": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.7.4.tgz", + "integrity": "sha512-daoLpQ3ps/VTMRZDEBfU8ixXd+amZcNJ4QSP3IERGyzqnL5Ch8uSRFt/4G8pUvW9c3o6GA4vtVv4I4lmnkdXyg==", + "requires": { + "@algolia/autocomplete-shared": "1.7.4" + } + }, + "@algolia/autocomplete-preset-algolia": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.4.tgz", + "integrity": "sha512-s37hrvLEIfcmKY8VU9LsAXgm2yfmkdHT3DnA3SgHaY93yjZ2qL57wzb5QweVkYuEBZkT2PIREvRoLXC2sxTbpQ==", + "requires": { + "@algolia/autocomplete-shared": "1.7.4" + } + }, + "@algolia/autocomplete-shared": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.4.tgz", + "integrity": "sha512-2VGCk7I9tA9Ge73Km99+Qg87w0wzW4tgUruvWAn/gfey1ZXgmxZtyIRBebk35R1O8TbK77wujVtCnpsGpRy1kg==" + }, + "@algolia/cache-browser-local-storage": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.16.0.tgz", + "integrity": "sha512-jVrk0YB3tjOhD5/lhBtYCVCeLjZmVpf2kdi4puApofytf/R0scjWz0GdozlW4HhU+Prxmt/c9ge4QFjtv5OAzQ==", + "requires": { + "@algolia/cache-common": "4.16.0" + } + }, + "@algolia/cache-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.16.0.tgz", + "integrity": "sha512-4iHjkSYQYw46pITrNQgXXhvUmcekI8INz1m+SzmqLX8jexSSy4Ky4zfGhZzhhhLHXUP3+x/PK/c0qPjxEvRwKQ==" + }, + "@algolia/cache-in-memory": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.16.0.tgz", + "integrity": "sha512-p7RYykvA6Ip6QENxrh99nOD77otVh1sJRivcgcVpnjoZb5sIN3t33eUY1DpB9QSBizcrW+qk19rNkdnZ43a+PQ==", + "requires": { + "@algolia/cache-common": "4.16.0" + } + }, + "@algolia/client-account": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.16.0.tgz", + "integrity": "sha512-eydcfpdIyuWoKgUSz5iZ/L0wE/Wl7958kACkvTHLDNXvK/b8Z1zypoJavh6/km1ZNQmFpeYS2jrmq0kUSFn02w==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-analytics": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.16.0.tgz", + "integrity": "sha512-cONWXH3BfilgdlCofUm492bJRWtpBLVW/hsUlfoFtiX1u05xoBP7qeiDwh9RR+4pSLHLodYkHAf5U4honQ55Qg==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.16.0.tgz", + "integrity": "sha512-QVdR4019ukBH6f5lFr27W60trRxQF1SfS1qo0IP6gjsKhXhUVJuHxOCA6ArF87jrNkeuHEoRoDU+GlvaecNo8g==", + "requires": { + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-personalization": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.16.0.tgz", + "integrity": "sha512-irtLafssDGPuhYqIwxqOxiWlVYvrsBD+EMA1P9VJtkKi3vSNBxiWeQ0f0Tn53cUNdSRNEssfoEH84JL97SV2SQ==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/client-search": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.16.0.tgz", + "integrity": "sha512-xsfrAE1jO/JDh1wFrRz+alVyW+aA6qnkzmbWWWZWEgVF3EaFqzIf9r1l/aDtDdBtNTNhX9H3Lg31+BRtd5izQA==", + "requires": { + "@algolia/client-common": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "@algolia/events": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", + "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" + }, + "@algolia/logger-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.16.0.tgz", + "integrity": "sha512-U9H8uCzSDuePJmbnjjTX21aPDRU6x74Tdq3dJmdYu2+pISx02UeBJm4kSgc9RW5jcR5j35G9gnjHY9Q3ngWbyQ==" + }, + "@algolia/logger-console": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.16.0.tgz", + "integrity": "sha512-+qymusiM+lPZKrkf0tDjCQA158eEJO2IU+Nr/sJ9TFyI/xkFPjNPzw/Qbc8Iy/xcOXGlc6eMgmyjtVQqAWq6UA==", + "requires": { + "@algolia/logger-common": "4.16.0" + } + }, + "@algolia/requester-browser-xhr": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.16.0.tgz", + "integrity": "sha512-gK+kvs6LHl/PaOJfDuwjkopNbG1djzFLsVBklGBsSU6h6VjFkxIpo6Qq80IK14p9cplYZfhfaL12va6Q9p3KVQ==", + "requires": { + "@algolia/requester-common": "4.16.0" + } + }, + "@algolia/requester-common": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.16.0.tgz", + "integrity": "sha512-3Zmcs/iMubcm4zqZ3vZG6Zum8t+hMWxGMzo0/uY2BD8o9q5vMxIYI0c4ocdgQjkXcix189WtZNkgjSOBzSbkdw==" + }, + "@algolia/requester-node-http": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.16.0.tgz", + "integrity": "sha512-L8JxM2VwZzh8LJ1Zb8TFS6G3icYsCKZsdWW+ahcEs1rGWmyk9SybsOe1MLnjonGBaqPWJkn9NjS7mRdjEmBtKA==", + "requires": { + "@algolia/requester-common": "4.16.0" + } + }, + "@algolia/transporter": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.16.0.tgz", + "integrity": "sha512-H9BVB2EAjT65w7XGBNf5drpsW39x2aSZ942j4boSAAJPPlLmjtj5IpAP7UAtsV8g9Beslonh0bLa1XGmE/P0BA==", + "requires": { + "@algolia/cache-common": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/requester-common": "4.16.0" + } + }, + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==" + }, + "@babel/core": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", + "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.0", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.0", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.0", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/generator": { + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", + "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", + "requires": { + "@babel/types": "^7.21.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "requires": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", + "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "requires": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "requires": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", + "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "requires": { + "@babel/types": "^7.21.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-replace-supers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", + "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + } + }, + "@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "requires": { + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "requires": { + "@babel/types": "^7.20.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + }, + "@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==" + }, + "@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "requires": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + } + }, + "@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "requires": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "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.21.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", + "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==" + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", + "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.7" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@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==", + "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==", + "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==", + "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==", + "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==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@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==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "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==", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", + "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", + "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz", + "integrity": "sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", + "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "requires": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "requires": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", + "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", + "requires": { + "@babel/helper-module-transforms": "^7.21.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-simple-access": "^7.20.2" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", + "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", + "requires": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-identifier": "^7.19.1" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "requires": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", + "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz", + "integrity": "sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-react-constant-elements": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", + "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-react-display-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", + "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz", + "integrity": "sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-jsx": "^7.18.6", + "@babel/types": "^7.21.0" + } + }, + "@babel/plugin-transform-react-jsx-development": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", + "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", + "requires": { + "@babel/plugin-transform-react-jsx": "^7.18.6" + } + }, + "@babel/plugin-transform-react-pure-annotations": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", + "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", + "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.0.tgz", + "integrity": "sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==", + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", + "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "requires": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "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.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", + "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-react-display-name": "^7.18.6", + "@babel/plugin-transform-react-jsx": "^7.18.6", + "@babel/plugin-transform-react-jsx-development": "^7.18.6", + "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + } + }, + "@babel/preset-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.21.0.tgz", + "integrity": "sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.21.0", + "@babel/plugin-transform-typescript": "^7.21.0" + } + }, + "@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" + }, + "@babel/runtime": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", + "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "requires": { + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/runtime-corejs3": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", + "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", + "requires": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + } + }, + "@babel/traverse": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", + "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.2", + "@babel/types": "^7.21.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", + "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "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 + }, + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "optional": true + }, + "@cypress/react": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@cypress/react/-/react-7.0.2.tgz", + "integrity": "sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==", + "dev": true, + "requires": {} + }, + "@cypress/request": { + "version": "2.88.11", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz", + "integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "http-signature": "~1.3.6", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "performance-now": "^2.1.0", + "qs": "~6.10.3", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^8.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + } + } + }, + "@cypress/webpack-dev-server": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@cypress/webpack-dev-server/-/webpack-dev-server-3.3.0.tgz", + "integrity": "sha512-jOXvKo4I7U89cdKtuoD98VR2PJpueKgHBMbX/uH++SojE0xlUji8n/EFyZUBW/Eds+yPC4keupF8y/ViywP4QQ==", + "dev": true, + "requires": { + "find-up": "6.3.0", + "fs-extra": "9.1.0", + "html-webpack-plugin-4": "npm:html-webpack-plugin@^4", + "html-webpack-plugin-5": "npm:html-webpack-plugin@^5", + "local-pkg": "0.4.1", + "speed-measure-webpack-plugin": "1.4.2", + "tslib": "^2.3.1", + "webpack-dev-server": "^4.7.4", + "webpack-merge": "^5.4.0" + } + }, + "@cypress/xvfb": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", + "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "lodash.once": "^4.1.1" + }, + "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" + } + } + } + }, + "@dbt-labs/react-dbt-dag": { + "version": "0.8.7", + "resolved": "https://npm.pkg.github.com/download/@dbt-labs/react-dbt-dag/0.8.7/927fdaa04ced1eca6c6a8505fa4c429df102ca29", + "integrity": "sha512-wGgbSPqCOENiIj5rc4fxCkKcT7GF2BuhgWkXg+UMvrwuaWKmvAh5UvsDRXjAJHT6l+JtxBvi6VVN5IbTLOW2LQ==", + "optional": true, + "requires": { + "classnames": "^2.3.1", + "dagre": "^0.8.5", + "graphlib": "^2.1.8", + "lodash": "^4.17.21", + "react-flow-renderer": "^10.3.8" + } + }, + "@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==" + }, + "@docsearch/css": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.3.3.tgz", + "integrity": "sha512-6SCwI7P8ao+se1TUsdZ7B4XzL+gqeQZnBc+2EONZlcVa0dVrk0NjETxozFKgMv0eEGH8QzP1fkN+A1rH61l4eg==" + }, + "@docsearch/react": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.3.3.tgz", + "integrity": "sha512-pLa0cxnl+G0FuIDuYlW+EBK6Rw2jwLw9B1RHIeS4N4s2VhsfJ/wzeCi3CWcs5yVfxLd5ZK50t//TMA5e79YT7Q==", + "requires": { + "@algolia/autocomplete-core": "1.7.4", + "@algolia/autocomplete-preset-algolia": "1.7.4", + "@docsearch/css": "3.3.3", + "algoliasearch": "^4.0.0" + } + }, + "@docusaurus/core": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.3.1.tgz", + "integrity": "sha512-0Jd4jtizqnRAr7svWaBbbrCCN8mzBNd2xFLoT/IM7bGfFie5y58oz97KzXliwiLY3zWjqMXjQcuP1a5VgCv2JA==", + "requires": { + "@babel/core": "^7.18.6", + "@babel/generator": "^7.18.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.18.6", + "@babel/preset-env": "^7.18.6", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@babel/runtime": "^7.18.6", + "@babel/runtime-corejs3": "^7.18.6", + "@babel/traverse": "^7.18.8", + "@docusaurus/cssnano-preset": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@slorber/static-site-generator-webpack-plugin": "^4.0.7", + "@svgr/webpack": "^6.2.1", + "autoprefixer": "^10.4.7", + "babel-loader": "^8.2.5", + "babel-plugin-dynamic-import-node": "^2.3.3", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "clean-css": "^5.3.0", + "cli-table3": "^0.6.2", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "copy-webpack-plugin": "^11.0.0", + "core-js": "^3.23.3", + "css-loader": "^6.7.1", + "css-minimizer-webpack-plugin": "^4.0.0", + "cssnano": "^5.1.12", + "del": "^6.1.1", + "detect-port": "^1.3.0", + "escape-html": "^1.0.3", + "eta": "^2.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "html-minifier-terser": "^6.1.0", + "html-tags": "^3.2.0", + "html-webpack-plugin": "^5.5.0", + "import-fresh": "^3.3.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "mini-css-extract-plugin": "^2.6.1", + "postcss": "^8.4.14", + "postcss-loader": "^7.0.0", + "prompts": "^2.4.2", + "react-dev-utils": "^12.0.1", + "react-helmet-async": "^1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.3", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.3", + "rtl-detect": "^1.0.4", + "semver": "^7.3.7", + "serve-handler": "^6.1.3", + "shelljs": "^0.8.5", + "terser-webpack-plugin": "^5.3.3", + "tslib": "^2.4.0", + "update-notifier": "^5.1.0", + "url-loader": "^4.1.1", + "wait-on": "^6.0.1", + "webpack": "^5.73.0", + "webpack-bundle-analyzer": "^4.5.0", + "webpack-dev-server": "^4.9.3", + "webpack-merge": "^5.8.0", + "webpackbar": "^5.0.2" + }, + "dependencies": { + "css-loader": { + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", + "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", + "requires": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.19", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + } + }, + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "requires": {} + }, + "postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "requires": {} + }, + "postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "requires": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "requires": { + "icss-utils": "^5.0.0" + } + } + } + }, + "@docusaurus/cssnano-preset": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.3.1.tgz", + "integrity": "sha512-7mIhAROES6CY1GmCjR4CZkUfjTL6B3u6rKHK0ChQl2d1IevYXq/k/vFgvOrJfcKxiObpMnE9+X6R2Wt1KqxC6w==", + "requires": { + "cssnano-preset-advanced": "^5.3.8", + "postcss": "^8.4.14", + "postcss-sort-media-queries": "^4.2.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/eslint-plugin": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/eslint-plugin/-/eslint-plugin-2.3.1.tgz", + "integrity": "sha512-xezO8YncV1EJi2+6ScBWHCjbgQfDpUQApd9T/Hw03rhwEV/WAk9oxbymsehLRvAG1k0/blB8Pb4PEo81qrdl3Q==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "^5.30.5", + "tslib": "^2.4.0" + } + }, + "@docusaurus/logger": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.3.1.tgz", + "integrity": "sha512-2lAV/olKKVr9qJhfHFCaqBIl8FgYjbUFwgUnX76+cULwQYss+42ZQ3grHGFvI0ocN2X55WcYe64ellQXz7suqg==", + "requires": { + "chalk": "^4.1.2", + "tslib": "^2.4.0" + } + }, + "@docusaurus/lqip-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/lqip-loader/-/lqip-loader-2.3.1.tgz", + "integrity": "sha512-pdZUh6FjvoVszGTaMHX4nhLfORdQ7ZnOv9wcfncsiR/iUzpHin+Dq3yOXPgB9C/yPvsaITzpCrJdGYfET29/dQ==", + "requires": { + "@docusaurus/logger": "2.3.1", + "file-loader": "^6.2.0", + "lodash": "^4.17.21", + "sharp": "^0.30.7", + "tslib": "^2.4.0" + } + }, + "@docusaurus/mdx-loader": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.3.1.tgz", + "integrity": "sha512-Gzga7OsxQRpt3392K9lv/bW4jGppdLFJh3luKRknCKSAaZrmVkOQv2gvCn8LAOSZ3uRg5No7AgYs/vpL8K94lA==", + "requires": { + "@babel/parser": "^7.18.8", + "@babel/traverse": "^7.18.8", + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@mdx-js/mdx": "^1.6.22", + "escape-html": "^1.0.3", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "image-size": "^1.0.1", + "mdast-util-to-string": "^2.0.0", + "remark-emoji": "^2.2.0", + "stringify-object": "^3.3.0", + "tslib": "^2.4.0", + "unified": "^9.2.2", + "unist-util-visit": "^2.0.3", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/module-type-aliases": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.3.1.tgz", + "integrity": "sha512-6KkxfAVOJqIUynTRb/tphYCl+co3cP0PlHiMDbi+SzmYxMdgIrwYqH9yAnGSDoN6Jk2ZE/JY/Azs/8LPgKP48A==", + "requires": { + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/types": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "*", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" + } + }, + "@docusaurus/plugin-content-blog": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.3.1.tgz", + "integrity": "sha512-f5LjqX+9WkiLyGiQ41x/KGSJ/9bOjSD8lsVhPvYeUYHCtYpuiDKfhZE07O4EqpHkBx4NQdtQDbp+aptgHSTuiw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "cheerio": "^1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "reading-time": "^1.5.0", + "tslib": "^2.4.0", + "unist-util-visit": "^2.0.3", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-content-docs": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.3.1.tgz", + "integrity": "sha512-DxztTOBEruv7qFxqUtbsqXeNcHqcVEIEe+NQoI1oi2DBmKBhW/o0MIal8lt+9gvmpx3oYtlwmLOOGepxZgJGkw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@types/react-router-config": "^5.0.6", + "combine-promises": "^1.1.0", + "fs-extra": "^10.1.0", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-content-pages": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.3.1.tgz", + "integrity": "sha512-E80UL6hvKm5VVw8Ka8YaVDtO6kWWDVUK4fffGvkpQ/AJQDOg99LwOXKujPoICC22nUFTsZ2Hp70XvpezCsFQaA==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-debug": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.3.1.tgz", + "integrity": "sha512-Ujpml1Ppg4geB/2hyu2diWnO49az9U2bxM9Shen7b6qVcyFisNJTkVG2ocvLC7wM1efTJcUhBO6zAku2vKJGMw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "fs-extra": "^10.1.0", + "react-json-view": "^1.21.3", + "tslib": "^2.4.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/plugin-google-analytics": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz", + "integrity": "sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/plugin-google-gtag": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz", + "integrity": "sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/plugin-google-tag-manager": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.3.1.tgz", + "integrity": "sha512-Ww2BPEYSqg8q8tJdLYPFFM3FMDBCVhEM4UUqKzJaiRMx3NEoly3qqDRAoRDGdIhlC//Rf0iJV9cWAoq2m6k3sw==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "tslib": "^2.4.0" + } + }, + "@docusaurus/plugin-ideal-image": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-2.3.1.tgz", + "integrity": "sha512-hN/TbpG8Hsct06RNRZz69iCpxsXzryq+5o/8r62sGwhTAmMCN8ms8an+ubRk4bub0y3Gvg7YUcwmmFf6kE2fJg==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/lqip-loader": "2.3.1", + "@docusaurus/responsive-loader": "^1.7.0", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@endiliey/react-ideal-image": "^0.0.11", + "react-waypoint": "^10.3.0", + "sharp": "^0.30.7", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + } + }, + "@docusaurus/plugin-sitemap": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.3.1.tgz", + "integrity": "sha512-8Yxile/v6QGYV9vgFiYL+8d2N4z4Er3pSHsrD08c5XI8bUXxTppMwjarDUTH/TRTfgAWotRbhJ6WZLyajLpozA==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "fs-extra": "^10.1.0", + "sitemap": "^7.1.1", + "tslib": "^2.4.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/preset-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.3.1.tgz", + "integrity": "sha512-OQ5W0AHyfdUk0IldwJ3BlnZ1EqoJuu2L2BMhqLbqwNWdkmzmSUvlFLH1Pe7CZSQgB2YUUC/DnmjbPKk/qQD0lQ==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/plugin-debug": "2.3.1", + "@docusaurus/plugin-google-analytics": "2.3.1", + "@docusaurus/plugin-google-gtag": "2.3.1", + "@docusaurus/plugin-google-tag-manager": "2.3.1", + "@docusaurus/plugin-sitemap": "2.3.1", + "@docusaurus/theme-classic": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-search-algolia": "2.3.1", + "@docusaurus/types": "2.3.1" + } + }, + "@docusaurus/react-loadable": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "requires": { + "@types/react": "*", + "prop-types": "^15.6.2" + } + }, + "@docusaurus/responsive-loader": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/responsive-loader/-/responsive-loader-1.7.0.tgz", + "integrity": "sha512-N0cWuVqTRXRvkBxeMQcy/OF2l7GN8rmni5EzR3HpwR+iU2ckYPnziceojcxvvxQ5NqZg1QfEW0tycQgHp+e+Nw==", + "requires": { + "loader-utils": "^2.0.0" + } + }, + "@docusaurus/theme-classic": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.3.1.tgz", + "integrity": "sha512-SelSIDvyttb7ZYHj8vEUhqykhAqfOPKk+uP0z85jH72IMC58e7O8DIlcAeBv+CWsLbNIl9/Hcg71X0jazuxJug==", + "requires": { + "@docusaurus/core": "2.3.1", + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/types": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-common": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "@mdx-js/react": "^1.6.22", + "clsx": "^1.2.1", + "copy-text-to-clipboard": "^3.0.1", + "infima": "0.2.0-alpha.42", + "lodash": "^4.17.21", + "nprogress": "^0.2.0", + "postcss": "^8.4.14", + "prism-react-renderer": "^1.3.5", + "prismjs": "^1.28.0", + "react-router-dom": "^5.3.3", + "rtlcss": "^3.5.0", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + } + }, + "@docusaurus/theme-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.3.1.tgz", + "integrity": "sha512-RYmYl2OR2biO+yhmW1aS5FyEvnrItPINa+0U2dMxcHpah8reSCjQ9eJGRmAgkZFchV1+aIQzXOI1K7LCW38O0g==", + "requires": { + "@docusaurus/mdx-loader": "2.3.1", + "@docusaurus/module-type-aliases": "2.3.1", + "@docusaurus/plugin-content-blog": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/plugin-content-pages": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^1.2.1", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^1.3.5", + "tslib": "^2.4.0", + "use-sync-external-store": "^1.2.0", + "utility-types": "^3.10.0" + } + }, + "@docusaurus/theme-search-algolia": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.3.1.tgz", + "integrity": "sha512-JdHaRqRuH1X++g5fEMLnq7OtULSGQdrs9AbhcWRQ428ZB8/HOiaN6mj3hzHvcD3DFgu7koIVtWPQnvnN7iwzHA==", + "requires": { + "@docsearch/react": "^3.1.1", + "@docusaurus/core": "2.3.1", + "@docusaurus/logger": "2.3.1", + "@docusaurus/plugin-content-docs": "2.3.1", + "@docusaurus/theme-common": "2.3.1", + "@docusaurus/theme-translations": "2.3.1", + "@docusaurus/utils": "2.3.1", + "@docusaurus/utils-validation": "2.3.1", + "algoliasearch": "^4.13.1", + "algoliasearch-helper": "^3.10.0", + "clsx": "^1.2.1", + "eta": "^2.0.0", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/theme-translations": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.3.1.tgz", + "integrity": "sha512-BsBZzAewJabVhoGG1Ij2u4pMS3MPW6gZ6sS4pc+Y7czevRpzxoFNJXRtQDVGe7mOpv/MmRmqg4owDK+lcOTCVQ==", + "requires": { + "fs-extra": "^10.1.0", + "tslib": "^2.4.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/types": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.3.1.tgz", + "integrity": "sha512-PREbIRhTaNNY042qmfSE372Jb7djZt+oVTZkoqHJ8eff8vOIc2zqqDqBVc5BhOfpZGPTrE078yy/torUEZy08A==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.6.0", + "react-helmet-async": "^1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0", + "webpack-merge": "^5.8.0" + } + }, + "@docusaurus/utils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.3.1.tgz", + "integrity": "sha512-9WcQROCV0MmrpOQDXDGhtGMd52DHpSFbKLfkyaYumzbTstrbA5pPOtiGtxK1nqUHkiIv8UwexS54p0Vod2I1lg==", + "requires": { + "@docusaurus/logger": "2.3.1", + "@svgr/webpack": "^6.2.1", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "github-slugger": "^1.4.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.4.0", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "@docusaurus/utils-common": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.3.1.tgz", + "integrity": "sha512-pVlRpXkdNcxmKNxAaB1ya2hfCEvVsLDp2joeM6K6uv55Oc5nVIqgyYSgSNKZyMdw66NnvMfsu0RBylcwZQKo9A==", + "requires": { + "tslib": "^2.4.0" + } + }, + "@docusaurus/utils-validation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.3.1.tgz", + "integrity": "sha512-7n0208IG3k1HVTByMHlZoIDjjOFC8sbViHVXJx0r3Q+3Ezrx+VQ1RZ/zjNn6lT+QBCRCXlnlaoJ8ug4HIVgQ3w==", + "requires": { + "@docusaurus/logger": "2.3.1", + "@docusaurus/utils": "2.3.1", + "joi": "^17.6.0", + "js-yaml": "^4.1.0", + "tslib": "^2.4.0" + } + }, + "@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==", + "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==" + }, + "@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, + "@endiliey/react-ideal-image": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/@endiliey/react-ideal-image/-/react-ideal-image-0.0.11.tgz", + "integrity": "sha512-QxMjt/Gvur/gLxSoCy7VIyGGGrGmDN+VHcXkN3R2ApoWX0EYUE+hMgPHSW/PV6VVebZ1Nd4t2UnGRBDihu16JQ==", + "requires": {} + }, + "@eslint/eslintrc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", + "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", + "devOptional": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": 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==", + "devOptional": true + } + } + }, + "@eslint/js": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", + "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", + "devOptional": true + }, + "@exodus/schemasafe": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.0.0-rc.10.tgz", + "integrity": "sha512-ZKjOj0oXi7h55tud+MopVNgyw+Y2EqhZHmLK594G2Gc8K/xXJKM+hVtPwXCMoahLx03km+Nms/HYwqjejxJurQ==" + }, + "@faker-js/faker": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-5.5.3.tgz", + "integrity": "sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==" + }, + "@fortawesome/fontawesome-common-types": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz", + "integrity": "sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ==" + }, + "@fortawesome/fontawesome-svg-core": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz", + "integrity": "sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw==", + "requires": { + "@fortawesome/fontawesome-common-types": "6.4.0" + } + }, + "@fortawesome/react-fontawesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", + "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", + "requires": { + "prop-types": "^15.8.1" + } + }, + "@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" + }, + "@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "devOptional": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + } + }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "devOptional": true + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "devOptional": 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" + }, + "dependencies": { + "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" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "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" + } + }, + "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" + } + }, + "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" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "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" + } + }, + "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 + }, + "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 + } + } + }, + "@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.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/create-cache-key-function": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz", + "integrity": "sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1" + } + }, + "@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "requires": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + } + }, + "@jest/expect-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", + "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", + "dev": true, + "requires": { + "jest-get-type": "^29.4.3" + } + }, + "@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + } + } + }, + "@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "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" + } + } + } + }, + "@jest/schemas": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", + "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", + "requires": { + "@sinclair/typebox": "^0.25.16" + } + }, + "@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + } + }, + "@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + } + }, + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "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" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, + "@juggle/resize-observer": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz", + "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" + }, + "@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" + }, + "@mdx-js/mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", + "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", + "requires": { + "@babel/core": "7.12.9", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@mdx-js/util": "1.6.22", + "babel-plugin-apply-mdx-type-prop": "1.6.22", + "babel-plugin-extract-import-names": "1.6.22", + "camelcase-css": "2.0.1", + "detab": "2.0.4", + "hast-util-raw": "6.0.1", + "lodash.uniq": "4.5.0", + "mdast-util-to-hast": "10.0.1", + "remark-footnotes": "2.0.0", + "remark-mdx": "1.6.22", + "remark-parse": "8.0.3", + "remark-squeeze-paragraphs": "4.0.0", + "style-to-object": "0.3.0", + "unified": "9.2.0", + "unist-builder": "2.0.3", + "unist-util-visit": "2.0.3" + }, + "dependencies": { + "@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + }, + "unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + } + } + } + }, + "@mdx-js/react": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "requires": {} + }, + "@mdx-js/util": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", + "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==" + }, + "@monaco-editor/loader": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.3.2.tgz", + "integrity": "sha512-BTDbpHl3e47r3AAtpfVFTlAi7WXv4UQ/xZmz8atKl4q7epQV5e7+JbigFDViWF71VBi4IIBdcWP57Hj+OWuc9g==", + "requires": { + "state-local": "^1.0.6" + } + }, + "@monaco-editor/react": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@monaco-editor/react/-/react-4.4.6.tgz", + "integrity": "sha512-Gr3uz3LYf33wlFE3eRnta4RxP5FSNxiIV9ENn2D2/rN8KgGAD8ecvcITRtsbbyuOuNkwbuHYxfeaz2Vr+CtyFA==", + "requires": { + "@monaco-editor/loader": "^1.3.2", + "prop-types": "^15.7.2" + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@polka/url": { + "version": "1.0.0-next.21", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", + "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" + }, + "@react-hook/debounce": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@react-hook/debounce/-/debounce-3.0.0.tgz", + "integrity": "sha512-ir/kPrSfAzY12Gre0sOHkZ2rkEmM4fS5M5zFxCi4BnCeXh2nvx9Ujd+U4IGpKCuPA+EQD0pg1eK2NGLvfWejag==", + "requires": { + "@react-hook/latest": "^1.0.2" + } + }, + "@react-hook/event": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/event/-/event-1.2.6.tgz", + "integrity": "sha512-JUL5IluaOdn5w5Afpe/puPa1rj8X6udMlQ9dt4hvMuKmTrBS1Ya6sb4sVgvfe2eU4yDuOfAhik8xhbcCekbg9Q==", + "requires": {} + }, + "@react-hook/latest": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@react-hook/latest/-/latest-1.0.3.tgz", + "integrity": "sha512-dy6duzl+JnAZcDbNTfmaP3xHiKtbXYOaz3G51MGVljh548Y8MWzTr+PHLOfvpypEVW9zwvl+VyKjbWKEVbV1Rg==", + "requires": {} + }, + "@react-hook/passive-layout-effect": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", + "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", + "requires": {} + }, + "@react-hook/resize-observer": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@react-hook/resize-observer/-/resize-observer-1.2.6.tgz", + "integrity": "sha512-DlBXtLSW0DqYYTW3Ft1/GQFZlTdKY5VAFIC4+km6IK5NiPPDFchGbEJm1j6pSgMqPRHbUQgHJX7RaR76ic1LWA==", + "requires": { + "@juggle/resize-observer": "^3.3.1", + "@react-hook/latest": "^1.0.2", + "@react-hook/passive-layout-effect": "^1.2.0" + } + }, + "@react-hook/size": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@react-hook/size/-/size-2.1.2.tgz", + "integrity": "sha512-BmE5asyRDxSuQ9p14FUKJ0iBRgV9cROjqNG9jT/EjCM+xHha1HVqbPoT+14FQg1K7xIydabClCibUY4+1tw/iw==", + "requires": { + "@react-hook/passive-layout-effect": "^1.2.0", + "@react-hook/resize-observer": "^1.2.1" + } + }, + "@react-hook/throttle": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@react-hook/throttle/-/throttle-2.2.0.tgz", + "integrity": "sha512-LJ5eg+yMV8lXtqK3lR+OtOZ2WH/EfWvuiEEu0M3bhR7dZRfTyEJKxH1oK9uyBxiXPtWXiQggWbZirMCXam51tg==", + "requires": { + "@react-hook/latest": "^1.0.2" + } + }, + "@react-hook/window-size": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@react-hook/window-size/-/window-size-3.1.1.tgz", + "integrity": "sha512-yWnVS5LKnOUIrEsI44oz3bIIUYqflamPL27n+k/PC//PsX/YeWBky09oPeAoc9As6jSH16Wgo8plI+ECZaHk3g==", + "requires": { + "@react-hook/debounce": "^3.0.0", + "@react-hook/event": "^1.2.1", + "@react-hook/throttle": "^2.2.0" + } + }, + "@react-types/button": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.4.1.tgz", + "integrity": "sha512-B54M84LxdEppwjXNlkBEJyMfe9fd+bvFV7R6+NJvupGrZm/LuFNYjFcHk7yjMKWTdWm6DbpIuQz54n5qTW7Vlg==", + "requires": { + "@react-types/shared": "^3.8.0" + } + }, + "@react-types/checkbox": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.4.4.tgz", + "integrity": "sha512-rJNhbW4R9HTvdbF2oTZmqGiZ/WVP3/XsU4gae7tfdhSYjG+5T5h9zau1vRhz++zwKn57wfcyNn6a83GDhhgkVw==", + "requires": { + "@react-types/shared": "^3.18.1" + }, + "dependencies": { + "@react-types/shared": { + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.18.1.tgz", + "integrity": "sha512-OpTYRFS607Ctfd6Tmhyk6t6cbFyDhO5K+etU35X50pMzpypo1b7vF0mkngEeTc0Xwl0e749ONZNPZskMyu5k8w==", + "requires": {} + } + } + }, + "@react-types/radio": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.1.2.tgz", + "integrity": "sha512-vkIic8abrVUyl/YjKU3yTVwn8QgebzuadfV89PsaKc3hdmSiHhDsln5wYsfWOEotqMwPrG1aEv9yRMYO78OQXQ==", + "requires": { + "@react-types/shared": "^3.8.0" + } + }, + "@react-types/shared": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.9.0.tgz", + "integrity": "sha512-YYksINfR6q92P10AhPEGo47Hd7oz1hrnZ6Vx8Gsrq62IbqDdv1XOTzPBaj17Z1ymNY2pitLUSEXsLmozt4wxxQ==", + "requires": {} + }, + "@react-types/switch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.1.2.tgz", + "integrity": "sha512-EaYWoLvUCpOnt//Ov8VBxOjbs4hBpYE/rBAzzIknXaFvKOu867iZBFL7FJbcemOgC8/dwyaj6GUZ1Gw3Z1g59w==", + "requires": { + "@react-types/checkbox": "^3.2.3", + "@react-types/shared": "^3.8.0" + } + }, + "@react-types/textfield": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.3.0.tgz", + "integrity": "sha512-lOf0tx3c3dVaomH/uvKpOKFVTXQ232kLnMhOJTtj97JDX7fTr3SNhDUV0G8Zf4M0vr+l+xkTrJkywYE23rzliw==", + "requires": { + "@react-types/shared": "^3.9.0" + } + }, + "@redocly/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "dependencies": { + "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==" + } + } + }, + "@redocly/openapi-core": { + "version": "1.0.0-beta.123", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.123.tgz", + "integrity": "sha512-W6MbUWpb/VaV+Kf0c3jmMIJw3WwwF7iK5nAfcOS+ZwrlbxtIl37+1hEydFlJ209vCR9HL12PaMwdh2Vpihj6Jw==", + "requires": { + "@redocly/ajv": "^8.11.0", + "@types/node": "^14.11.8", + "colorette": "^1.2.0", + "js-levenshtein": "^1.1.6", + "js-yaml": "^4.1.0", + "lodash.isequal": "^4.5.0", + "minimatch": "^5.0.1", + "node-fetch": "^2.6.1", + "pluralize": "^8.0.0", + "yaml-ast-parser": "0.0.43" + }, + "dependencies": { + "@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==" + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" + }, + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "@rehooks/component-size": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@rehooks/component-size/-/component-size-1.0.3.tgz", + "integrity": "sha512-pnYld+8SSF2vXwdLOqBGUyOrv/SjzwLjIUcs/4c1JJgR0q4E9eBtBfuZMD6zUD51fvSehSsbnlQMzotSmPTXPg==", + "requires": {} + }, + "@sentry/browser": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.19.7.tgz", + "integrity": "sha512-oDbklp4O3MtAM4mtuwyZLrgO1qDVYIujzNJQzXmi9YzymJCuzMLSRDvhY83NNDCRxf0pds4DShgYeZdbSyKraA==", + "requires": { + "@sentry/core": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/core": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", + "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", + "requires": { + "@sentry/hub": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/hub": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", + "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", + "requires": { + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/minimal": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", + "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", + "requires": { + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/react": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.19.7.tgz", + "integrity": "sha512-VzJeBg/v41jfxUYPkH2WYrKjWc4YiMLzDX0f4Zf6WkJ4v3IlDDSkX6DfmWekjTKBho6wiMkSNy2hJ1dHfGZ9jA==", + "requires": { + "@sentry/browser": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "hoist-non-react-statics": "^3.3.2", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sentry/types": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", + "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==" + }, + "@sentry/utils": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", + "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", + "requires": { + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@sideway/address": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", + "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" + }, + "@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" + }, + "@sinclair/typebox": { + "version": "0.25.24", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", + "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==" + }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" + }, + "@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, + "@slorber/static-site-generator-webpack-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", + "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", + "requires": { + "eval": "^0.1.8", + "p-map": "^4.0.0", + "webpack-sources": "^3.2.2" + } + }, + "@stoplight/elements": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements/-/elements-7.7.17.tgz", + "integrity": "sha512-c+KqG+CtkugYfN+JPi1kj+Q7V5qJVa3VSep9E37Gn+oEdoy+HJcix5P4b/LEIJ6qF47xf9UEKLDnU729pAhJyw==", + "requires": { + "@stoplight/elements-core": "~7.7.17", + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "file-saver": "^2.0.5", + "lodash": "^4.17.19", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0" + } + }, + "@stoplight/elements-core": { + "version": "7.7.17", + "resolved": "https://registry.npmjs.org/@stoplight/elements-core/-/elements-core-7.7.17.tgz", + "integrity": "sha512-R4lbw4pK9uS/+45AQLVVSkTkt6QV6Ke90W1WZzucBz0C2HdeuygHmpoCrXuLBsWRMpT8YKjJE/h5hWl5RzjQ9A==", + "requires": { + "@stoplight/http-spec": "^5.1.4", + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-ref-parser": "^9.0.5", + "@stoplight/json-schema-sampler": "0.2.3", + "@stoplight/json-schema-viewer": "^4.9.0", + "@stoplight/markdown-viewer": "^5.6.0", + "@stoplight/mosaic": "^1.33.0", + "@stoplight/mosaic-code-editor": "^1.33.0", + "@stoplight/mosaic-code-viewer": "^1.33.0", + "@stoplight/path": "^1.3.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@stoplight/types": "^13.7.0", + "@stoplight/yaml": "^4.2.3", + "classnames": "^2.2.6", + "httpsnippet-lite": "^3.0.1", + "jotai": "1.3.9", + "json-schema": "^0.4.0", + "lodash": "^4.17.19", + "nanoid": "^3.1.32", + "prop-types": "^15.7.2", + "react-query": "^3.34.19", + "react-router-dom": "^5.2.0", + "react-router-hash-link": "^2.1.0", + "tslib": "^2.1.0", + "urijs": "^1.19.11", + "util": "^0.12.4", + "xml-formatter": "^2.6.1" + } + }, + "@stoplight/http-spec": { + "version": "5.9.4", + "resolved": "https://registry.npmjs.org/@stoplight/http-spec/-/http-spec-5.9.4.tgz", + "integrity": "sha512-hVI5BmSClygVTBwJpinOjyZ9yRpw61u6EC1/nBqSieKxLJ9T5WXlsaE+0s9cpzTg4fVP2jKnVFO3NbIU4vdtPA==", + "requires": { + "@stoplight/json": "^3.18.1", + "@stoplight/json-schema-generator": "1.0.2", + "@stoplight/types": "^13.15.0", + "@types/json-schema": "7.0.11", + "@types/swagger-schema-official": "~2.0.22", + "@types/type-is": "^1.6.3", + "fnv-plus": "^1.3.1", + "lodash.isequalwith": "^4.4.0", + "lodash.pick": "^4.4.0", + "lodash.pickby": "^4.6.0", + "openapi3-ts": "^2.0.2", + "postman-collection": "^4.1.2", + "tslib": "^2.3.1", + "type-is": "^1.6.18" + } + }, + "@stoplight/json": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", + "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", + "requires": { + "@stoplight/ordered-object-literal": "^1.0.3", + "@stoplight/path": "^1.3.2", + "@stoplight/types": "^13.6.0", + "jsonc-parser": "~2.2.1", + "lodash": "^4.17.21", + "safe-stable-stringify": "^1.1" + }, + "dependencies": { + "jsonc-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", + "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" + } + } + }, + "@stoplight/json-schema-generator": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-generator/-/json-schema-generator-1.0.2.tgz", + "integrity": "sha512-FzSLFoIZc6Lmw3oRE7kU6YUrl5gBmUs//rY59jdFipBoSyTPv5NyqeyTg5mvT6rY1F3qTLU3xgzRi/9Pb9eZpA==", + "requires": { + "cross-fetch": "^3.1.5", + "json-promise": "1.1.x", + "minimist": "1.2.6", + "mkdirp": "0.5.x", + "pretty-data": "0.40.x" + }, + "dependencies": { + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + } + } + }, + "@stoplight/json-schema-merge-allof": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-merge-allof/-/json-schema-merge-allof-0.7.8.tgz", + "integrity": "sha512-JTDt6GYpCWQSb7+UW1P91IAp/pcLWis0mmEzWVFcLsrNgtUYK7JLtYYz0ZPSR4QVL0fJ0YQejM+MPq5iNDFO4g==", + "requires": { + "compute-lcm": "^1.1.0", + "json-schema-compare": "^0.2.2", + "lodash": "^4.17.4" + } + }, + "@stoplight/json-schema-ref-parser": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-ref-parser/-/json-schema-ref-parser-9.2.4.tgz", + "integrity": "sha512-alWys5FhpfBtCJpZmWq47fZ4BBGcOGUqEI8b7AkJRZ+OaEoUIQtm8BReWY+JbU4D7+tBozX8Y+LF9Oxa9mYDSg==", + "requires": { + "@jsdevtools/ono": "^7.1.3", + "@stoplight/path": "^1.3.2", + "@stoplight/yaml": "^4.0.2", + "call-me-maybe": "^1.0.1", + "fastestsmallesttextencoderdecoder": "^1.0.22", + "isomorphic-fetch": "^3.0.0", + "node-abort-controller": "^3.0.1" + } + }, + "@stoplight/json-schema-sampler": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-sampler/-/json-schema-sampler-0.2.3.tgz", + "integrity": "sha512-57PqNll9y/Rkfp4/t1AkVfz5C0PIrDd8i2AW/N0XU5wVJ50kIrmJg3BD+PzmVcrF3lXFH7/LojoOUkzLZXMJpg==", + "requires": { + "@types/json-schema": "^7.0.7", + "json-pointer": "^0.6.1" + } + }, + "@stoplight/json-schema-tree": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-tree/-/json-schema-tree-2.2.3.tgz", + "integrity": "sha512-cJ11QpzuoEsM6YgAahxoZDqzE+UjWTZqbRJanYLYqA4bC9pqB00Sj/NBqvTTIi6FfSef1D77KvURU5CcDk4h+A==", + "requires": { + "@stoplight/json": "^3.12.0", + "@stoplight/json-schema-merge-allof": "^0.7.8", + "@stoplight/lifecycle": "^2.3.2", + "@types/json-schema": "^7.0.7", + "magic-error": "0.0.1" + } + }, + "@stoplight/json-schema-viewer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@stoplight/json-schema-viewer/-/json-schema-viewer-4.9.1.tgz", + "integrity": "sha512-PZHLxEYtQwGSPo/fmcipmlLxDhKGSWocj+g6fW9t817rqO0wZ5lzjM65XG+WOj/oyYE5ghjX676Q3Nd2NYmOnQ==", + "requires": { + "@stoplight/json": "^3.20.1", + "@stoplight/json-schema-tree": "^2.2.2", + "@stoplight/react-error-boundary": "^2.0.0", + "@types/json-schema": "^7.0.7", + "classnames": "^2.2.6", + "fnv-plus": "^1.3.1", + "jotai": "^1.4.5", + "lodash": "^4.17.19" + }, + "dependencies": { + "jotai": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.13.1.tgz", + "integrity": "sha512-RUmH1S4vLsG3V6fbGlKzGJnLrDcC/HNb5gH2AeA9DzuJknoVxSGvvg8OBB7lke+gDc4oXmdVsaKn/xDUhWZ0vw==", + "requires": {} + } + } + }, + "@stoplight/lifecycle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@stoplight/lifecycle/-/lifecycle-2.3.3.tgz", + "integrity": "sha512-JbPRTIzPZabeYPAk5+gdsnfwAxqW35G9e0ZjOG3toUmNViLOsEzuK4vpWd+Prv2Mw8HRmu+haiYizteZp6mk0w==", + "requires": { + "tslib": "^2.3.1", + "wolfy87-eventemitter": "~5.2.8" + } + }, + "@stoplight/markdown": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown/-/markdown-3.2.0.tgz", + "integrity": "sha512-Hhnrj7xb+f4iMQQeZBKLgfst3OJyV8T4BKr8BSYnKpp070B6fE63V/lkPuKqrpvidcv6kz3INDBU/GE7K2Q0uw==", + "requires": { + "@stoplight/types": "^12.3.0", + "@stoplight/yaml": "^4.2.2", + "github-slugger": "^1.3.0", + "hast-util-whitespace": "^2.0.0", + "lodash": "^4.17.21", + "mdast-util-to-string": "^3.1.0", + "remark-frontmatter": "^3.0.0", + "remark-gfm": "^1.0.0", + "remark-parse": "^9.0.0", + "remark-stringify": "^9.0.1", + "tslib": "^2.3.0", + "unified": "^9.2.1", + "unist-util-select": "^4.0.0", + "unist-util-visit": "^3.1.0" + }, + "dependencies": { + "@stoplight/types": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", + "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", + "requires": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + } + }, + "mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", + "requires": { + "@types/mdast": "^3.0.0" + } + }, + "remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "requires": { + "mdast-util-from-markdown": "^0.8.0" + } + }, + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + } + }, + "unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } + } + }, + "@stoplight/markdown-viewer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@stoplight/markdown-viewer/-/markdown-viewer-5.6.0.tgz", + "integrity": "sha512-vKHn1Bv9nafBYQWtNLlrRZ1aKqFRTOdfWUAhCSV1ZH4iqxGa+O1OWWTBbeOF5du8vcrWu1tTrXoCXkZjmq1NlA==", + "requires": { + "@rehooks/component-size": "^1.0.3", + "@stoplight/markdown": "^3.1.3", + "@stoplight/react-error-boundary": "^2.0.0", + "deepmerge": "^4.2.2", + "hast-to-hyperscript": "^10.0.1", + "hast-util-raw": "7.0.0", + "hast-util-sanitize": "^4.0.0", + "hastscript": "^7.0.2", + "mdast-util-to-hast": "^11.1.1", + "remark-parse": "^9.0.0", + "unified": "^9.2.1", + "unist-builder": "^3.0.0", + "unist-util-select": "^4.0.1", + "unist-util-visit": "^3.1.0" + }, + "dependencies": { + "@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" + }, + "comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==" + }, + "hast-to-hyperscript": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", + "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", + "requires": { + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.1", + "web-namespaces": "^2.0.0" + } + }, + "hast-util-from-parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", + "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/unist": "^2.0.0", + "hastscript": "^7.0.0", + "property-information": "^6.0.0", + "vfile": "^5.0.0", + "vfile-location": "^4.0.0", + "web-namespaces": "^2.0.0" + }, + "dependencies": { + "vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + } + } + } + }, + "hast-util-parse-selector": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", + "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", + "requires": { + "@types/hast": "^2.0.0" + } + }, + "hast-util-raw": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.0.0.tgz", + "integrity": "sha512-3UKuYgaqakZrY916JfQzqSk8xZGyxpj9zwfPB3MctXLDorPdyqk1QZGZoCEqU2LMIEzVXBZukAQs7aAH9TJPIw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/parse5": "^6.0.0", + "@types/unist": "^2.0.3", + "hast-util-from-parse5": "^7.0.0", + "hast-util-to-parse5": "^7.0.0", + "html-void-elements": "^2.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + } + }, + "hast-util-to-parse5": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", + "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", + "requires": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + } + }, + "hastscript": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", + "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", + "requires": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^3.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" + } + }, + "html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==" + }, + "mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" + }, + "dependencies": { + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } + } + }, + "mdast-util-to-hast": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-11.3.0.tgz", + "integrity": "sha512-4o3Cli3hXPmm1LhB+6rqhfsIUBjnKFlIUZvudaermXB+4/KONdd/W4saWWkC+LBLbPMqhFSSTSRgafHsT5fVJw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "@types/mdurl": "^1.0.0", + "mdast-util-definitions": "^5.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" + }, + "dependencies": { + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "property-information": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", + "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==" + }, + "remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "requires": { + "mdast-util-from-markdown": "^0.8.0" + } + }, + "space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==" + }, + "style-to-object": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", + "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", + "requires": { + "inline-style-parser": "0.1.1" + } + }, + "unist-builder": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", + "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==" + }, + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" + } + }, + "unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + }, + "vfile-location": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", + "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", + "requires": { + "@types/unist": "^2.0.0", + "vfile": "^5.0.0" + }, + "dependencies": { + "vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + } + } + } + }, + "vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + } + }, + "web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==" + }, + "zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" + } + } + }, + "@stoplight/mosaic": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic/-/mosaic-1.40.0.tgz", + "integrity": "sha512-hHEb0Cc4TzaPRjt9h5Ll7FuuVedvW6ZPa5HIxIMhPj4jgy5G3AaC1CCXzdRlwicBkUIp6lNkBOpB7cHadpXp1w==", + "requires": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/button": "3.4.1", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@react-types/textfield": "3.3.0", + "@stoplight/types": "^13.7.0", + "@types/react": "^17.0.3", + "@types/react-dom": "^17.0.3", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "dependencies": { + "use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "requires": { + "@juggle/resize-observer": "^3.3.1" + } + } + } + }, + "@stoplight/mosaic-code-editor": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-editor/-/mosaic-code-editor-1.40.0.tgz", + "integrity": "sha512-KU9Qj+JeXA6V4PtqJa8nV6W5scml92Bvbwc+//zd13MR5iUbbEKux9kzwtB1OJxvgSRsDI/5oP5yq1RzPLLQuw==", + "requires": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/mosaic-code-viewer": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "dependencies": { + "use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "requires": { + "@juggle/resize-observer": "^3.3.1" + } + } + } + }, + "@stoplight/mosaic-code-viewer": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/@stoplight/mosaic-code-viewer/-/mosaic-code-viewer-1.40.0.tgz", + "integrity": "sha512-beseNsIl3MT868HXgLDB1GNExiOpBwNPJttrOOceR3SXv1Xa/oTEVh2ADhgiW010uWuwYLq9QMllEeXJg/YX/Q==", + "requires": { + "@fortawesome/fontawesome-svg-core": "^6.1.1", + "@fortawesome/react-fontawesome": "^0.2.0", + "@react-hook/size": "^2.1.1", + "@react-hook/window-size": "^3.0.7", + "@react-types/radio": "3.1.2", + "@react-types/shared": "3.9.0", + "@react-types/switch": "3.1.2", + "@stoplight/mosaic": "1.40.0", + "@stoplight/types": "^13.7.0", + "clsx": "^1.1.1", + "copy-to-clipboard": "^3.3.1", + "dom-helpers": "^3.3.1", + "lodash.get": "^4.4.2", + "nano-memoize": "^1.2.1", + "polished": "^4.1.3", + "prism-react-renderer": "^1.2.1", + "prismjs": "^1.23.0", + "react-fast-compare": "^3.2.0", + "react-overflow-list": "^0.5.0", + "ts-keycode-enum": "^1.0.6", + "tslib": "^2.1.0", + "use-resize-observer": "^9.0.2", + "zustand": "^3.5.2" + }, + "dependencies": { + "use-resize-observer": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/use-resize-observer/-/use-resize-observer-9.1.0.tgz", + "integrity": "sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==", + "requires": { + "@juggle/resize-observer": "^3.3.1" + } + } + } + }, + "@stoplight/ordered-object-literal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.4.tgz", + "integrity": "sha512-OF8uib1jjDs5/cCU+iOVy+GJjU3X7vk/qJIkIJFqwmlJKrrtijFmqwbu8XToXrwTYLQTP+Hebws5gtZEmk9jag==" + }, + "@stoplight/path": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", + "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==" + }, + "@stoplight/react-error-boundary": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@stoplight/react-error-boundary/-/react-error-boundary-2.0.0.tgz", + "integrity": "sha512-r9cyaaH2h0kFe5c0aP+yJuY9CyXgfbBaMO6660M/wRQXqM49K5Ul7kexE4ei2cqYgo+Cd6ALl6RXSZFYwf2kCA==", + "requires": { + "@sentry/react": "^6.13.2" + } + }, + "@stoplight/types": { + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.15.0.tgz", + "integrity": "sha512-pBLjVRrWGVd+KzTbL3qrmufSKIEp0UfziDBdt/nrTHPKrlrtVwaHdrrQMcpM23yJDU1Wcg4cHvhIuGtKCT5OmA==", + "requires": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + } + }, + "@stoplight/yaml": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", + "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", + "requires": { + "@stoplight/ordered-object-literal": "^1.0.1", + "@stoplight/types": "^13.0.0", + "@stoplight/yaml-ast-parser": "0.0.48", + "tslib": "^2.2.0" + } + }, + "@stoplight/yaml-ast-parser": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", + "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" + }, + "@svgr/babel-plugin-add-jsx-attribute": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", + "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", + "requires": {} + }, + "@svgr/babel-plugin-remove-jsx-attribute": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.5.0.tgz", + "integrity": "sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==", + "requires": {} + }, + "@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.5.0.tgz", + "integrity": "sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==", + "requires": {} + }, + "@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", + "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", + "requires": {} + }, + "@svgr/babel-plugin-svg-dynamic-title": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", + "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", + "requires": {} + }, + "@svgr/babel-plugin-svg-em-dimensions": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", + "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", + "requires": {} + }, + "@svgr/babel-plugin-transform-react-native-svg": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", + "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", + "requires": {} + }, + "@svgr/babel-plugin-transform-svg-component": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", + "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", + "requires": {} + }, + "@svgr/babel-preset": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", + "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", + "requires": { + "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", + "@svgr/babel-plugin-remove-jsx-attribute": "*", + "@svgr/babel-plugin-remove-jsx-empty-expression": "*", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", + "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", + "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", + "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", + "@svgr/babel-plugin-transform-svg-component": "^6.5.1" + } + }, + "@svgr/core": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", + "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "requires": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.1" + } + }, + "@svgr/hast-util-to-babel-ast": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", + "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", + "requires": { + "@babel/types": "^7.20.0", + "entities": "^4.4.0" + } + }, + "@svgr/plugin-jsx": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", + "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", + "requires": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/hast-util-to-babel-ast": "^6.5.1", + "svg-parser": "^2.0.4" + } + }, + "@svgr/plugin-svgo": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", + "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", + "requires": { + "cosmiconfig": "^7.0.1", + "deepmerge": "^4.2.2", + "svgo": "^2.8.0" + } + }, + "@svgr/webpack": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", + "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", + "requires": { + "@babel/core": "^7.19.6", + "@babel/plugin-transform-react-constant-elements": "^7.18.12", + "@babel/preset-env": "^7.19.4", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@svgr/core": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "@svgr/plugin-svgo": "^6.5.1" + } + }, + "@swc/core": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.37.tgz", + "integrity": "sha512-VOFlEQ1pReOM73N9A7R8rt561GU8Rxsq833jiimWDUB2sXEN3V6n6wFTgYmZuMz2T4/R0cQA1nV48KkaT4gkFw==", + "dev": true, + "requires": { + "@swc/core-darwin-arm64": "1.3.37", + "@swc/core-darwin-x64": "1.3.37", + "@swc/core-linux-arm-gnueabihf": "1.3.37", + "@swc/core-linux-arm64-gnu": "1.3.37", + "@swc/core-linux-arm64-musl": "1.3.37", + "@swc/core-linux-x64-gnu": "1.3.37", + "@swc/core-linux-x64-musl": "1.3.37", + "@swc/core-win32-arm64-msvc": "1.3.37", + "@swc/core-win32-ia32-msvc": "1.3.37", + "@swc/core-win32-x64-msvc": "1.3.37" + } + }, + "@swc/core-darwin-arm64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.37.tgz", + "integrity": "sha512-iIyVqqioUpVeT/hbBVfkrsjfCyL4idNH+LVKGmoTAWaTTSB0+UNhNuA7Wh2CqIHWh1Mv7IlumitWPcqsVDdoEw==", + "dev": true, + "optional": true + }, + "@swc/core-darwin-x64": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.37.tgz", + "integrity": "sha512-dao5nXPWKxtaxqak4ZkRyBoApNIelW/glantQhPhj0FjMjuIQc+v03ldJ8XDByWOG+6xuVUTheANCtEccxoQBw==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm-gnueabihf": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.37.tgz", + "integrity": "sha512-/mVrc8H/f062CUkqKGmBiil2VIYu4mKawHxERfeP1y38X5K/OwjG5s9MgO9TVxy+Ly6vejwj70kRhSa3hVp1Bw==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.37.tgz", + "integrity": "sha512-eRQ3KaZI0j5LidTfOIi/kUVOOMuVmw1HCdt/Z1TAUKoHMLVxY8xcJ3pEE3/+ednI60EmHpwpJRs6LelXyL6uzQ==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.37.tgz", + "integrity": "sha512-w2BRLODyxNQY2rfHZMZ5ir6QrrnGBPlnIslTrgKmVbn1OjZoxUCtuqhrYnCmybaAc4DOkeH02TqynEFXrm+EMw==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-gnu": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.37.tgz", + "integrity": "sha512-CfoH8EsZJZ9kunjMUjBNYD5fFuO86zw+K/o4wEw72Yg6ZEiqPmeIlCKU8tpTv4sK+CbhUXrmVzMB5tqsb2jALQ==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-musl": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.37.tgz", + "integrity": "sha512-9YPrHYNdoG7PK11gV51GfL45biI2dic+YTqHUDKyykemsD7Ot1zUFX7Ty//pdvpKcKSff6SrHbfFACD5ziNirA==", + "dev": true, + "optional": true + }, + "@swc/core-win32-arm64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.37.tgz", + "integrity": "sha512-h17Ek8/wCDje6BrXOvCXBM80oBRmTSMMdLyt87whTl5xqYlWYYs9oQIzZndNRTlNpTgjGO8Ns2eo4kwVxIkBIA==", + "dev": true, + "optional": true + }, + "@swc/core-win32-ia32-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.37.tgz", + "integrity": "sha512-1BR175E1olGy/zdt94cgdb6ps/lBNissAOaxyBk8taFpcjy3zpdP30yAoH0GIsC6isnZ5JfArbOJNRXXO5tE0Q==", + "dev": true, + "optional": true + }, + "@swc/core-win32-x64-msvc": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.37.tgz", + "integrity": "sha512-1siDQ7dccQ1pesJmgAL3BUBbRPtfbNInOWnZOkiie/DfFqGQ117QKnCVyjUvwFKfTQx1+3UUTDmMSlRd00SlXg==", + "dev": true, + "optional": true + }, + "@swc/jest": { + "version": "0.2.24", + "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.24.tgz", + "integrity": "sha512-fwgxQbM1wXzyKzl1+IW0aGrRvAA8k0Y3NxFhKigbPjOJ4mCKnWEcNX9HQS3gshflcxq8YKhadabGUVfdwjCr6Q==", + "dev": true, + "requires": { + "@jest/create-cache-key-function": "^27.4.2", + "jsonc-parser": "^3.2.0" + } + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "@testing-library/dom": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.0.0.tgz", + "integrity": "sha512-+/TLgKNFsYUshOY/zXsQOk+PlFQK+eyJ9T13IDVNJEi+M+Un7xlJK+FZKkbGSnf0+7E1G6PlDhkSYQ/GFiruBQ==", + "dev": true, + "peer": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + } + }, + "@testing-library/jest-dom": { + "version": "5.16.5", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz", + "integrity": "sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA==", + "dev": true, + "requires": { + "@adobe/css-tools": "^4.0.1", + "@babel/runtime": "^7.9.2", + "@types/testing-library__jest-dom": "^5.9.1", + "aria-query": "^5.0.0", + "chalk": "^3.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.5.6", + "lodash": "^4.17.15", + "redent": "^3.0.0" + }, + "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" + } + } + } + }, + "@testing-library/react": { + "version": "12.1.5", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.1.5.tgz", + "integrity": "sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^8.0.0", + "@types/react-dom": "<18.0.0" + }, + "dependencies": { + "@testing-library/dom": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.0.tgz", + "integrity": "sha512-d9ULIT+a4EXLX3UU8FBjauG9NnsZHkHztXoIcTsOKoOw030fyjheN9svkTULjJxtYag9DZz5Jz5qkWZDPxTFwA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "^5.0.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.4.4", + "pretty-format": "^27.0.2" + } + } + } + }, + "@testing-library/user-event": { + "version": "13.5.0", + "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", + "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.12.5" + } + }, + "@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 + }, + "@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==" + }, + "@types/aria-query": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", + "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", + "dev": true + }, + "@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dev": true, + "requires": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "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.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "requires": { + "@types/node": "*" + } + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "requires": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "@types/d3": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.0.tgz", + "integrity": "sha512-jIfNVK0ZlxcuRDKtRS/SypEyOQ6UHaFQBKv032X45VvxSJ6Yi5G9behy9h6tNTHTDGh5Vq+KbmBjUWLgY4meCA==", + "optional": true, + "requires": { + "@types/d3-array": "*", + "@types/d3-axis": "*", + "@types/d3-brush": "*", + "@types/d3-chord": "*", + "@types/d3-color": "*", + "@types/d3-contour": "*", + "@types/d3-delaunay": "*", + "@types/d3-dispatch": "*", + "@types/d3-drag": "*", + "@types/d3-dsv": "*", + "@types/d3-ease": "*", + "@types/d3-fetch": "*", + "@types/d3-force": "*", + "@types/d3-format": "*", + "@types/d3-geo": "*", + "@types/d3-hierarchy": "*", + "@types/d3-interpolate": "*", + "@types/d3-path": "*", + "@types/d3-polygon": "*", + "@types/d3-quadtree": "*", + "@types/d3-random": "*", + "@types/d3-scale": "*", + "@types/d3-scale-chromatic": "*", + "@types/d3-selection": "*", + "@types/d3-shape": "*", + "@types/d3-time": "*", + "@types/d3-time-format": "*", + "@types/d3-timer": "*", + "@types/d3-transition": "*", + "@types/d3-zoom": "*" + } + }, + "@types/d3-array": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.0.4.tgz", + "integrity": "sha512-nwvEkG9vYOc0Ic7G7kwgviY4AQlTfYGIZ0fqB7CQHXGyYM6nO7kJh5EguSNA3jfh4rq7Sb7eMVq8isuvg2/miQ==", + "optional": true + }, + "@types/d3-axis": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.2.tgz", + "integrity": "sha512-uGC7DBh0TZrU/LY43Fd8Qr+2ja1FKmH07q2FoZFHo1eYl8aj87GhfVoY1saJVJiq24rp1+wpI6BvQJMKgQm8oA==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-brush": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.2.tgz", + "integrity": "sha512-2TEm8KzUG3N7z0TrSKPmbxByBx54M+S9lHoP2J55QuLU0VSQ9mE96EJSAOVNEqd1bbynMjeTS9VHmz8/bSw8rA==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-chord": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.2.tgz", + "integrity": "sha512-abT/iLHD3sGZwqMTX1TYCMEulr+wBd0SzyOQnjYNLp7sngdOHYtNkMRI5v3w5thoN+BWtlHVDx2Osvq6fxhZWw==", + "optional": true + }, + "@types/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-HKuicPHJuvPgCD+np6Se9MQvS6OCbJmOjGvylzMJRlDwUXjKTTXs6Pwgk79O09Vj/ho3u1ofXnhFOaEWWPrlwA==", + "optional": true + }, + "@types/d3-contour": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.2.tgz", + "integrity": "sha512-k6/bGDoAGJZnZWaKzeB+9glgXCYGvh6YlluxzBREiVo8f/X2vpTEdgPy9DN7Z2i42PZOZ4JDhVdlTSTSkLDPlQ==", + "optional": true, + "requires": { + "@types/d3-array": "*", + "@types/geojson": "*" + } + }, + "@types/d3-delaunay": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.1.tgz", + "integrity": "sha512-tLxQ2sfT0p6sxdG75c6f/ekqxjyYR0+LwPrsO1mbC9YDBzPJhs2HbJJRrn8Ez1DBoHRo2yx7YEATI+8V1nGMnQ==", + "optional": true + }, + "@types/d3-dispatch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.2.tgz", + "integrity": "sha512-rxN6sHUXEZYCKV05MEh4z4WpPSqIw+aP7n9ZN6WYAAvZoEAghEK1WeVZMZcHRBwyaKflU43PCUAJNjFxCzPDjg==", + "optional": true + }, + "@types/d3-drag": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.2.tgz", + "integrity": "sha512-qmODKEDvyKWVHcWWCOVcuVcOwikLVsyc4q4EBJMREsoQnR2Qoc2cZQUyFUPgO9q4S3qdSqJKBsuefv+h0Qy+tw==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-dsv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.1.tgz", + "integrity": "sha512-76pBHCMTvPLt44wFOieouXcGXWOF0AJCceUvaFkxSZEu4VDUdv93JfpMa6VGNFs01FHfuP4a5Ou68eRG1KBfTw==", + "optional": true + }, + "@types/d3-ease": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.0.tgz", + "integrity": "sha512-aMo4eaAOijJjA6uU+GIeW018dvy9+oH5Y2VPPzjjfxevvGQ/oRDs+tfYC9b50Q4BygRR8yE2QCLsrT0WtAVseA==", + "optional": true + }, + "@types/d3-fetch": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.2.tgz", + "integrity": "sha512-gllwYWozWfbep16N9fByNBDTkJW/SyhH6SGRlXloR7WdtAaBui4plTP+gbUgiEot7vGw/ZZop1yDZlgXXSuzjA==", + "optional": true, + "requires": { + "@types/d3-dsv": "*" + } + }, + "@types/d3-force": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.4.tgz", + "integrity": "sha512-q7xbVLrWcXvSBBEoadowIUJ7sRpS1yvgMWnzHJggFy5cUZBq2HZL5k/pBSm0GdYWS1vs5/EDwMjSKF55PDY4Aw==", + "optional": true + }, + "@types/d3-format": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.1.tgz", + "integrity": "sha512-5KY70ifCCzorkLuIkDe0Z9YTf9RR2CjBX1iaJG+rgM/cPP+sO+q9YdQ9WdhQcgPj1EQiJ2/0+yUkkziTG6Lubg==", + "optional": true + }, + "@types/d3-geo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.0.3.tgz", + "integrity": "sha512-bK9uZJS3vuDCNeeXQ4z3u0E7OeJZXjUgzFdSOtNtMCJCLvDtWDwfpRVWlyt3y8EvRzI0ccOu9xlMVirawolSCw==", + "optional": true, + "requires": { + "@types/geojson": "*" + } + }, + "@types/d3-hierarchy": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", + "integrity": "sha512-9hjRTVoZjRFR6xo8igAJyNXQyPX6Aq++Nhb5ebrUF414dv4jr2MitM2fWiOY475wa3Za7TOS2Gh9fmqEhLTt0A==", + "optional": true + }, + "@types/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-jx5leotSeac3jr0RePOH1KdR9rISG91QIE4Q2PYTu4OymLTZfA3SrnURSLzKH48HmXVUru50b8nje4E79oQSQw==", + "optional": true, + "requires": { + "@types/d3-color": "*" + } + }, + "@types/d3-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.0.0.tgz", + "integrity": "sha512-0g/A+mZXgFkQxN3HniRDbXMN79K3CdTpLsevj+PXiTcb2hVyvkZUBg37StmgCQkaD84cUJ4uaDAWq7UJOQy2Tg==", + "optional": true + }, + "@types/d3-polygon": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.0.tgz", + "integrity": "sha512-D49z4DyzTKXM0sGKVqiTDTYr+DHg/uxsiWDAkNrwXYuiZVd9o9wXZIo+YsHkifOiyBkmSWlEngHCQme54/hnHw==", + "optional": true + }, + "@types/d3-quadtree": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.2.tgz", + "integrity": "sha512-QNcK8Jguvc8lU+4OfeNx+qnVy7c0VrDJ+CCVFS9srBo2GL9Y18CnIxBdTF3v38flrGy5s1YggcoAiu6s4fLQIw==", + "optional": true + }, + "@types/d3-random": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-IIE6YTekGczpLYo/HehAy3JGF1ty7+usI97LqraNa8IiDur+L44d0VOjAvFQWJVdZOJHukUJw+ZdZBlgeUsHOQ==", + "optional": true + }, + "@types/d3-scale": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.3.tgz", + "integrity": "sha512-PATBiMCpvHJSMtZAMEhc2WyL+hnzarKzI6wAHYjhsonjWJYGq5BXTzQjv4l8m2jO183/4wZ90rKvSeT7o72xNQ==", + "optional": true, + "requires": { + "@types/d3-time": "*" + } + }, + "@types/d3-scale-chromatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", + "integrity": "sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==", + "optional": true + }, + "@types/d3-selection": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.4.tgz", + "integrity": "sha512-ZeykX7286BCyMg9sH5fIAORyCB6hcATPSRQpN47jwBA2bMbAT0s+EvtDP5r1FZYJ95R8QoEE1CKJX+n0/M5Vhg==", + "optional": true + }, + "@types/d3-shape": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.1.tgz", + "integrity": "sha512-6Uh86YFF7LGg4PQkuO2oG6EMBRLuW9cbavUW46zkIO5kuS2PfTqo2o9SkgtQzguBHbLgNnU90UNsITpsX1My+A==", + "optional": true, + "requires": { + "@types/d3-path": "*" + } + }, + "@types/d3-time": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.0.tgz", + "integrity": "sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==", + "optional": true + }, + "@types/d3-time-format": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.0.tgz", + "integrity": "sha512-yjfBUe6DJBsDin2BMIulhSHmr5qNR5Pxs17+oW4DoVPyVIXZ+m6bs7j1UVKP08Emv6jRmYrYqxYzO63mQxy1rw==", + "optional": true + }, + "@types/d3-timer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.0.tgz", + "integrity": "sha512-HNB/9GHqu7Fo8AQiugyJbv6ZxYz58wef0esl4Mv828w1ZKpAshw/uFWVDUcIB9KKFeFKoxS3cHY07FFgtTRZ1g==", + "optional": true + }, + "@types/d3-transition": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.3.tgz", + "integrity": "sha512-/S90Od8Id1wgQNvIA8iFv9jRhCiZcGhPd2qX0bKF/PS+y0W5CrXKgIiELd2CvG1mlQrWK/qlYh3VxicqG1ZvgA==", + "optional": true, + "requires": { + "@types/d3-selection": "*" + } + }, + "@types/d3-zoom": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.2.tgz", + "integrity": "sha512-t09DDJVBI6AkM7N8kuPsnq/3d/ehtRKBN1xSiYjjMCgbiw6HM6Ged5VhvswmhprfKyGvzeTEL/4WBaK9llWvlA==", + "optional": true, + "requires": { + "@types/d3-interpolate": "*", + "@types/d3-selection": "*" + } + }, + "@types/eslint": { + "version": "8.21.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", + "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" + }, + "@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/geojson": { + "version": "7946.0.10", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", + "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", + "optional": true + }, + "@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/har-format": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", + "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==" + }, + "@types/hast": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "requires": { + "@types/unist": "*" + } + }, + "@types/history": { + "version": "4.7.11", + "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", + "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" + }, + "@types/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" + }, + "@types/http-proxy": { + "version": "1.17.10", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.10.tgz", + "integrity": "sha512-Qs5aULi+zV1bwKAg5z1PWnDXWmsn+LxIvUGv6E2+OOMYhclZMO+OXd9pYVf2gLykf2I7IV2u7oTHwChPNsvJ7g==", + "requires": { + "@types/node": "*" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "@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==", + "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==", + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/jest": { + "version": "29.4.0", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", + "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", + "dev": true, + "requires": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "@types/js-cookie": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz", + "integrity": "sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==" + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "@types/katex": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.1.tgz", + "integrity": "sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==" + }, + "@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "requires": { + "@types/unist": "*" + } + }, + "@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" + }, + "@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + }, + "@types/node": { + "version": "18.14.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.4.tgz", + "integrity": "sha512-VhCw7I7qO2X49+jaKcAUwi3rR+hbxT5VcYF493+Z5kMLI0DL568b7JI4IDJaxWFH0D/xwmGJNoXisyX+w7GH/g==" + }, + "@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/parse5": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" + }, + "@types/prettier": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "dev": true + }, + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "@types/react": { + "version": "17.0.53", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.53.tgz", + "integrity": "sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw==", + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-dom": { + "version": "17.0.19", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.19.tgz", + "integrity": "sha512-PiYG40pnQRdPHnlf7tZnp0aQ6q9tspYr72vD61saO6zFCybLfMqwUCN0va1/P+86DXn18ZWeW30Bk7xlC5eEAQ==", + "requires": { + "@types/react": "^17" + } + }, + "@types/react-router": { + "version": "5.1.20", + "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", + "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "@types/react-router-config": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.6.tgz", + "integrity": "sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "@types/react-router-dom": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", + "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "@types/resize-observer-browser": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/@types/resize-observer-browser/-/resize-observer-browser-0.1.7.tgz", + "integrity": "sha512-G9eN0Sn0ii9PWQ3Vl72jDPgeJwRWhv2Qk/nQkJuWmRmOB4HX3/BhD5SE1dZs/hzPZL/WKnvF0RHdTSG54QJFyg==", + "optional": true + }, + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + }, + "@types/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", + "requires": { + "@types/node": "*" + } + }, + "@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/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "requires": { + "@types/express": "*" + } + }, + "@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "requires": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "@types/sinonjs__fake-timers": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", + "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", + "dev": true + }, + "@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", + "dev": true + }, + "@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "requires": { + "@types/node": "*" + } + }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "@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/swagger-schema-official": { + "version": "2.0.22", + "resolved": "https://registry.npmjs.org/@types/swagger-schema-official/-/swagger-schema-official-2.0.22.tgz", + "integrity": "sha512-7yQiX6MWSFSvc/1wW5smJMZTZ4fHOd+hqLr3qr/HONDxHEa2bnYAsOcGBOEqFIjd4yetwMOdEDdeW+udRAQnHA==" + }, + "@types/tapable": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", + "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", + "dev": true + }, + "@types/testing-library__jest-dom": { + "version": "5.14.5", + "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", + "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", + "dev": true, + "requires": { + "@types/jest": "*" + } + }, + "@types/type-is": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@types/type-is/-/type-is-1.6.3.tgz", + "integrity": "sha512-PNs5wHaNcBgCQG5nAeeZ7OvosrEsI9O4W2jAOO9BCCg4ux9ZZvH2+0iSCOIDBiKuQsiNS8CBlmfX9f5YBQ22cA==", + "requires": { + "@types/node": "*" + } + }, + "@types/uglify-js": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", + "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + } + }, + "@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "@types/webpack": { + "version": "4.41.33", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", + "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "anymatch": "^3.0.0", + "source-map": "^0.6.0" + } + }, + "@types/webpack-sources": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", + "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "@types/ws": { + "version": "8.5.4", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz", + "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", + "requires": { + "@types/node": "*" + } + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "@types/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "dev": true, + "optional": true, + "requires": { + "@types/node": "*" + } + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.54.0.tgz", + "integrity": "sha512-+hSN9BdSr629RF02d7mMtXhAJvDTyCbprNYJKrXETlul/Aml6YZwd90XioVbjejQeHbb3R8Dg0CkRgoJDxo8aw==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/type-utils": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/parser": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.54.0.tgz", + "integrity": "sha512-aAVL3Mu2qTi+h/r04WI/5PfNWvO6pdhpeMRWk9R7rEV4mwJNzoWf5CCU5vDKBsPIFQFjEq1xg7XBI2rjiMXQbQ==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.54.0.tgz", + "integrity": "sha512-VTPYNZ7vaWtYna9M4oD42zENOBrb+ZYyCNdFs949GcN8Miwn37b8b7eMj+EZaq7VK9fx0Jd+JhmkhjFhvnovhg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.54.0.tgz", + "integrity": "sha512-WI+WMJ8+oS+LyflqsD4nlXMsVdzTMYTxl16myXPaCXnSgc7LWwMsjxQFZCK/rVmTZ3FN71Ct78ehO9bRC7erYQ==", + "dev": true, + "requires": { + "@typescript-eslint/typescript-estree": "5.54.0", + "@typescript-eslint/utils": "5.54.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/types": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.54.0.tgz", + "integrity": "sha512-nExy+fDCBEgqblasfeE3aQ3NuafBUxZxgxXcYfzYRZFHdVvk5q60KhCSkG0noHgHRo/xQ/BOzURLZAafFpTkmQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.54.0.tgz", + "integrity": "sha512-X2rJG97Wj/VRo5YxJ8Qx26Zqf0RRKsVHd4sav8NElhbZzhpBI8jU54i6hfo9eheumj4oO4dcRN1B/zIVEqR/MQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/visitor-keys": "5.54.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/utils": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.54.0.tgz", + "integrity": "sha512-cuwm8D/Z/7AuyAeJ+T0r4WZmlnlxQ8wt7C7fLpFlKMR+dY6QO79Cq1WpJhvZbMA4ZeZGHiRWnht7ZJ8qkdAunw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.54.0", + "@typescript-eslint/types": "5.54.0", + "@typescript-eslint/typescript-estree": "5.54.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.54.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.54.0.tgz", + "integrity": "sha512-xu4wT7aRCakGINTLGeyGqDn+78BwFlggwBjnHa1ar/KaGagnmwLYmlrXIrgAaQ3AE1Vd6nLfKASm7LrFHNbKGA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.54.0", + "eslint-visitor-keys": "^3.3.0" + } + }, + "@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "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==" + }, + "@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==" + }, + "@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==" + }, + "@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==", + "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==" + }, + "@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==", + "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==", + "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==", + "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==" + }, + "@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==", + "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==", + "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==", + "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==", + "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==", + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@xobotyi/scrollbar-width": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/@xobotyi/scrollbar-width/-/scrollbar-width-1.9.5.tgz", + "integrity": "sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==" + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "@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==" + }, + "abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" + }, + "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" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + } + } + }, + "acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "requires": {} + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "devOptional": true, + "requires": {} + }, + "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 + }, + "address": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==" + }, + "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" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "requires": { + "ajv": "^8.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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==" + } + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "requires": {} + }, + "algoliasearch": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.16.0.tgz", + "integrity": "sha512-HAjKJ6bBblaXqO4dYygF4qx251GuJ6zCZt+qbJ+kU7sOC+yc84pawEjVpJByh+cGP2APFCsao2Giz50cDlKNPA==", + "requires": { + "@algolia/cache-browser-local-storage": "4.16.0", + "@algolia/cache-common": "4.16.0", + "@algolia/cache-in-memory": "4.16.0", + "@algolia/client-account": "4.16.0", + "@algolia/client-analytics": "4.16.0", + "@algolia/client-common": "4.16.0", + "@algolia/client-personalization": "4.16.0", + "@algolia/client-search": "4.16.0", + "@algolia/logger-common": "4.16.0", + "@algolia/logger-console": "4.16.0", + "@algolia/requester-browser-xhr": "4.16.0", + "@algolia/requester-common": "4.16.0", + "@algolia/requester-node-http": "4.16.0", + "@algolia/transporter": "4.16.0" + } + }, + "algoliasearch-helper": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz", + "integrity": "sha512-/j1U3PEwdan0n6P/QqSnSpNSLC5+cEMvyljd5CnmNmUjDlGrys+vFEOwjVEnqELIiAGMHEA/Nl3CiKVFBUYqyQ==", + "requires": { + "@algolia/events": "^4.0.1" + } + }, + "ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "requires": { + "string-width": "^4.1.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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "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" + }, + "dependencies": { + "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 + } + } + }, + "ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==" + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "dev": true + }, + "arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "aria-query": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", + "dev": true, + "requires": { + "deep-equal": "^2.0.5" + } + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + }, + "array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + } + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "requires": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "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 + }, + "async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" + }, + "autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "requires": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + } + }, + "available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "dev": true + }, + "aws4": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", + "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", + "dev": true + }, + "axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "requires": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "requires": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + } + }, + "babel-loader": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "requires": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + } + }, + "babel-plugin-apply-mdx-type-prop": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", + "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@mdx-js/util": "1.6.22" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + } + } + }, + "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==", + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-extract-import-names": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", + "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + } + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "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": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "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-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + } + }, + "babel-plugin-styled-components": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", + "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + } + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" + }, + "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.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base16": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", + "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==" + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "blob-util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", + "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", + "dev": true + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, + "body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + } + } + }, + "bonjour-service": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.0.tgz", + "integrity": "sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q==", + "requires": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "boxen": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", + "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", + "requires": { + "ansi-align": "^3.0.1", + "camelcase": "^6.2.0", + "chalk": "^4.1.2", + "cli-boxes": "^3.0.0", + "string-width": "^5.0.1", + "type-fest": "^2.5.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "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==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "broadcast-channel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", + "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", + "requires": { + "@babel/runtime": "^7.7.2", + "detect-node": "^2.1.0", + "js-sha3": "0.8.0", + "microseconds": "0.2.0", + "nano-time": "1.0.0", + "oblivious-set": "1.0.0", + "rimraf": "3.0.2", + "unload": "2.2.0" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "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 + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "requires": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "requires": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + } + }, + "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-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" + } + } + }, + "cachedir": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", + "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", + "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" + } + }, + "call-me-maybe": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", + "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==" + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "requires": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" + }, + "camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" + }, + "camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==" + }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "caniuse-lite": { + "version": "1.0.30001470", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001470.tgz", + "integrity": "sha512-065uNwY6QtHCBOExzbV6m236DDhYCCtPmQUCoQtwkVqzud8v5QPidoMr6CoMkC2nfp6nksjttqWQRRh75LqUmA==" + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "dev": true + }, + "ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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 + }, + "character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" + }, + "character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==" + }, + "character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" + }, + "charset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", + "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==" + }, + "check-more-types": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", + "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", + "dev": true + }, + "cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "requires": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + } + }, + "cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "requires": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "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==" + }, + "ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==" + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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 + }, + "classcat": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/classcat/-/classcat-5.0.4.tgz", + "integrity": "sha512-sbpkOw6z413p+HDGcBENe498WM9woqWHiJxCq7nvmxe9WmrUmqfAcxpIwAiMtM5Q3AhYkzXcNQHqsWq0mND51g==", + "optional": true + }, + "classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "cli-boxes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==" + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "requires": { + "@colors/colors": "1.5.0", + "string-width": "^4.2.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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "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" + }, + "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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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" + } + } + } + }, + "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==", + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "dependencies": { + "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==", + "requires": { + "isobject": "^3.0.1" + } + } + } + }, + "clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "requires": { + "mimic-response": "^1.0.0" + }, + "dependencies": { + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + } + } + }, + "clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==" + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true + }, + "collapse-white-space": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==" + }, + "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": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "requires": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + }, + "dependencies": { + "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + } + } + }, + "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==", + "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==" + }, + "color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" + }, + "colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" + }, + "combine-promises": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", + "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "comma-separated-tokens": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", + "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==" + }, + "commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==" + }, + "common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "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==" + } + } + }, + "compute-gcd": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", + "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", + "requires": { + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "compute-lcm": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", + "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", + "requires": { + "compute-gcd": "^1.2.1", + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "requires": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + } + }, + "connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==" + }, + "consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "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==" + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==" + }, + "content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" + }, + "convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "copy-text-to-clipboard": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.1.0.tgz", + "integrity": "sha512-PFM6BnjLnOON/lB3ta/Jg7Ywsv+l9kQGD4TWDCSlRBGmqnnTM5MrDkhAFgw+8HZt0wW6Q2BBE4cmy9sq+s9Qng==" + }, + "copy-to-clipboard": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", + "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", + "requires": { + "toggle-selection": "^1.0.6" + } + }, + "copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "requires": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "requires": { + "is-glob": "^4.0.3" + } + }, + "globby": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "requires": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + }, + "slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" + } + } + }, + "core-js": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.0.tgz", + "integrity": "sha512-VG23vuEisJNkGl6XQmFJd3rEG/so/CNatqeE+7uZAwTSwFeB/qaO0be8xZYUNWprJ/GIwL8aMt9cj1kvbpTZhg==" + }, + "core-js-compat": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.0.tgz", + "integrity": "sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==", + "requires": { + "browserslist": "^4.21.5" + } + }, + "core-js-pure": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.29.0.tgz", + "integrity": "sha512-v94gUjN5UTe1n0yN/opTihJ8QBWD2O8i19RfTZR7foONPWArnjB96QA/wk5ozu1mm6ja3udQCzOzwQXTxi3xOQ==" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, + "create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "requires": { + "node-fetch": "2.6.7" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==" + }, + "css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==" + }, + "css-declaration-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "requires": {} + }, + "css-in-js-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz", + "integrity": "sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==", + "requires": { + "hyphenate-style-name": "^1.0.3" + } + }, + "css-loader": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", + "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.0", + "semver": "^6.3.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "css-minimizer-webpack-plugin": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", + "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", + "requires": { + "cssnano": "^5.1.8", + "jest-worker": "^29.1.2", + "postcss": "^8.4.17", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + } + }, + "css-selector-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", + "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==" + }, + "css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "requires": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" + }, + "css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" + }, + "cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "requires": { + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + } + }, + "cssnano-preset-advanced": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", + "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", + "requires": { + "autoprefixer": "^10.4.12", + "cssnano-preset-default": "^5.2.14", + "postcss-discard-unused": "^5.1.0", + "postcss-merge-idents": "^5.1.1", + "postcss-reduce-idents": "^5.2.0", + "postcss-zindex": "^5.1.0" + } + }, + "cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "requires": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + } + }, + "cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "requires": {} + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "requires": { + "css-tree": "^1.1.2" + } + }, + "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.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "cypress": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.7.0.tgz", + "integrity": "sha512-7rq+nmhzz0u6yabCFyPtADU2OOrYt6pvUau9qV7xyifJ/hnsaw/vkr0tnLlcuuQKUAOC1v1M1e4Z0zG7S0IAvA==", + "dev": true, + "requires": { + "@cypress/request": "^2.88.10", + "@cypress/xvfb": "^1.2.4", + "@types/node": "^14.14.31", + "@types/sinonjs__fake-timers": "8.1.1", + "@types/sizzle": "^2.3.2", + "arch": "^2.2.0", + "blob-util": "^2.0.2", + "bluebird": "^3.7.2", + "buffer": "^5.6.0", + "cachedir": "^2.3.0", + "chalk": "^4.1.0", + "check-more-types": "^2.24.0", + "cli-cursor": "^3.1.0", + "cli-table3": "~0.6.1", + "commander": "^5.1.0", + "common-tags": "^1.8.0", + "dayjs": "^1.10.4", + "debug": "^4.3.4", + "enquirer": "^2.3.6", + "eventemitter2": "6.4.7", + "execa": "4.1.0", + "executable": "^4.1.1", + "extract-zip": "2.0.1", + "figures": "^3.2.0", + "fs-extra": "^9.1.0", + "getos": "^3.2.1", + "is-ci": "^3.0.0", + "is-installed-globally": "~0.4.0", + "lazy-ass": "^1.6.0", + "listr2": "^3.8.3", + "lodash": "^4.17.21", + "log-symbols": "^4.0.0", + "minimist": "^1.2.6", + "ospath": "^1.2.2", + "pretty-bytes": "^5.6.0", + "proxy-from-env": "1.0.0", + "request-progress": "^3.0.0", + "semver": "^7.3.2", + "supports-color": "^8.1.1", + "tmp": "~0.2.1", + "untildify": "^4.0.0", + "yauzl": "^2.10.0" + }, + "dependencies": { + "@types/node": { + "version": "14.18.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.37.tgz", + "integrity": "sha512-7GgtHCs/QZrBrDzgIJnQtuSvhFSwhyYSI2uafSwZoNt1iOGhEN5fwNrQMjtONyHm9+/LoA4453jH0CMYcr06Pg==", + "dev": true + }, + "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" + } + } + } + }, + "d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "optional": true + }, + "d3-dispatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "optional": true + }, + "d3-drag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", + "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", + "optional": true, + "requires": { + "d3-dispatch": "1 - 3", + "d3-selection": "3" + } + }, + "d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "optional": true + }, + "d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "optional": true, + "requires": { + "d3-color": "1 - 3" + } + }, + "d3-selection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", + "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", + "optional": true + }, + "d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "optional": true + }, + "d3-transition": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", + "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "optional": true, + "requires": { + "d3-color": "1 - 3", + "d3-dispatch": "1 - 3", + "d3-ease": "1 - 3", + "d3-interpolate": "1 - 3", + "d3-timer": "1 - 3" + } + }, + "d3-zoom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", + "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", + "optional": true, + "requires": { + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "2 - 3", + "d3-transition": "2 - 3" + } + }, + "dagre": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", + "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", + "optional": true, + "requires": { + "graphlib": "^2.1.8", + "lodash": "^4.17.15" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "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" + } + }, + "dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==", + "dev": true + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "decko": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", + "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" + }, + "decode-uri-component": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", + "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==" + }, + "decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "requires": { + "mimic-response": "^3.1.0" + } + }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "deep-equal": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", + "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-get-iterator": "^1.1.2", + "get-intrinsic": "^1.1.3", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.1", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "devOptional": true + }, + "deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==" + }, + "default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "requires": { + "execa": "^5.0.0" + }, + "dependencies": { + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "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" + } + }, + "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==" + }, + "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==" + } + } + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" + }, + "define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "requires": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" + }, + "detab": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", + "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", + "requires": { + "repeat-string": "^1.5.4" + } + }, + "detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" + }, + "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 + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "detect-port": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", + "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", + "requires": { + "address": "^1.0.1", + "debug": "4" + } + }, + "detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "requires": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "diff-sequences": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", + "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "requires": { + "path-type": "^4.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" + }, + "dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "requires": { + "@leichtgewicht/ip-codec": "^2.0.1" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "devOptional": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "requires": { + "utila": "~0.4" + } + }, + "dom-helpers": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", + "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", + "requires": { + "@babel/runtime": "^7.1.2" + } + }, + "dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "dom7": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", + "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", + "requires": { + "ssr-window": "^4.0.0" + } + }, + "domain-browser": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", + "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==" + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "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 + } + } + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + }, + "dompurify": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", + "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" + }, + "domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + } + }, + "dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "requires": { + "is-obj": "^2.0.0" + }, + "dependencies": { + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + } + } + }, + "dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true + }, + "duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "electron-to-chromium": { + "version": "1.4.315", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.315.tgz", + "integrity": "sha512-ndBQYz3Eyy3rASjjQ9poMJGoAlsZ/aZnq6GBsGL4w/4sWIAwiUHVSsMuADbxa8WJw7pZ0oxLpGbtoDt4vRTdCg==" + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "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==" + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" + }, + "emoticon": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", + "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "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" + } + }, + "entities": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==" + }, + "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" + } + }, + "error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "requires": { + "stackframe": "^1.3.4" + } + }, + "es-abstract": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz", + "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==", + "dev": true, + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.4", + "is-array-buffer": "^3.0.1", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" + } + }, + "es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + } + }, + "es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" + }, + "es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + } + }, + "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==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==" + }, + "es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "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.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + } + } + }, + "eslint": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", + "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", + "devOptional": true, + "requires": { + "@eslint/eslintrc": "^2.0.0", + "@eslint/js": "8.35.0", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "dependencies": { + "eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "devOptional": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": true + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "devOptional": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "devOptional": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "devOptional": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "devOptional": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "devOptional": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "devOptional": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "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==", + "devOptional": true + }, + "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==", + "devOptional": 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==", + "devOptional": true + } + } + }, + "eslint-config-prettier": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", + "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", + "dev": true, + "requires": {} + }, + "eslint-plugin-markdown": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz", + "integrity": "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==", + "dev": true, + "requires": { + "mdast-util-from-markdown": "^0.8.5" + } + }, + "eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0" + } + }, + "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==", + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "devOptional": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "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==", + "devOptional": true + } + } + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "devOptional": true + }, + "espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "devOptional": true, + "requires": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "devOptional": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": 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==", + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "eta": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/eta/-/eta-2.0.1.tgz", + "integrity": "sha512-46E2qDPDm7QA+usjffUWz9KfXsxVZclPOuKsXs4ZWZdI/X1wpDF7AO424pt7fdYohCzWsIkXAhNGXSlwo5naAg==" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" + }, + "eval": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", + "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", + "requires": { + "@types/node": "*", + "require-like": ">= 0.1.1" + } + }, + "eventemitter2": { + "version": "6.4.7", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", + "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", + "dev": true + }, + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + } + }, + "executable": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", + "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", + "dev": true, + "requires": { + "pify": "^2.2.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true + }, + "expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" + }, + "expect": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", + "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", + "dev": true, + "requires": { + "@jest/expect-utils": "^29.4.3", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.4.3", + "jest-message-util": "^29.4.3", + "jest-util": "^29.4.3" + } + }, + "express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "requires": { + "safe-buffer": "5.2.1" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "dev": true + }, + "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==" + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "fast-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==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "devOptional": true + }, + "fast-loops": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-loops/-/fast-loops-1.1.3.tgz", + "integrity": "sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g==" + }, + "fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "fast-shallow-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-shallow-equal/-/fast-shallow-equal-1.0.0.tgz", + "integrity": "sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==" + }, + "fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", + "requires": { + "punycode": "^1.3.2" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + } + } + }, + "fastest-stable-stringify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fastest-stable-stringify/-/fastest-stable-stringify-2.0.2.tgz", + "integrity": "sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==" + }, + "fastestsmallesttextencoderdecoder": { + "version": "1.0.22", + "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz", + "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==" + }, + "fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "requires": { + "reusify": "^1.0.4" + } + }, + "fault": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", + "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", + "requires": { + "format": "^0.2.0" + } + }, + "faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "requires": { + "bser": "2.1.1" + } + }, + "fbemitter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", + "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", + "requires": { + "fbjs": "^3.0.0" + } + }, + "fbjs": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz", + "integrity": "sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==", + "requires": { + "cross-fetch": "^3.1.5", + "fbjs-css-vars": "^1.0.0", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^0.7.30" + } + }, + "fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "feed": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", + "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", + "requires": { + "xml-js": "^1.6.11" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + } + } + }, + "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==", + "devOptional": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "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==" + }, + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==" + }, + "filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==" + }, + "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==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "filter-obj": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", + "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==" + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "requires": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "devOptional": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "devOptional": true + }, + "flux": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", + "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", + "requires": { + "fbemitter": "^3.0.0", + "fbjs": "^3.0.1" + } + }, + "fnv-plus": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/fnv-plus/-/fnv-plus-1.3.1.tgz", + "integrity": "sha512-Gz1EvfOneuFfk4yG458dJ3TLJ7gV19q3OM/vVvvHf7eT02Hm1DleB4edsia6ahbKgAYxO9gvyQ1ioWZR+a00Yw==" + }, + "follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "requires": { + "is-callable": "^1.1.3" + } + }, + "foreach": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", + "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true + }, + "fork-ts-checker-webpack-plugin": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", + "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", + "requires": { + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" + }, + "dependencies": { + "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" + } + }, + "schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "requires": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" + } + } + }, + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==" + }, + "formdata-node": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", + "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", + "requires": { + "node-domexception": "1.0.0", + "web-streams-polyfill": "4.0.0-beta.3" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" + }, + "fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" + }, + "fs": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.2.tgz", + "integrity": "sha512-YAiVokMCrSIFZiroB1oz51hPiPRVcUtSa4x2U5RYXyhS9VAPdiFigKbPTnOSq7XY8wd3FIVPYmXpo5lMzFmxgg==" + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "fscreen": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fscreen/-/fscreen-1.2.0.tgz", + "integrity": "sha512-hlq4+BU0hlPmwsFjwGGzZ+OZ9N/wq9Ljg/sq3pX+2CD7hrJsX9tJgWWK/wiNTFM212CLHWhicOoqwXyZGGetJg==" + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "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.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true + }, + "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==" + }, + "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.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "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": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "getos": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", + "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", + "dev": true, + "requires": { + "async": "^3.2.0" + } + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" + }, + "github-slugger": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", + "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "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==", + "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==" + }, + "global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "requires": { + "ini": "2.0.0" + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "requires": { + "global-prefix": "^3.0.0" + } + }, + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "dependencies": { + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + }, + "globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3" + } + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "requires": { + "get-intrinsic": "^1.1.3" + } + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + } + } + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "devOptional": true + }, + "graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", + "optional": true, + "requires": { + "lodash": "^4.17.15" + } + }, + "gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "requires": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "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==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + } + } + }, + "gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "requires": { + "duplexer": "^0.1.2" + } + }, + "handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "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.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==" + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hast-to-hyperscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", + "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "requires": { + "@types/unist": "^2.0.3", + "comma-separated-tokens": "^1.0.0", + "property-information": "^5.3.0", + "space-separated-tokens": "^1.0.0", + "style-to-object": "^0.3.0", + "unist-util-is": "^4.0.0", + "web-namespaces": "^1.0.0" + } + }, + "hast-util-from-parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", + "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "requires": { + "@types/parse5": "^5.0.0", + "hastscript": "^6.0.0", + "property-information": "^5.0.0", + "vfile": "^4.0.0", + "vfile-location": "^3.2.0", + "web-namespaces": "^1.0.0" + } + }, + "hast-util-is-element": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", + "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==" + }, + "hast-util-parse-selector": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", + "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==" + }, + "hast-util-raw": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", + "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", + "requires": { + "@types/hast": "^2.0.0", + "hast-util-from-parse5": "^6.0.0", + "hast-util-to-parse5": "^6.0.0", + "html-void-elements": "^1.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + } + } + }, + "hast-util-sanitize": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-4.1.0.tgz", + "integrity": "sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==", + "requires": { + "@types/hast": "^2.0.0" + } + }, + "hast-util-to-parse5": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", + "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "requires": { + "hast-to-hyperscript": "^9.0.0", + "property-information": "^5.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + } + }, + "hast-util-to-text": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", + "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", + "requires": { + "hast-util-is-element": "^1.0.0", + "repeat-string": "^1.0.0", + "unist-util-find-after": "^3.0.0" + } + }, + "hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==" + }, + "hastscript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", + "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "requires": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" + }, + "history": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", + "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", + "requires": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^3.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^1.0.1" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "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==" + } + } + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "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" + } + }, + "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==" + }, + "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" + } + } + } + }, + "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-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" + }, + "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 + }, + "html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "requires": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "dependencies": { + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" + } + } + }, + "html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==" + }, + "html-void-elements": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", + "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==" + }, + "html-webpack-plugin": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "requires": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + } + }, + "html-webpack-plugin-4": { + "version": "npm:html-webpack-plugin@4.5.2", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", + "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", + "dev": true, + "requires": { + "@types/html-minifier-terser": "^5.0.0", + "@types/tapable": "^1.0.5", + "@types/webpack": "^4.41.8", + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.20", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" + }, + "dependencies": { + "@types/html-minifier-terser": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", + "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "requires": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + } + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "pretty-error": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "dev": true, + "requires": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "renderkid": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "dev": true, + "requires": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, + "terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "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 + } + } + } + } + }, + "html-webpack-plugin-5": { + "version": "npm:html-webpack-plugin@5.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz", + "integrity": "sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==", + "dev": true, + "requires": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + } + }, + "htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, + "http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" + }, + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "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" + } + }, + "http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "requires": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "dependencies": { + "is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==" + } + } + }, + "http-reasons": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", + "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" + }, + "http-signature": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", + "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^2.0.2", + "sshpk": "^1.14.1" + } + }, + "http2-client": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", + "integrity": "sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==" + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "httpsnippet-lite": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/httpsnippet-lite/-/httpsnippet-lite-3.0.5.tgz", + "integrity": "sha512-So4qTXY5iFj5XtFDwyz2PicUu+8NWrI8e8h+ZeZoVtMNcFQp4FFIntBHUE+JPUG6QQU8o1VHCy+X4ETRDwt9CA==", + "requires": { + "@types/har-format": "^1.2.10", + "formdata-node": "^4.4.1", + "stringify-object": "3.3.0" + } + }, + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true + }, + "husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true + }, + "hyphenate-style-name": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", + "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==" + }, + "image-size": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", + "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", + "requires": { + "queue": "6.0.2" + } + }, + "immer": { + "version": "9.0.19", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.19.tgz", + "integrity": "sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==" + }, + "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" + } + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==" + }, + "import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, + "infima": { + "version": "0.2.0-alpha.42", + "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.42.tgz", + "integrity": "sha512-ift8OXNbQQwtbIt6z16KnSWP7uJ/SysSMFI4F87MNRTicypfl4Pv3E2OGVv6N3nSZFJvA8imYulCBS64iyHYww==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "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==" + }, + "ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" + }, + "inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "inline-style-prefixer": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.4.tgz", + "integrity": "sha512-FwXmZC2zbeeS7NzGjJ6pAiqRhXR0ugUShSNb6GApMl6da0/XGc4MOJsoWAywia52EEWbXNSy0pzkwz/+Y+swSg==", + "requires": { + "css-in-js-utils": "^3.1.0", + "fast-loops": "^1.1.3" + } + }, + "internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "requires": { + "loose-envify": "^1.0.0" + } + }, + "ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==" + }, + "is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==" + }, + "is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" + }, + "is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dev": true, + "requires": { + "ci-info": "^3.2.0" + } + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==" + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + }, + "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==" + }, + "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-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==" + }, + "is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "requires": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + } + }, + "is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true + }, + "is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + } + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, + "is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==" + }, + "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==" + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" + }, + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" + }, + "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-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==" + }, + "is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==" + }, + "is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==" + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, + "is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==" + }, + "is-word-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==" + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } + }, + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==" + }, + "isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "requires": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "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.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + } + }, + "istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "dev": true, + "requires": { + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + } + }, + "jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "dependencies": { + "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" + } + }, + "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 + }, + "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 + } + } + }, + "jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "requires": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "requires": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-diff": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", + "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "requires": { + "detect-newline": "^3.0.0" + } + }, + "jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-get-type": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", + "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", + "dev": true + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@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.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "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" + } + } + } + }, + "jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "requires": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + } + } + }, + "jest-matcher-utils": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", + "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "jest-message-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", + "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.4.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.4.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "dependencies": { + "@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "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 + }, + "pretty-format": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", + "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*" + } + }, + "jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "requires": {} + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + } + }, + "jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "dependencies": { + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "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" + } + } + } + }, + "jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "dependencies": { + "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" + } + }, + "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 + }, + "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 + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + } + }, + "jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "requires": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "dependencies": { + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", + "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", + "requires": { + "@jest/types": "^29.4.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "dependencies": { + "@jest/types": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", + "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", + "requires": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", + "requires": { + "@types/yargs-parser": "*" + } + } + } + }, + "jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + } + } + }, + "jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "dependencies": { + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + } + } + }, + "jest-worker": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.4.3.tgz", + "integrity": "sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA==", + "requires": { + "@types/node": "*", + "jest-util": "^29.4.3", + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "joi": { + "version": "17.8.3", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.8.3.tgz", + "integrity": "sha512-q5Fn6Tj/jR8PfrLrx4fpGH4v9qM6o+vDUfD4/3vxxyg34OmKcNqYZ1qn2mpLza96S8tL0p0rIw2gOZX+/cTg9w==", + "requires": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "jotai": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/jotai/-/jotai-1.3.9.tgz", + "integrity": "sha512-b6DvH9gf+7TfjaboCO54g+C0yhaakIaUBtjLf0dk1p15FWCzNw/93sezdXy9cCaZ8qcEdMLJcjBwQlORmIq29g==", + "requires": {} + }, + "js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" + }, + "js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==" + }, + "js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "devOptional": true + }, + "js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "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": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "requires": { + "argparse": "^2.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "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.6", + "xml-name-validator": "^3.0.0" + }, + "dependencies": { + "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" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "tough-cookie": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", + "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "dev": true, + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + } + }, + "universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true + } + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" + }, + "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-pointer": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", + "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", + "requires": { + "foreach": "^2.0.4" + } + }, + "json-promise": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/json-promise/-/json-promise-1.1.8.tgz", + "integrity": "sha512-rz31P/7VfYnjQFrF60zpPTT0egMPlc8ZvIQHWs4ZtNZNnAXRmXo6oS+6eyWr5sEMG03OVhklNrTXxiIRYzoUgQ==", + "requires": { + "bluebird": "*" + } + }, + "json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "json-schema-compare": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", + "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", + "requires": { + "lodash": "^4.17.4" + } + }, + "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==" + }, + "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "devOptional": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==" + }, + "jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jsprim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", + "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "katex": { + "version": "0.13.24", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", + "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", + "requires": { + "commander": "^8.0.0" + }, + "dependencies": { + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" + } + } + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "requires": { + "json-buffer": "3.0.0" + } + }, + "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==" + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" + }, + "klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==" + }, + "latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "requires": { + "package-json": "^6.3.0" + } + }, + "lazy-ass": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", + "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", + "dev": true + }, + "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==" + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "devOptional": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==" + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "lint-staged": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", + "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", + "dev": true, + "requires": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.19", + "commander": "^9.4.1", + "debug": "^4.3.4", + "execa": "^6.1.0", + "lilconfig": "2.0.6", + "listr2": "^5.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.6.0", + "string-argv": "^0.3.1", + "yaml": "^2.1.3" + }, + "dependencies": { + "cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "requires": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + } + }, + "commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true + }, + "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 + }, + "execa": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", + "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^3.0.1", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + } + }, + "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 + }, + "human-signals": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", + "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true + }, + "is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true + }, + "listr2": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz", + "integrity": "sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.19", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.8.0", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "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 + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true + }, + "npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "requires": { + "path-key": "^4.0.0" + } + }, + "onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "requires": { + "mimic-fn": "^4.0.0" + } + }, + "path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true + }, + "slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + } + } + }, + "strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "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" + }, + "dependencies": { + "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 + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "yaml": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz", + "integrity": "sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==", + "dev": true + } + } + }, + "liquid-json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", + "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==" + }, + "listr2": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", + "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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" + } + } + } + }, + "loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==" + }, + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "local-pkg": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.1.tgz", + "integrity": "sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==", + "dev": true + }, + "locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "requires": { + "p-locate": "^6.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lodash.curry": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", + "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "lodash.flow": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", + "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "lodash.isequalwith": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isequalwith/-/lodash.isequalwith-4.4.0.tgz", + "integrity": "sha512-dcZON0IalGBpRmJBmMkaoV7d3I80R2O+FrzsZyHdNSFrANq/cgDqKQNmAHE8UEj4+QYWwwhkQOVdLHiAopzlsQ==" + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "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==", + "devOptional": true + }, + "lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "dev": true + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "lodash.pickby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz", + "integrity": "sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==" + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + } + }, + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.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 + }, + "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" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==" + }, + "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" + } + }, + "lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "requires": { + "tslib": "^2.0.3" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" + }, + "lz-string": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", + "integrity": "sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==", + "dev": true + }, + "magic-error": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/magic-error/-/magic-error-0.0.1.tgz", + "integrity": "sha512-1+N1ET8cbC5bfLQZcRojClzgK2gbUt9keTMr9OJeuXnQKWsfwRRRICuMA3HKaCIXFEgKzxivuMGCNKD7cdU5pg==" + }, + "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==", + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "requires": { + "tmpl": "1.0.5" + } + }, + "mark.js": { + "version": "8.11.1", + "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", + "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" + }, + "markdown-escapes": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==" + }, + "markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "requires": { + "repeat-string": "^1.0.0" + } + }, + "marked": { + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", + "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==" + }, + "match-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", + "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", + "requires": { + "@babel/runtime": "^7.12.5", + "remove-accents": "0.4.2" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdast-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "requires": { + "unist-util-remove": "^2.0.0" + } + }, + "mdast-util-definitions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", + "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "mdast-util-find-and-replace": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", + "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", + "requires": { + "escape-string-regexp": "^4.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + } + }, + "mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "requires": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "mdast-util-frontmatter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", + "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", + "requires": { + "micromark-extension-frontmatter": "^0.2.0" + } + }, + "mdast-util-gfm": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", + "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", + "requires": { + "mdast-util-gfm-autolink-literal": "^0.1.0", + "mdast-util-gfm-strikethrough": "^0.2.0", + "mdast-util-gfm-table": "^0.1.0", + "mdast-util-gfm-task-list-item": "^0.1.0", + "mdast-util-to-markdown": "^0.6.1" + } + }, + "mdast-util-gfm-autolink-literal": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", + "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", + "requires": { + "ccount": "^1.0.0", + "mdast-util-find-and-replace": "^1.1.0", + "micromark": "^2.11.3" + } + }, + "mdast-util-gfm-strikethrough": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", + "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", + "requires": { + "mdast-util-to-markdown": "^0.6.0" + } + }, + "mdast-util-gfm-table": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", + "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", + "requires": { + "markdown-table": "^2.0.0", + "mdast-util-to-markdown": "~0.6.0" + } + }, + "mdast-util-gfm-task-list-item": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", + "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", + "requires": { + "mdast-util-to-markdown": "~0.6.0" + } + }, + "mdast-util-to-hast": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", + "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^4.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "requires": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + } + }, + "mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==" + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" + }, + "memfs": { + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.13.tgz", + "integrity": "sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==", + "requires": { + "fs-monkey": "^1.0.3" + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "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==" + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" + }, + "micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "requires": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "micromark-extension-frontmatter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", + "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", + "requires": { + "fault": "^1.0.0" + } + }, + "micromark-extension-gfm": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", + "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", + "requires": { + "micromark": "~2.11.0", + "micromark-extension-gfm-autolink-literal": "~0.5.0", + "micromark-extension-gfm-strikethrough": "~0.6.5", + "micromark-extension-gfm-table": "~0.4.0", + "micromark-extension-gfm-tagfilter": "~0.3.0", + "micromark-extension-gfm-task-list-item": "~0.3.0" + } + }, + "micromark-extension-gfm-autolink-literal": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", + "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", + "requires": { + "micromark": "~2.11.3" + } + }, + "micromark-extension-gfm-strikethrough": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", + "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromark-extension-gfm-table": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", + "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromark-extension-gfm-tagfilter": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", + "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==" + }, + "micromark-extension-gfm-task-list-item": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", + "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "microseconds": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", + "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-format": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", + "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", + "requires": { + "charset": "^1.0.0" + } + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" + }, + "mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" + }, + "min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.2.tgz", + "integrity": "sha512-EdlUizq13o0Pd+uCp+WO/JpkLvHRVGt97RqfeGhXqAcorYo1ypJSpkV+WDT0vY/kmh/p7wRdJNJtuyK540PXDw==", + "requires": { + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "requires": { + "minimist": "^1.2.6" + } + }, + "mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "mobx": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.8.0.tgz", + "integrity": "sha512-+o/DrHa4zykFMSKfS8Z+CPSEg5LW9tSNGTuN8o6MF1GKxlfkSHSeJn5UtgxvPkGgaouplnrLXCF+duAsmm6FHQ==" + }, + "mobx-react": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", + "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", + "requires": { + "mobx-react-lite": "^3.4.0" + } + }, + "mobx-react-lite": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.0.tgz", + "integrity": "sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==", + "requires": {} + }, + "monaco-editor": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.36.1.tgz", + "integrity": "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==", + "peer": true + }, + "mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "requires": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + } + }, + "nano-memoize": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/nano-memoize/-/nano-memoize-1.3.1.tgz", + "integrity": "sha512-wQiW3xHptgGlec/Zbo7oq6Zz4kKoK8TaIIs1irTO9iJOGTIG3lnQRUJfH73bJ/rn7MOE4sTdSU+ALPGEidaijQ==" + }, + "nano-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", + "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", + "requires": { + "big-integer": "^1.6.16" + } + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" + }, + "napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "devOptional": true + }, + "natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + }, + "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==" + }, + "no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node-abi": { + "version": "3.33.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.33.0.tgz", + "integrity": "sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==", + "requires": { + "semver": "^7.3.5" + } + }, + "node-abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", + "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==" + }, + "node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" + }, + "node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "requires": { + "lodash": "^4.17.21" + } + }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + }, + "dependencies": { + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + } + } + }, + "node-fetch-h2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz", + "integrity": "sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==", + "requires": { + "http2-client": "^1.2.5" + } + }, + "node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node-polyfill-webpack-plugin": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", + "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", + "requires": { + "assert": "^2.0.0", + "browserify-zlib": "^0.2.0", + "buffer": "^6.0.3", + "console-browserify": "^1.2.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.12.0", + "domain-browser": "^4.19.0", + "events": "^3.3.0", + "filter-obj": "^2.0.2", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "punycode": "^2.1.1", + "querystring-es3": "^0.2.1", + "readable-stream": "^3.6.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.3.0", + "timers-browserify": "^2.0.12", + "tty-browserify": "^0.0.1", + "url": "^0.11.0", + "util": "^0.12.4", + "vm-browserify": "^1.1.2" + }, + "dependencies": { + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + } + } + }, + "node-readfiles": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", + "integrity": "sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==", + "requires": { + "es6-promise": "^3.2.1" + } + }, + "node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==" + }, + "normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" + }, + "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==", + "requires": { + "path-key": "^3.0.0" + } + }, + "nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "requires": { + "boolbase": "^1.0.0" + } + }, + "nwsapi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "dev": true + }, + "oas-kit-common": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/oas-kit-common/-/oas-kit-common-1.0.8.tgz", + "integrity": "sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==", + "requires": { + "fast-safe-stringify": "^2.0.7" + } + }, + "oas-linter": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/oas-linter/-/oas-linter-3.2.2.tgz", + "integrity": "sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==", + "requires": { + "@exodus/schemasafe": "^1.0.0-rc.2", + "should": "^13.2.1", + "yaml": "^1.10.0" + } + }, + "oas-resolver": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz", + "integrity": "sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==", + "requires": { + "node-fetch-h2": "^2.3.0", + "oas-kit-common": "^1.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "dependencies": { + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + } + } + }, + "oas-schema-walker": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", + "integrity": "sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==" + }, + "oas-validator": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz", + "integrity": "sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==", + "requires": { + "call-me-maybe": "^1.0.1", + "oas-kit-common": "^1.0.8", + "oas-linter": "^3.2.2", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "reftools": "^1.1.9", + "should": "^13.2.1", + "yaml": "^1.10.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" + }, + "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.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "dev": true, + "requires": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "oblivious-set": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", + "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "openapi-sampler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.3.1.tgz", + "integrity": "sha512-Ert9mvc2tLPmmInwSyGZS+v4Ogu9/YoZuq9oP3EdUklg2cad6+IGndP9yqJJwbgdXwZibiq5fpv6vYujchdJFg==", + "requires": { + "@types/json-schema": "^7.0.7", + "json-pointer": "0.6.2" + } + }, + "openapi3-ts": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/openapi3-ts/-/openapi3-ts-2.0.2.tgz", + "integrity": "sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==", + "requires": { + "yaml": "^1.10.2" + } + }, + "opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==" + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "devOptional": 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" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, + "ospath": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", + "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", + "dev": true + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" + }, + "p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "requires": { + "yocto-queue": "^1.0.0" + } + }, + "p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "requires": { + "p-limit": "^4.0.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "requires": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + } + }, + "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==" + }, + "package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "requires": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "papaparse": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.0.tgz", + "integrity": "sha512-ZBQABWG09p+u8rFoJVl/GhgxZ5zy9Zh1Lu/LVc7VX5T4nljjC14/YTcpebYwqP218B9X307eBOP7Tuhoqv7v7w==" + }, + "param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "requires": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "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-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "requires": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "parse-json": { + "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" + } + }, + "parse-numeric-range": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + }, + "parse-srcset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", + "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" + }, + "parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "requires": { + "entities": "^4.4.0" + } + }, + "parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "requires": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" + }, + "path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "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-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + } + } + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "perfect-scrollbar": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", + "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + }, + "pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true + }, + "pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true + }, + "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==", + "requires": { + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "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==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "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==" + } + } + }, + "pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "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" + } + }, + "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-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": "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": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + } + } + }, + "pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==" + }, + "polished": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz", + "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", + "requires": { + "@babel/runtime": "^7.17.8" + } + }, + "postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-calc": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "requires": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "requires": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "requires": {} + }, + "postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "requires": {} + }, + "postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "requires": {} + }, + "postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "requires": {} + }, + "postcss-discard-unused": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", + "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-loader": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.2.tgz", + "integrity": "sha512-fUJzV/QH7NXUAqV8dWJ9Lg4aTkDCezpTS5HgJ2DvqznexTbSTxgi/dTECvTZ15BwKTtk8G/bqI/QTu2HPd3ZCg==", + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.8" + } + }, + "postcss-merge-idents": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", + "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", + "requires": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "requires": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" + } + }, + "postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "requires": { + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "requires": { + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "requires": {} + }, + "postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "requires": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "requires": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "requires": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-reduce-idents": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", + "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "requires": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-sort-media-queries": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.3.0.tgz", + "integrity": "sha512-jAl8gJM2DvuIJiI9sL1CuiHtKM4s5aEIomkU8G3LFvbP+p8i7Sz8VV63uieTgoewGqKbi+hxBTiOKJlB35upCg==", + "requires": { + "sort-css-media-queries": "2.1.0" + } + }, + "postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "requires": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + } + }, + "postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "requires": { + "postcss-selector-parser": "^6.0.5" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "postcss-zindex": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", + "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", + "requires": {} + }, + "postman-collection": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/postman-collection/-/postman-collection-4.1.7.tgz", + "integrity": "sha512-fMICmDa6megCH/jKq66MZVcR26wrSn1G/rjIkqrtdB6Df4u/I+XLRbWueQnz91Jwm3FR+su1refy4gwIjLLGLg==", + "requires": { + "@faker-js/faker": "5.5.3", + "file-type": "3.9.0", + "http-reasons": "0.1.0", + "iconv-lite": "0.6.3", + "liquid-json": "0.3.1", + "lodash": "4.17.21", + "mime-format": "2.0.1", + "mime-types": "2.1.35", + "postman-url-encoder": "3.0.5", + "semver": "7.3.8", + "uuid": "8.3.2" + }, + "dependencies": { + "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" + } + } + } + }, + "postman-url-encoder": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", + "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", + "requires": { + "punycode": "^2.1.1" + } + }, + "prebuild-install": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", + "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", + "requires": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "devOptional": true + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==" + }, + "prettier": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz", + "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==", + "dev": true, + "peer": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "requires": { + "fast-diff": "^1.1.2" + } + }, + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true + }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==" + }, + "pretty-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", + "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", + "requires": { + "lodash": "^4.17.20", + "renderkid": "^3.0.0" + } + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "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 + }, + "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==", + "dev": true + } + } + }, + "pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==" + }, + "prism-react-renderer": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", + "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", + "requires": {} + }, + "prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + }, + "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==" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "~2.0.3" + } + }, + "prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + } + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "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==" + } + } + }, + "property-information": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", + "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", + "requires": { + "xtend": "^4.0.0" + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "dependencies": { + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + } + } + }, + "proxy-from-env": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", + "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", + "dev": true + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" + }, + "pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "requires": { + "escape-goat": "^2.0.0" + } + }, + "pure-color": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", + "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" + }, + "qs": { + "version": "6.10.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", + "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + }, + "query-string": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-8.1.0.tgz", + "integrity": "sha512-BFQeWxJOZxZGix7y+SByG3F36dA0AbTy9o6pSmKFcFz7DAj0re9Frkty3saBn3nHo3D0oZJ/+rx3r8H8r8Jbpw==", + "requires": { + "decode-uri-component": "^0.4.1", + "filter-obj": "^5.1.0", + "split-on-first": "^3.0.0" + }, + "dependencies": { + "filter-obj": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", + "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==" + } + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" + }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "requires": { + "inherits": "~2.0.3" + } + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==" + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + } + } + }, + "raw-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", + "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" + } + } + }, + "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" + } + }, + "react-base16-styling": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", + "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", + "requires": { + "base16": "^1.0.0", + "lodash.curry": "^4.0.1", + "lodash.flow": "^3.3.0", + "pure-color": "^1.2.0" + } + }, + "react-dev-utils": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", + "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", + "requires": { + "@babel/code-frame": "^7.16.0", + "address": "^1.1.2", + "browserslist": "^4.18.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "detect-port-alt": "^1.1.6", + "escape-string-regexp": "^4.0.0", + "filesize": "^8.0.6", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^6.5.0", + "global-modules": "^2.0.0", + "globby": "^11.0.4", + "gzip-size": "^6.0.0", + "immer": "^9.0.7", + "is-root": "^2.1.0", + "loader-utils": "^3.2.0", + "open": "^8.4.0", + "pkg-up": "^3.1.0", + "prompts": "^2.4.2", + "react-error-overlay": "^6.0.11", + "recursive-readdir": "^2.2.2", + "shell-quote": "^1.7.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==" + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "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==" + }, + "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==" + } + } + }, + "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-error-overlay": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", + "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" + }, + "react-fast-compare": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", + "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" + }, + "react-flow-renderer": { + "version": "10.3.17", + "resolved": "https://registry.npmjs.org/react-flow-renderer/-/react-flow-renderer-10.3.17.tgz", + "integrity": "sha512-bywiqVErlh5kCDqw3x0an5Ur3mT9j9CwJsDwmhmz4i1IgYM1a0SPqqEhClvjX+s5pU4nHjmVaGXWK96pwsiGcQ==", + "optional": true, + "requires": { + "@babel/runtime": "^7.18.9", + "@types/d3": "^7.4.0", + "@types/resize-observer-browser": "^0.1.7", + "classcat": "^5.0.3", + "d3-drag": "^3.0.0", + "d3-selection": "^3.0.0", + "d3-zoom": "^3.0.0", + "zustand": "^3.7.2" + } + }, + "react-full-screen": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/react-full-screen/-/react-full-screen-1.1.1.tgz", + "integrity": "sha512-xoEgkoTiN0dw9cjYYGViiMCBYbkS97BYb4bHPhQVWXj1UnOs8PZ1rPzpX+2HMhuvQV1jA5AF9GaRbO3fA5aZtg==", + "requires": { + "fscreen": "^1.0.2" + } + }, + "react-helmet-async": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", + "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", + "requires": { + "@babel/runtime": "^7.12.5", + "invariant": "^2.2.4", + "prop-types": "^15.7.2", + "react-fast-compare": "^3.2.0", + "shallowequal": "^1.1.0" + } + }, + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "react-json-view": { + "version": "1.21.3", + "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", + "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", + "requires": { + "flux": "^4.0.1", + "react-base16-styling": "^0.6.0", + "react-lifecycles-compat": "^3.0.4", + "react-textarea-autosize": "^8.3.2" + } + }, + "react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "react-loadable": { + "version": "npm:@docusaurus/react-loadable@5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "requires": { + "@types/react": "*", + "prop-types": "^15.6.2" + } + }, + "react-loadable-ssr-addon-v5-slorber": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", + "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", + "requires": { + "@babel/runtime": "^7.10.3" + } + }, + "react-overflow-list": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/react-overflow-list/-/react-overflow-list-0.5.0.tgz", + "integrity": "sha512-+UegukgQ10E4ll3txz4DJyrnCgZ3eDVuv5dvR8ziyG5FfgCDZcUKeKhIgbU90oyqQa21aH4oLOoGKt0TiYJRmg==", + "requires": { + "react-use": "^17.3.1" + }, + "dependencies": { + "react-use": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz", + "integrity": "sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q==", + "requires": { + "@types/js-cookie": "^2.2.6", + "@xobotyi/scrollbar-width": "^1.9.5", + "copy-to-clipboard": "^3.3.1", + "fast-deep-equal": "^3.1.3", + "fast-shallow-equal": "^1.0.0", + "js-cookie": "^2.2.1", + "nano-css": "^5.3.1", + "react-universal-interface": "^0.6.2", + "resize-observer-polyfill": "^1.5.1", + "screenfull": "^5.1.0", + "set-harmonic-interval": "^1.0.1", + "throttle-debounce": "^3.0.1", + "ts-easing": "^0.2.0", + "tslib": "^2.1.0" + }, + "dependencies": { + "nano-css": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/nano-css/-/nano-css-5.3.5.tgz", + "integrity": "sha512-vSB9X12bbNu4ALBu7nigJgRViZ6ja3OU7CeuiV1zMIbXOdmkLahgtPmh3GBOlDxbKY0CitqlPdOReGlBLSp+yg==", + "requires": { + "css-tree": "^1.1.2", + "csstype": "^3.0.6", + "fastest-stable-stringify": "^2.0.2", + "inline-style-prefixer": "^6.0.0", + "rtl-css-js": "^1.14.0", + "sourcemap-codec": "^1.4.8", + "stacktrace-js": "^2.0.2", + "stylis": "^4.0.6" + } + } + } + } + } + }, + "react-query": { + "version": "3.39.3", + "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", + "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", + "requires": { + "@babel/runtime": "^7.5.5", + "broadcast-channel": "^3.4.1", + "match-sorter": "^6.0.2" + } + }, + "react-router": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", + "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", + "requires": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "hoist-non-react-statics": "^3.1.0", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.2", + "react-is": "^16.6.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.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==" + } + } + }, + "react-router-config": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", + "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", + "requires": { + "@babel/runtime": "^7.1.2" + } + }, + "react-router-dom": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", + "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", + "requires": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.3.4", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + } + }, + "react-router-hash-link": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/react-router-hash-link/-/react-router-hash-link-2.4.3.tgz", + "integrity": "sha512-NU7GWc265m92xh/aYD79Vr1W+zAIXDWp3L2YZOYP4rCqPnJ6LI6vh3+rKgkidtYijozHclaEQTAHaAaMWPVI4A==", + "requires": { + "prop-types": "^15.7.2" + } + }, + "react-tabs": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-3.2.3.tgz", + "integrity": "sha512-jx325RhRVnS9DdFbeF511z0T0WEqEoMl1uCE3LoZ6VaZZm7ytatxbum0B8bCTmaiV0KsU+4TtLGTGevCic7SWg==", + "requires": { + "clsx": "^1.1.0", + "prop-types": "^15.5.0" + } + }, + "react-textarea-autosize": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.1.tgz", + "integrity": "sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==", + "requires": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + } + }, + "react-tooltip": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", + "integrity": "sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==", + "requires": { + "prop-types": "^15.8.1", + "uuid": "^7.0.3" + }, + "dependencies": { + "uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==" + } + } + }, + "react-universal-interface": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", + "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", + "requires": {} + }, + "react-waypoint": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/react-waypoint/-/react-waypoint-10.3.0.tgz", + "integrity": "sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==", + "requires": { + "@babel/runtime": "^7.12.5", + "consolidated-events": "^1.1.0 || ^2.0.0", + "prop-types": "^15.0.0", + "react-is": "^17.0.1 || ^18.0.0" + } + }, + "readable-stream": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", + "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "requires": { + "picomatch": "^2.2.1" + } + }, + "reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "requires": { + "resolve": "^1.1.6" + } + }, + "recursive-readdir": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "requires": { + "minimatch": "^3.0.5" + } + }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, + "redoc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.0.0.tgz", + "integrity": "sha512-rU8iLdAkT89ywOkYk66Mr+IofqaMASlRvTew0dJvopCORMIPUcPMxjlJbJNC6wsn2vvMnpUFLQ/0ISDWn9BWag==", + "requires": { + "@redocly/openapi-core": "^1.0.0-beta.104", + "classnames": "^2.3.1", + "decko": "^1.2.0", + "dompurify": "^2.2.8", + "eventemitter3": "^4.0.7", + "json-pointer": "^0.6.2", + "lunr": "^2.3.9", + "mark.js": "^8.11.1", + "marked": "^4.0.15", + "mobx-react": "^7.2.0", + "openapi-sampler": "^1.3.0", + "path-browserify": "^1.0.1", + "perfect-scrollbar": "^1.5.5", + "polished": "^4.1.3", + "prismjs": "^1.27.0", + "prop-types": "^15.7.2", + "react-tabs": "^3.2.2", + "slugify": "~1.4.7", + "stickyfill": "^1.1.1", + "style-loader": "^3.3.1", + "swagger2openapi": "^7.0.6", + "url-template": "^2.0.8" + }, + "dependencies": { + "slugify": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", + "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==" + }, + "style-loader": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", + "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", + "requires": {} + } + } + }, + "reftools": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz", + "integrity": "sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==" + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "devOptional": true + }, + "regexpu-core": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.1.tgz", + "integrity": "sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==", + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "requires": { + "rc": "1.2.8" + } + }, + "registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "requires": { + "rc": "^1.2.8" + } + }, + "regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==" + } + } + }, + "rehype-katex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", + "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "requires": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.13.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "rehype-parse": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", + "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", + "requires": { + "hast-util-from-parse5": "^6.0.0", + "parse5": "^6.0.0" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==" + }, + "remark-emoji": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", + "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", + "requires": { + "emoticon": "^3.2.0", + "node-emoji": "^1.10.0", + "unist-util-visit": "^2.0.3" + } + }, + "remark-footnotes": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", + "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==" + }, + "remark-frontmatter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", + "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", + "requires": { + "mdast-util-frontmatter": "^0.2.0", + "micromark-extension-frontmatter": "^0.2.0" + } + }, + "remark-gfm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", + "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", + "requires": { + "mdast-util-gfm": "^0.1.0", + "micromark-extension-gfm": "^0.3.0" + } + }, + "remark-math": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-3.0.1.tgz", + "integrity": "sha512-epT77R/HK0x7NqrWHdSV75uNLwn8g9qTyMqCRCDujL0vj/6T6+yhdrR7mjELWtkse+Fw02kijAaBuVcHBor1+Q==" + }, + "remark-mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", + "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "requires": { + "@babel/core": "7.12.9", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@mdx-js/util": "1.6.22", + "is-alphabetical": "1.0.4", + "remark-parse": "8.0.3", + "unified": "9.2.0" + }, + "dependencies": { + "@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.1" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + }, + "unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + } + } + } + }, + "remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "requires": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + } + }, + "remark-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "requires": { + "mdast-squeeze-paragraphs": "^4.0.0" + } + }, + "remark-stringify": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", + "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", + "requires": { + "mdast-util-to-markdown": "^0.6.0" + } + }, + "remove-accents": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", + "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" + }, + "renderkid": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", + "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", + "requires": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + } + } + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==" + }, + "request-progress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", + "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", + "dev": true, + "requires": { + "throttleit": "^1.0.0" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" + }, + "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==" + }, + "require-like": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", + "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==" + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "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" + }, + "dependencies": { + "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 + } + } + }, + "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==" + }, + "resolve-pathname": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", + "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" + }, + "resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "requires": { + "lowercase-keys": "^1.0.0" + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rtl-css-js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", + "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", + "requires": { + "@babel/runtime": "^7.1.2" + } + }, + "rtl-detect": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", + "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" + }, + "rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "requires": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "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==" + }, + "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==" + } + } + }, + "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==", + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "safe-stable-stringify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", + "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sanitize-html": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.10.0.tgz", + "integrity": "sha512-JqdovUd81dG4k87vZt6uA6YhDfWkUGruUu/aPmXLxXi45gZExnt9Bnw/qeQU8oGf82vPyaE0vO4aH0PbobB9JQ==", + "requires": { + "deepmerge": "^4.2.2", + "escape-string-regexp": "^4.0.0", + "htmlparser2": "^8.0.0", + "is-plain-object": "^5.0.0", + "parse-srcset": "^1.0.2", + "postcss": "^8.3.11" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "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==", + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + }, + "screenfull": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz", + "integrity": "sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==" + }, + "section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "requires": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "requires": { + "node-forge": "^1" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + }, + "dependencies": { + "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==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "requires": { + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + } + } + }, + "serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve-handler": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", + "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", + "requires": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + }, + "dependencies": { + "mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" + }, + "mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "requires": { + "mime-db": "~1.33.0" + } + }, + "path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + } + } + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==" + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==" + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "set-harmonic-interval": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz", + "integrity": "sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==" + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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==", + "requires": { + "kind-of": "^6.0.2" + } + }, + "shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "sharp": { + "version": "0.30.7", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.7.tgz", + "integrity": "sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==", + "requires": { + "color": "^4.2.3", + "detect-libc": "^2.0.1", + "node-addon-api": "^5.0.0", + "prebuild-install": "^7.1.1", + "semver": "^7.3.7", + "simple-get": "^4.0.1", + "tar-fs": "^2.1.1", + "tunnel-agent": "^0.6.0" + }, + "dependencies": { + "color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "requires": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + } + } + } + }, + "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==", + "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==" + }, + "shell-quote": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", + "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==" + }, + "shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "should": { + "version": "13.2.3", + "resolved": "https://registry.npmjs.org/should/-/should-13.2.3.tgz", + "integrity": "sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==", + "requires": { + "should-equal": "^2.0.0", + "should-format": "^3.0.3", + "should-type": "^1.4.0", + "should-type-adaptors": "^1.0.1", + "should-util": "^1.0.0" + } + }, + "should-equal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/should-equal/-/should-equal-2.0.0.tgz", + "integrity": "sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==", + "requires": { + "should-type": "^1.4.0" + } + }, + "should-format": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/should-format/-/should-format-3.0.3.tgz", + "integrity": "sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==", + "requires": { + "should-type": "^1.3.0", + "should-type-adaptors": "^1.0.1" + } + }, + "should-type": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/should-type/-/should-type-1.4.0.tgz", + "integrity": "sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==" + }, + "should-type-adaptors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz", + "integrity": "sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==", + "requires": { + "should-type": "^1.3.0", + "should-util": "^1.0.0" + } + }, + "should-util": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/should-util/-/should-util-1.0.1.tgz", + "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, + "simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "requires": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "simple-html-tokenizer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz", + "integrity": "sha512-Mc/gH3RvlKvB/gkp9XwgDKEWrSYyefIJPGG8Jk1suZms/rISdUuVEMx5O1WBnTWaScvxXDvGJrZQWblUmQHjkQ==", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + } + } + }, + "sirv": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", + "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "requires": { + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^1.0.0" + } + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "sitemap": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", + "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", + "requires": { + "@types/node": "^17.0.5", + "@types/sax": "^1.2.1", + "arg": "^5.0.0", + "sax": "^1.2.4" + }, + "dependencies": { + "@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" + } + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "slugify": { + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.5.tgz", + "integrity": "sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==" + }, + "sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "requires": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "sort-css-media-queries": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", + "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + }, + "space-separated-tokens": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", + "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==" + }, + "spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "requires": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "speed-measure-webpack-plugin": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.4.2.tgz", + "integrity": "sha512-AtVzD0bnIy2/B0fWqJpJgmhcrfWFhBlduzSo0uwplr/QvB33ZNZj2NEth3NONgdnZJqicK0W0mSxnLSbsVCDbw==", + "dev": true, + "requires": { + "chalk": "^4.1.0" + } + }, + "split-on-first": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", + "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssr-window": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", + "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" + }, + "stack-generator": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", + "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", + "requires": { + "stackframe": "^1.3.4" + } + }, + "stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "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 + } + } + }, + "stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" + }, + "stacktrace-gps": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", + "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", + "requires": { + "source-map": "0.5.6", + "stackframe": "^1.3.4" + }, + "dependencies": { + "source-map": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==" + } + } + }, + "stacktrace-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", + "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", + "requires": { + "error-stack-parser": "^2.0.6", + "stack-generator": "^2.0.5", + "stacktrace-gps": "^3.0.4" + } + }, + "state-local": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/state-local/-/state-local-1.0.7.tgz", + "integrity": "sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==" + }, + "state-toggle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==" + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" + }, + "std-env": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.2.tgz", + "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==" + }, + "stickyfill": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", + "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" + }, + "stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "requires": { + "internal-slot": "^1.0.4" + } + }, + "stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "requires": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true + }, + "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": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "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-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==" + }, + "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==" + }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + }, + "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==" + }, + "style-loader": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0" + } + }, + "style-to-object": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", + "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "requires": { + "inline-style-parser": "0.1.1" + } + }, + "styled-components": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz", + "integrity": "sha512-++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==", + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^0.8.8", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "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" + } + } + } + }, + "stylehacks": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "requires": { + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" + } + }, + "stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "requires": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "svg-inline-loader": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz", + "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "object-assign": "^4.0.1", + "simple-html-tokenizer": "^0.1.1" + }, + "dependencies": { + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "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==" + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + } + } + }, + "swagger2openapi": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", + "integrity": "sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==", + "requires": { + "call-me-maybe": "^1.0.1", + "node-fetch": "^2.6.1", + "node-fetch-h2": "^2.3.0", + "node-readfiles": "^0.2.0", + "oas-kit-common": "^1.0.8", + "oas-resolver": "^2.5.6", + "oas-schema-walker": "^1.1.5", + "oas-validator": "^5.0.8", + "reftools": "^1.1.9", + "yaml": "^1.10.0", + "yargs": "^17.0.1" + }, + "dependencies": { + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "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==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + } + } + }, + "swiper": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", + "integrity": "sha512-VwO/KU3i9IV2Sf+W2NqyzwWob4yX9Qdedq6vBtS0rFqJ6Fa5iLUJwxQkuD4I38w0WDJwmFl8ojkdcRFPHWD+2g==", + "requires": { + "dom7": "^4.0.4", + "ssr-window": "^4.0.2" + } + }, + "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 + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" + }, + "tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + } + }, + "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.16.5", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", + "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "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==" + } + } + }, + "terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "requires": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "dependencies": { + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.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==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "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": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "throttle-debounce": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-3.0.1.tgz", + "integrity": "sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==" + }, + "throttleit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", + "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "requires": { + "setimmediate": "^1.0.4" + } + }, + "tiny-invariant": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", + "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" + }, + "tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "requires": { + "rimraf": "^3.0.0" + } + }, + "tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" + }, + "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==", + "requires": { + "is-number": "^7.0.0" + } + }, + "toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" + }, + "totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==" + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "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" + } + }, + "trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==" + }, + "trim-trailing-lines": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", + "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==" + }, + "trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==" + }, + "ts-easing": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz", + "integrity": "sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==" + }, + "ts-keycode-enum": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/ts-keycode-enum/-/ts-keycode-enum-1.0.6.tgz", + "integrity": "sha512-DF8+Cf/FJJnPRxwz8agCoDelQXKZWQOS/gnnwx01nZ106tPJdB3BgJ9QTtLwXgR82D8O+nTjuZzWgf0Rg4vuRA==" + }, + "tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "dev": true + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "devOptional": 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": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + } + }, + "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==", + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "peer": true + }, + "ua-parser-js": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.34.tgz", + "integrity": "sha512-cJMeh/eOILyGu0ejgTKB95yKT3zOenSe9UGE3vj6WfiOwgGYnmATUsnDixMFvdU+rNMvWih83hrUP8VwhF9yXQ==" + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "unherit": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "requires": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==" + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==" + }, + "unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==" + }, + "unified": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", + "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + } + }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "requires": { + "crypto-random-string": "^2.0.0" + } + }, + "unist-builder": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", + "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==" + }, + "unist-util-find-after": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", + "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", + "requires": { + "unist-util-is": "^4.0.0" + } + }, + "unist-util-generated": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", + "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==" + }, + "unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==" + }, + "unist-util-position": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", + "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==" + }, + "unist-util-remove": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", + "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "requires": { + "unist-util-is": "^4.0.0" + } + }, + "unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "unist-util-select": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/unist-util-select/-/unist-util-select-4.0.3.tgz", + "integrity": "sha512-1074+K9VyR3NyUz3lgNtHKm7ln+jSZXtLJM4E22uVuoFn88a/Go2pX8dusrt/W+KWH1ncn8jcd8uCQuvXb/fXA==", + "requires": { + "@types/unist": "^2.0.0", + "css-selector-parser": "^1.0.0", + "nth-check": "^2.0.0", + "zwitch": "^2.0.0" + }, + "dependencies": { + "zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" + } + } + }, + "unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "requires": { + "@types/unist": "^2.0.2" + } + }, + "unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + } + }, + "unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + }, + "unload": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", + "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", + "requires": { + "@babel/runtime": "^7.6.2", + "detect-node": "^2.0.4" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" + }, + "untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "requires": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + } + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" + }, + "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==" + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "requires": { + "ci-info": "^2.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "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==" + }, + "widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "requires": { + "string-width": "^4.0.0" + } + }, + "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==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + } + } + }, + "url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "requires": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "requires": { + "prepend-http": "^2.0.0" + } + }, + "url-template": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", + "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" + }, + "use-composed-ref": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", + "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", + "requires": {} + }, + "use-isomorphic-layout-effect": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", + "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "requires": {} + }, + "use-latest": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", + "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", + "requires": { + "use-isomorphic-layout-effect": "^1.1.1" + } + }, + "use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "requires": {} + }, + "util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "requires": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" + }, + "utility-types": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", + "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "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.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "validate.io-array": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", + "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" + }, + "validate.io-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", + "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" + }, + "validate.io-integer": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", + "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", + "requires": { + "validate.io-number": "^1.0.3" + } + }, + "validate.io-integer-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", + "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", + "requires": { + "validate.io-array": "^1.0.3", + "validate.io-integer": "^1.0.4" + } + }, + "validate.io-number": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", + "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" + }, + "value-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", + "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + } + }, + "vfile-location": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", + "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==" + }, + "vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "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" + } + }, + "wait-on": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", + "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", + "requires": { + "axios": "^0.25.0", + "joi": "^17.6.0", + "lodash": "^4.17.21", + "minimist": "^1.2.5", + "rxjs": "^7.5.4" + }, + "dependencies": { + "axios": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", + "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "requires": { + "follow-redirects": "^1.14.7" + } + } + } + }, + "walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "requires": { + "makeerror": "1.0.12" + } + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "web-namespaces": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", + "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==" + }, + "web-streams-polyfill": { + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", + "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==" + }, + "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.75.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", + "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", + "requires": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "webpack-bundle-analyzer": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", + "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", + "requires": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "dependencies": { + "acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" + }, + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" + } + } + }, + "webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } + } + }, + "webpack-dev-server": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", + "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "requires": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "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==" + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + }, + "ws": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", + "requires": {} + } + } + }, + "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==", + "requires": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + } + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==" + }, + "webpackbar": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", + "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", + "requires": { + "chalk": "^4.1.0", + "consola": "^2.15.3", + "pretty-time": "^1.1.0", + "std-env": "^3.0.1" + } + }, + "websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "requires": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==" + }, + "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" + } + }, + "whatwg-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" + }, + "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" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "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==", + "dev": true, + "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-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "requires": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + } + }, + "which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + } + }, + "widest-line": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", + "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", + "requires": { + "string-width": "^5.0.1" + } + }, + "wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==" + }, + "wolfy87-eventemitter": { + "version": "5.2.9", + "resolved": "https://registry.npmjs.org/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz", + "integrity": "sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw==" + }, + "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==", + "devOptional": true + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + }, + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "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==", + "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.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "requires": {} + }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" + }, + "xml-formatter": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", + "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", + "requires": { + "xml-parser-xo": "^3.2.0" + } + }, + "xml-js": { + "version": "1.6.11", + "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", + "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", + "requires": { + "sax": "^1.2.4" + } + }, + "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 + }, + "xml-parser-xo": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", + "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==" + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + }, + "yaml-ast-parser": { + "version": "0.0.43", + "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", + "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==" + }, + "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" + }, + "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-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "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 + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true + }, + "zustand": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", + "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", + "requires": {} + }, + "zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==" + } + } +} diff --git a/website/static/_redirects b/website/static/_redirects index ddb585f17b4..d081f5c6d7c 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -5,6 +5,7 @@ https://docs.getdbt.com/blog/how-to-design-and-structure-metrics /docs/use-dbt- /guides/dbt-ecosystem/sl-partner-integration-guide /docs/use-dbt-semantic-layer/avail-sl-integrations 301 /docs/use-dbt-semantic-layer/dbt-semantic-layer /docs/use-dbt-semantic-layer/dbt-sl 301 /docs/use-dbt-semantic-layer/set-up-semantic-layer /docs/use-dbt-semantic-layer/setup-sl 301 +/docs/use-dbt-semantic-layer/setup-dbt-semantic-layer /docs/use-dbt-semantic-layer/setup-sl 301 /docs/use-dbt-semantic-layer/quickstart-semantic-layer /docs/use-dbt-semantic-layer/quickstart-sl 301 ## refocus deploy page From bf357c5b21d43cbd62fe2d4e038179dd46634a3b Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 15:12:23 -0400 Subject: [PATCH 509/703] Update website/blog/2023-08-01-announcing-materialized-views.md --- website/blog/2023-08-01-announcing-materialized-views.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 6140efc31f8..09f48363d50 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -143,7 +143,7 @@ For Databricks: ```sql {{ config( -materialized='materialized_view', + materialized='materialized_view', ) }} ``` From ba3aace897dd990ba39b2be420719ab256bc1f14 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 15:12:42 -0400 Subject: [PATCH 510/703] Update website/blog/2023-08-01-announcing-materialized-views.md --- website/blog/2023-08-01-announcing-materialized-views.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 09f48363d50..657d2b6b7d2 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -143,7 +143,7 @@ For Databricks: ```sql {{ config( - materialized='materialized_view', + materialized='materialized_view', ) }} ``` From a6646e2f7edf791bd0a09bd06aad18e751c1bb55 Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 15:15:17 -0400 Subject: [PATCH 511/703] Update website/blog/2023-08-01-announcing-materialized-views.md --- .../blog/2023-08-01-announcing-materialized-views.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 657d2b6b7d2..98c6de90094 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -158,13 +158,15 @@ For Snowflake: ```sql {{ +{{ config( -materialized = 'dynamic_table', -snowflake_warehouse = '', -target_lag = '', -on_configuration_change = 'apply', + materialized = 'dynamic_table', + snowflake_warehouse = '', + target_lag = '', + on_configuration_change = 'apply', ) }} +}} ``` Now if you do need to more fully build out your development pipeline (making sure scheduling/syncs do happen), you can schedule but make sure to drop the materialized views when you are done with them. I encourage you to invest in an operations macro that drops all MVs in the schema that you use as your sandbox and run it as needed. You could even create a dbt Cloud job to manage that. This way, you don’t have any stray MVs running in your sandbox, consuming credits unnecessarily. From 910f18e4d68f163f22e378062d0e599f62dff58a Mon Sep 17 00:00:00 2001 From: Amy Chen <46451573+amychen1776@users.noreply.github.com> Date: Thu, 3 Aug 2023 15:17:47 -0400 Subject: [PATCH 512/703] Update website/blog/2023-08-01-announcing-materialized-views.md --- website/blog/2023-08-01-announcing-materialized-views.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/website/blog/2023-08-01-announcing-materialized-views.md b/website/blog/2023-08-01-announcing-materialized-views.md index 98c6de90094..3917e3f192c 100644 --- a/website/blog/2023-08-01-announcing-materialized-views.md +++ b/website/blog/2023-08-01-announcing-materialized-views.md @@ -158,7 +158,6 @@ For Snowflake: ```sql {{ -{{ config( materialized = 'dynamic_table', snowflake_warehouse = '', @@ -166,7 +165,6 @@ config( on_configuration_change = 'apply', ) }} -}} ``` Now if you do need to more fully build out your development pipeline (making sure scheduling/syncs do happen), you can schedule but make sure to drop the materialized views when you are done with them. I encourage you to invest in an operations macro that drops all MVs in the schema that you use as your sandbox and run it as needed. You could even create a dbt Cloud job to manage that. This way, you don’t have any stray MVs running in your sandbox, consuming credits unnecessarily. From 2ff387a7f5f861a54e6cece8cf36ce38570dc2bb Mon Sep 17 00:00:00 2001 From: "Leona B. Campbell" <3880403+runleonarun@users.noreply.github.com> Date: Thu, 3 Aug 2023 17:21:38 -0700 Subject: [PATCH 513/703] Making Semantic Layer QS and getting started guides consistent (#3858) ## What are you changing in this pull request and why? As requested by @Jstein77, making certain sections of guides consistent. * added reusables for sections that are the same. * Copied content from the getting started guide to the reusables. * Put reusables in 1.6 section only cc @mirnawong1 ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --- website/docs/docs/build/sl-getting-started.md | 205 +----------------- .../use-dbt-semantic-layer/quickstart-sl.md | 98 +-------- website/snippets/_sl-configure-metricflow.md | 1 + website/snippets/_sl-create-semanticmodel.md | 150 +++++++++++++ website/snippets/_sl-define-metrics.md | 19 ++ website/snippets/_sl-install-metricflow.md | 7 + .../snippets/_sl-test-and-query-metrics.md | 19 ++ 7 files changed, 219 insertions(+), 280 deletions(-) create mode 100644 website/snippets/_sl-configure-metricflow.md create mode 100644 website/snippets/_sl-create-semanticmodel.md create mode 100644 website/snippets/_sl-define-metrics.md create mode 100644 website/snippets/_sl-install-metricflow.md create mode 100644 website/snippets/_sl-test-and-query-metrics.md diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index dbd953b2a5c..7259a7eb22c 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -8,6 +8,12 @@ meta: api_name: dbt Semantic Layer API --- +import InstallMetricFlow from '/snippets/_sl-install-metricflow.md'; +import CreateModel from '/snippets/_sl-create-semanticmodel.md'; +import DefineMetrics from '/snippets/_sl-define-metrics.md'; +import ConfigMetric from '/snippets/_sl-configure-metricflow.md'; +import TestQuery from '/snippets/_sl-test-and-query-metrics.md'; + This getting started page presents a sample workflow to help you create your first metrics. It uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template) as the project data source and is available for you to use. If you prefer, you can create semantic models and metrics for your own dbt project. To fully experience the power of a universal dbt Semantic Layer, take the following steps: @@ -38,212 +44,23 @@ New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/ ## Install MetricFlow -Before you begin, install the [MetricFlow CLI](/docs/build/metricflow-cli) as an extension of a dbt adapter from PyPI. The MetricFlow CLI is compatible with Python versions 3.8, 3.9, 3.10 and 3.11 - -Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platforms): + -- Create or activate your virtual environment. `python -m venv venv` or `source your-venv/bin/activate` -- Run `pip install "dbt-metricflow[your_adapter_name]"` - * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. - ## Create a semantic model -The following steps will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). - -We highly recommend you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the [Jaffle shop example](https://github.com/dbt-labs/jaffle-sl-template), delete the `orders.yml` config or delete the .yml extension so it's ignored during parsing. **We'll be rebuilding it step by step in this example.** - -If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. - -1. Create a new yml config file for the orders model, such as `orders.yml`. - -It's best practice to create semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name and appropriate metadata, map it to a model in your dbt project, and specify model defaults. For now, `default_agg_time_dimension` is the only supported default. - -```yaml -semantic_models: - #The name of the semantic model. - - name: orders - defaults: - agg_time_dimension: ordered_at - description: | - Order fact table. This table is at the order grain with one row per order. - #The name of the dbt model and schema - model: ref('orders') - ``` - -2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `order_id`, and so on. - -```yaml - #Entities. These usually correspond to keys in the table. - entities: - - name: order_id - type: primary - - name: location - type: foreign - expr: location_id - - name: customer - type: foreign - expr: customer_id - ``` - -3. Define your dimensions and measures. Dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. - -```yaml - #Measures. These are the aggregations on the columns in the table. - measures: - - name: order_total - description: The total revenue for each order. - agg: sum - - name: order_count - expr: 1 - agg: sum - - name: tax_paid - description: The total tax paid on each order. - agg: sum - - name: customers_with_orders - description: Distinct count of customers placing orders - agg: count_distinct - expr: customer_id - - name: locations_with_orders - description: Distinct count of locations with order - expr: location_id - agg: count_distinct - - name: order_cost - description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. - agg: sum - #Dimensions. Either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. - dimensions: - - name: ordered_at - type: time - type_params: - time_granularity: day - - name: order_total_dim - type: categorical - expr: order_total - - name: is_food_order - type: categorical - - name: is_drink_order - type: categorical -``` - -Putting it all together, a complete semantic model configurations based on the order model would look like the following example: - -```yaml -semantic_models: - #The name of the semantic model. - - name: orders - defaults: - agg_time_dimension: ordered_at - description: | - Order fact table. This table is at the order grain with one row per order. - #The name of the dbt model and schema - model: ref('orders') - #Entities. These usually corespond to keys in the table. - entities: - - name: order_id - type: primary - - name: location - type: foreign - expr: location_id - - name: customer - type: foreign - expr: customer_id - #Measures. These are the aggregations on the columns in the table. - measures: - - name: order_total - description: The total revenue for each order. - agg: sum - - name: order_count - expr: 1 - agg: sum - - name: tax_paid - description: The total tax paid on each order. - agg: sum - - name: customers_with_orders - description: Distinct count of customers placing orders - agg: count_distinct - expr: customer_id - - name: locations_with_orders - description: Distinct count of locations with order - expr: location_id - agg: count_distinct - - name: order_cost - description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. - agg: sum - #Dimensions. Either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. - dimensions: - - name: ordered_at - type: time - type_params: - time_granularity: day - - name: order_total_dim - type: categorical - expr: order_total - - name: is_food_order - type: categorical - - name: is_drink_order - type: categorical -``` - -:::tip -If you're familiar with writing SQL, you can think of dimensions as the columns you would group by and measures as the columns you would aggregate. - -```sql -select - metric_time_day, -- time - country, -- categorical dimension - sum(revenue_usd) -- measure -from - snowflake.fact_transactions -- sql table -group by metric_time_day, country -- dimensions - ``` -::: + ## Define metrics -Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](/docs/build/metrics-overview) before getting started. - -1. You can define metrics in the same YAML files as your semantic models or create a new file. If you want to create your metrics in a new file, create another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example, by data source or business line. - -2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recommend deleting the original `orders.yml` file, or removing the .yml extension so it's ignored during parsing. We'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. - -```yaml -metrics: - - name: order_total - description: Sum of total order amonunt. Includes tax + revenue. - type: simple - label: Order Total - type_params: - measure: order_total -``` - -3. Save your code, and in the next section, you'll validate your configs before committing them to your repository. - -To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. + ## Configure the MetricFlow time spine model -MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article](/docs/build/metricflow-time-spine) explains how to add the `metricflow_time_spine` model to your project. + ## Test and query metrics -This section will explain how you can test and query metrics locally. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on installing it and a reference for the CLI commands. - -:::tip -- dbt Cloud Team or Enterprise — For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. You can also use the MetricFlow CLI to test and query metrics locally. Alternatively, you can test using SQL client tools like DataGrip, DBeaver, or RazorSQL. - -- dbt Core or Developer plan — Users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. -::: - -**Query and commit your metrics using the CLI:** - -MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt run` before preceding to ensure the data exists in your warehouse. - -1. Make sure you have the MetricFlow CLI installed and up to date. -2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. -3. Run `mf query --metrics --group-by ` to query the metrics and dimensions. For example, `mf query --metrics order_total --group-by metric_time` -4. Verify that the metric values are what you expect. To further understand how the metric is being generated, you can view the generated SQL if you type `--explain` in the CLI. -5. Run `mf validate-configs` to run validation on your semantic models and metrics. -6. Commit and merge the code changes that contain the metric definitions. + ## Run a production job diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 20729d1879d..8dbcc6c46f3 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -11,6 +11,13 @@ meta: import NewSLChanges from '/snippets/_new-sl-changes.md'; +import InstallMetricFlow from '/snippets/_sl-install-metricflow.md'; +import CreateModel from '/snippets/_sl-create-semanticmodel.md'; +import DefineMetrics from '/snippets/_sl-define-metrics.md'; +import ConfigMetric from '/snippets/_sl-configure-metricflow.md'; +import TestQuery from '/snippets/_sl-test-and-query-metrics.md'; + + @@ -39,100 +46,19 @@ New to dbt or metrics? Try our [Jaffle shop example project](https://github.com/ ## Install MetricFlow -Before you begin, install the [MetricFlow CLI](/docs/build/metricflow-cli) as an extension of a dbt adapter from PyPI. The MetricFlow CLI is compatible with Python versions 3.8, 3.9, 3.10 and 3.11 - -Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platforms): - -- Create or activate your virtual environment. `python -m venv venv` -- `pip install "dbt-metricflow[your_adapter_name]"` - * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. - -Currently, the supported adapters are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). + ## Create a semantic model -This step will guide you through setting up your semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). - -1. Name your semantic model, fill in appropriate metadata, and map it to a model in your dbt project. - -```yaml -semantic_models: - - name: transactions - description: | - This table captures every transaction starting July 02, 2014. Each row represents one transaction - model: ref('fact_transactions') - ``` - -2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `transaction_id`, and so on. - -```yaml - entities: - - name: transaction - type: primary - expr: id_transaction - - name: customer - type: foreign - expr: id_customer - ``` - -3. Define your dimensions and measures. dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. - -```yaml -measures: - - name: transaction_amount_usd - description: The total USD value of the transaction. - agg: sum - dimensions: - - name: is_large - type: categorical - expr: case when transaction_amount_usd >= 30 then true else false end -``` - -:::tip - -If you're familiar with writing SQL, you can think of dimensions as the columns you would group by and measures as the columns you would aggregate. - -```sql -select - metric_time_day, -- time - country, -- categorical dimension - sum(revenue_usd) -- measure -from - snowflake.fact_transactions -- sql table -group by metric_time_day, country -- dimensions - ``` -::: + ## Define metrics -Now that you've created your first semantic model, it's time to define your first metric. MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). - -1. You can define metrics in the same YAML files as your semantic models, or create a new file. - -2. The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. - -```yaml ---- -metrics: - - name: transaction_amount_usd - type: simple - type_params: - measure: transaction_amount_usd -``` - -3. Click **Save** and then **Preview** the code in the dbt Cloud IDE. - -## Test metrics - -The following steps explain how to test and manually query your metrics. Currently, you can only manually test your metrics using the CLI (dbt Cloud IDE support coming soon) + -1. Make sure you have the [MetricFlow CLI](/docs/build/metricflow-cli) installed and up to date. -2. In the CLI, run `mf validate-configs` to validate the changes before committing them. -3. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. -4. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. -5. Commit and merge the code changes that contain the metric definitions. +## Test and query metrics -To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. + ## Run a production job diff --git a/website/snippets/_sl-configure-metricflow.md b/website/snippets/_sl-configure-metricflow.md new file mode 100644 index 00000000000..10f92161783 --- /dev/null +++ b/website/snippets/_sl-configure-metricflow.md @@ -0,0 +1 @@ +MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article](/docs/build/metricflow-time-spine) explains how to add the `metricflow_time_spine` model to your project. diff --git a/website/snippets/_sl-create-semanticmodel.md b/website/snippets/_sl-create-semanticmodel.md new file mode 100644 index 00000000000..032bbe37143 --- /dev/null +++ b/website/snippets/_sl-create-semanticmodel.md @@ -0,0 +1,150 @@ +The following steps will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). + +We highly recommend you read the overview of what a [semantic model](/docs/build/semantic-models) is before getting started. If you're working in the [Jaffle shop example](https://github.com/dbt-labs/jaffle-sl-template), delete the `orders.yml` config or delete the .yml extension so it's ignored during parsing. **We'll be rebuilding it step by step in this example.** + +If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. + +1. Create a new yml config file for the orders model, such as `orders.yml`. + +It's best practice to create semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name and appropriate metadata, map it to a model in your dbt project, and specify model defaults. For now, `default_agg_time_dimension` is the only supported default. + +```yaml +semantic_models: + #The name of the semantic model. + - name: orders + defaults: + agg_time_dimension: ordered_at + description: | + Order fact table. This table is at the order grain with one row per order. + #The name of the dbt model and schema + model: ref('orders') + ``` + +2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `order_id`, and so on. + +```yaml + #Entities. These usually correspond to keys in the table. + entities: + - name: order_id + type: primary + - name: location + type: foreign + expr: location_id + - name: customer + type: foreign + expr: customer_id + ``` + +3. Define your dimensions and measures. Dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. + +```yaml + #Measures. These are the aggregations on the columns in the table. + measures: + - name: order_total + description: The total revenue for each order. + agg: sum + - name: order_count + expr: 1 + agg: sum + - name: tax_paid + description: The total tax paid on each order. + agg: sum + - name: customers_with_orders + description: Distinct count of customers placing orders + agg: count_distinct + expr: customer_id + - name: locations_with_orders + description: Distinct count of locations with order + expr: location_id + agg: count_distinct + - name: order_cost + description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. + agg: sum + #Dimensions. Either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: + - name: ordered_at + type: time + type_params: + time_granularity: day + - name: order_total_dim + type: categorical + expr: order_total + - name: is_food_order + type: categorical + - name: is_drink_order + type: categorical +``` + +Putting it all together, a complete semantic model configurations based on the order model would look like the following example: + +```yaml +semantic_models: + #The name of the semantic model. + - name: orders + defaults: + agg_time_dimension: ordered_at + description: | + Order fact table. This table is at the order grain with one row per order. + #The name of the dbt model and schema + model: ref('orders') + #Entities. These usually corespond to keys in the table. + entities: + - name: order_id + type: primary + - name: location + type: foreign + expr: location_id + - name: customer + type: foreign + expr: customer_id + #Measures. These are the aggregations on the columns in the table. + measures: + - name: order_total + description: The total revenue for each order. + agg: sum + - name: order_count + expr: 1 + agg: sum + - name: tax_paid + description: The total tax paid on each order. + agg: sum + - name: customers_with_orders + description: Distinct count of customers placing orders + agg: count_distinct + expr: customer_id + - name: locations_with_orders + description: Distinct count of locations with order + expr: location_id + agg: count_distinct + - name: order_cost + description: The cost for each order item. Cost is calculated as a sum of the supply cost for each order item. + agg: sum + #Dimensions. Either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: + - name: ordered_at + type: time + type_params: + time_granularity: day + - name: order_total_dim + type: categorical + expr: order_total + - name: is_food_order + type: categorical + - name: is_drink_order + type: categorical +``` + +:::tip +If you're familiar with writing SQL, you can think of dimensions as the columns you would group by and measures as the columns you would aggregate. + +```sql +select + metric_time_day, -- time + country, -- categorical dimension + sum(revenue_usd) -- measure +from + snowflake.fact_transactions -- sql table +group by metric_time_day, country -- dimensions + ``` + +::: diff --git a/website/snippets/_sl-define-metrics.md b/website/snippets/_sl-define-metrics.md new file mode 100644 index 00000000000..77d3a51c873 --- /dev/null +++ b/website/snippets/_sl-define-metrics.md @@ -0,0 +1,19 @@ +Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](/docs/build/metrics-overview) before getting started. + +1. You can define metrics in the same YAML files as your semantic models or create a new file. If you want to create your metrics in a new file, create another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example, by data source or business line. + +2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recommend deleting the original `orders.yml` file, or removing the .yml extension so it's ignored during parsing. We'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. + +```yaml +metrics: + - name: order_total + description: Sum of total order amonunt. Includes tax + revenue. + type: simple + label: Order Total + type_params: + measure: order_total +``` + +3. Save your code, and in the next section, you'll validate your configs before committing them to your repository. + +To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. diff --git a/website/snippets/_sl-install-metricflow.md b/website/snippets/_sl-install-metricflow.md new file mode 100644 index 00000000000..4677cd572fe --- /dev/null +++ b/website/snippets/_sl-install-metricflow.md @@ -0,0 +1,7 @@ +Before you begin, install the [MetricFlow CLI](/docs/build/metricflow-cli) as an extension of a dbt adapter from PyPI. The MetricFlow CLI is compatible with Python versions 3.8, 3.9, 3.10 and 3.11 + +Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platforms): + +- Create or activate your virtual environment. `python -m venv venv` or `source your-venv/bin/activate` +- Run `pip install "dbt-metricflow[your_adapter_name]"` + - You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. diff --git a/website/snippets/_sl-test-and-query-metrics.md b/website/snippets/_sl-test-and-query-metrics.md new file mode 100644 index 00000000000..8f859c1c1f6 --- /dev/null +++ b/website/snippets/_sl-test-and-query-metrics.md @@ -0,0 +1,19 @@ +This section will explain how you can test and query metrics locally. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on installing it and a reference for the CLI commands. + +:::tip + +- dbt Cloud Team or Enterprise — For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. You can also use the MetricFlow CLI to test and query metrics locally. Alternatively, you can test using SQL client tools like DataGrip, DBeaver, or RazorSQL. + +- dbt Core or Developer plan — Users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. +::: + +**Query and commit your metrics using the CLI:** + +MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt run` before preceding to ensure the data exists in your warehouse. + +1. Make sure you have the MetricFlow CLI installed and up to date. +2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. +3. Run `mf query --metrics --group-by ` to query the metrics and dimensions. For example, `mf query --metrics order_total --group-by metric_time` +4. Verify that the metric values are what you expect. To further understand how the metric is being generated, you can view the generated SQL if you type `--explain` in the CLI. +5. Run `mf validate-configs` to run validation on your semantic models and metrics. +6. Commit and merge the code changes that contain the metric definitions. From 6c45a30c38bf92c6b85ce6fbb88acd60674e7daf Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Thu, 3 Aug 2023 20:10:25 -0700 Subject: [PATCH 514/703] Updates matching latest UI --- website/docs/docs/deploy/ci-jobs.md | 16 +++++++++------- .../docs/docs/deploy/continuous-integration.md | 2 +- website/docs/docs/deploy/job-settings.md | 11 +++++++---- .../using-dbt-cloud/ci-job-adv-settings.png | Bin 0 -> 117665 bytes .../using-dbt-cloud/create-ci-job.png | Bin 0 -> 115033 bytes .../using-dbt-cloud/create-deploy-job.png | Bin 0 -> 126281 bytes .../deploy-job-adv-settings.png | Bin 0 -> 127218 bytes 7 files changed, 17 insertions(+), 12 deletions(-) create mode 100644 website/static/img/docs/dbt-cloud/using-dbt-cloud/ci-job-adv-settings.png create mode 100644 website/static/img/docs/dbt-cloud/using-dbt-cloud/create-ci-job.png create mode 100644 website/static/img/docs/dbt-cloud/using-dbt-cloud/create-deploy-job.png create mode 100644 website/static/img/docs/dbt-cloud/using-dbt-cloud/deploy-job-adv-settings.png diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 849d3e34d9c..eb090f06f0f 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -1,6 +1,6 @@ --- title: "Continuous integration jobs in dbt Cloud" -sidebar_label: "Continuous integration jobs" +sidebar_label: "CI jobs" description: "Learn how to create and set up CI checks to test code changes before deploying to production." --- @@ -16,7 +16,7 @@ You can set up [continuous integration](/docs/deploy/continuous-integration) (CI ## Set up CI jobs -dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schemas builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch in your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings), and accordingly the CI job in that dedicated environment will be triggered only when PRs are made to the specified, custom branch. +dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schemas builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch in your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings) and, accordingly, the CI job in that dedicated environment will be triggered only when PRs are made to the specified custom branch. :::tip Join our beta @@ -44,9 +44,9 @@ If you're interested in joining our beta, please fill out our Google Form to [si -To make CI job creation easier, many options on the **CI job** page are set to default values that dbt Labs recommends that you use. You can change some of these defaults and there are some that you can’t (which are greyed out). +To make CI job creation easier, many options on the **CI job** page are set to default values that dbt Labs recommends that you use. If you don't want to use the defaults, you can change them. -1. On your **Staging** environment page, click **Create Job** > **Continuous Integration Job** to create a new CI job. +1. On your deployment environment page, click **Create Job** > **Continuous Integration Job** to create a new CI job. 2. Options in the **Job Description** section: - **Job Name** — Specify the name for this CI job. @@ -54,19 +54,21 @@ To make CI job creation easier, many options on the **CI job** page are set to d - **Triggered by pull requests** — By default, it’s enabled. 3. Options in the **Execution Settings** section: - - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. - **Commands** — By default, it includes the `dbt build --select state:modified+` command. This informs dbt Cloud to build only new or changed models and their downstream dependents. Importantly, state comparison can only happen when there is a deferred job selected to compare state to. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. + - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since doc generation testing isn't typically performed for every CI check. - - **Add API trigger** — Set up an [API](/docs/dbt-cloud-apis/overview) trigger to run this CI job. In the POST request method, you must also include the fields `github_pull_request_id` and `git_sha`. + + 4. (optional) Options in the **Advanced Settings** section: - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this CI job runs. You can specify that a CI job is running in a _Staging_ or _CI_ environment by setting an environment variable and modifying your project code to behave differently, depending on the context. - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this CI job to the settings in your project. Similar to **Environment Variables**, this option lets you customize the behavior of the project. You can use this option to specify that a CI job is running in a _Staging_ or _CI_ environment by setting the target name and modifying your project code to behave differently, depending on the context. - **Run Timeout** — Cancel this CI job if the run time exceeds the timeout value. You can use this option to help ensure that a CI check doesn't consume too many of your warehouse resources. - - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. + - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this CI job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. + diff --git a/website/docs/docs/deploy/continuous-integration.md b/website/docs/docs/deploy/continuous-integration.md index b2f26af728e..779eafbb62c 100644 --- a/website/docs/docs/deploy/continuous-integration.md +++ b/website/docs/docs/deploy/continuous-integration.md @@ -48,7 +48,7 @@ Below describes the conditions when CI checks are run concurrently and when they When you push a new commit to a PR, dbt Cloud enqueues a new CI run for the latest commit and cancels any CI run that is (now) stale and still in flight. This can happen when you’re pushing new commits while a CI build is still in process and not yet done. By cancelling runs in a safe and deliberate way, dbt Cloud helps improve productivity and reduce data platform spend on wasteful CI runs. - + ### Run slot treatment diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index ded5b98a34f..a26deebe88a 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -79,19 +79,22 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Commands** — By default, it includes the `dbt build` command. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this deploy job runs. - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. - - **Add API trigger** — Set up an [API](/docs/dbt-cloud-apis/overview) trigger to run this deploy job. 4. Options in the **Schedule** section: - **Run on schedule** — Enable this option to run this deploy job on a set schedule. - - **Timing** and **Run at** — Specify whether to [schedule](#schedule-days) this deploy job using **Exact Intervals** that runs the job at specific times of day, **Intervals** that runs the job every specified number of hours, or to **Enter custom cron schedule (UTC)** that runs the job specified using [cron syntax](#custom-cron-schedule). - - **Days of the Week** — By default, it’s set to every day. + - **Timing** and **Run every (UTC)** — Specify whether to [schedule](#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or to **Cron Schedule** that runs the job specified using [cron syntax](#custom-cron-schedule). + - **Days of the Week** — By default, it’s set to every day when **Frequency** or **Specific Intervals** is chosen for **Timing**. + + + 5. (optional) Options in the **Advanced Settings** section: - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this deploy job runs. - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this deploy job to the settings in your project. - **Run Timeout** — Cancel this deploy job if the run time exceeds the timeout value. - **Compare changes against an environment (Deferral)** option — By default, it’s set to **No deferral**. - - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. + - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. + diff --git a/website/static/img/docs/dbt-cloud/using-dbt-cloud/ci-job-adv-settings.png b/website/static/img/docs/dbt-cloud/using-dbt-cloud/ci-job-adv-settings.png new file mode 100644 index 0000000000000000000000000000000000000000..1ef43a9588e22a9868d77751fcd250a5ab94767a GIT binary patch literal 117665 zcmeFY1y@|@(l!hPf&~eL;0_5+aBD0$1Z&)bySrO};O_3w1b2tv?hxGF-QnxZOlIc1 zGw1w(Z#}Hlt2cY!T2;I5tFEdJl#voaLcl?QfPg>}6BPtPK){SbK)gVNdkMZHwN@UdX*i0V+LNqW|307II?`@hIkhls03i#2|M-+*O{L5QDm)h4+ z5Sg7=a8wR@vhCFwI*_;xR9Qca9Xf}ze%$Nu3#nitI&4ZJ>@<|RS+-anJzS?VJ#*L| z4K_PM$nXwh1l!6YL7WM~ME!_>5VjGg^1XNy0Rb7|P5If%`Bq2K&JNm3zwFV~*%6

      &N*C70W;dVjp$& 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�!X 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 literal 0 HcmV?d00001 diff --git a/website/static/img/docs/dbt-cloud/using-dbt-cloud/create-ci-job.png b/website/static/img/docs/dbt-cloud/using-dbt-cloud/create-ci-job.png new file mode 100644 index 0000000000000000000000000000000000000000..7da23bd1dc9767a3c58598ba54ffb2c9388994b2 GIT binary patch literal 115033 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%0AC}u`Rvbvy=u~rJ69woXp4X=R>fgW{y2mMPwK%#~ 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 GcmE%aUW?WM literal 0 HcmV?d00001 diff --git a/website/static/img/docs/dbt-cloud/using-dbt-cloud/create-deploy-job.png b/website/static/img/docs/dbt-cloud/using-dbt-cloud/create-deploy-job.png new file mode 100644 index 0000000000000000000000000000000000000000..88b8047fef560632abfe95d243f5624ef4e08de6 GIT binary patch literal 126281 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∓#NC=+L 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

        )o3VVa^7GH@e_QA)yv4`@? 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 Date: Thu, 3 Aug 2023 20:17:18 -0700 Subject: [PATCH 515/703] Move beta callout --- website/docs/docs/deploy/ci-jobs.md | 16 ++++++++-------- website/docs/docs/deploy/job-settings.md | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index eb090f06f0f..acc42a4594f 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -6,6 +6,14 @@ description: "Learn how to create and set up CI checks to test code changes befo You can set up [continuous integration](/docs/deploy/continuous-integration) (CI) jobs to run when someone opens a new pull request in your dbt repository. By running and testing only _modified_ models, dbt Cloud ensures these jobs are as efficient and resource conscientious as possible on your data platform. +:::tip Join our beta + +dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, click on the **Beta version** tab below. + +If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). + +::: + ## Prerequisites - You have a dbt Cloud account. @@ -18,14 +26,6 @@ You can set up [continuous integration](/docs/deploy/continuous-integration) (CI dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schemas builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch in your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings) and, accordingly, the CI job in that dedicated environment will be triggered only when PRs are made to the specified custom branch. -:::tip Join our beta - -dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, click on the **Beta version** tab below. - -If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). - -::: - diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index a26deebe88a..1e50c6f3bdf 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -15,6 +15,14 @@ Jobs make it easy to run dbt commands against a project in your cloud data platf You can create a job and configure it to run on [scheduled days and times](/docs/deploy/job-triggers#schedule-days) or enter a [custom cron schedule](/docs/deploy/job-triggers#custom-cron-schedules). +:::tip Join our beta + +dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, click on the **Beta version** tab below. + +If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). + +::: + ## Prerequisites - You must have a dbt Cloud account and [Developer seat license](/docs/cloud/manage-access/seats-and-users). If you don't, you can [sign up](https://www.getdbt.com/signup/) for a [free account](https://www.getdbt.com/pricing/). @@ -24,14 +32,6 @@ You can create a job and configure it to run on [scheduled days and times](/docs ## Create and schedule jobs {#create-and-schedule-jobs} -:::tip Join our beta - -dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, click on the **Beta version** tab below. - -If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). - -::: - From 70f5a4a5a9bb0e363c04edcc2183065a24bd2666 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Thu, 3 Aug 2023 20:29:27 -0700 Subject: [PATCH 516/703] Add query string to beta links --- website/docs/docs/deploy/ci-jobs.md | 4 ++-- website/docs/docs/deploy/job-settings.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index acc42a4594f..feccd1cb49a 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -8,7 +8,7 @@ You can set up [continuous integration](/docs/deploy/continuous-integration) (CI :::tip Join our beta -dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, click on the **Beta version** tab below. +dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, refer to [Set up CI jobs (Beta version)](/docs/deploy/ci-jobs?version=beta#set-up-ci-jobs). If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). @@ -22,7 +22,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si - If you’re using GitLab, you must use a paid or self-hosted account which includes support for GitLab webhooks. - If you previously configured your dbt project by providing a generic git URL that clones using SSH, you must reconfigure the project to connect through dbt Cloud's native integration. -## Set up CI jobs +## Set up CI jobs {#set-up-ci-jobs} dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schemas builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch in your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings) and, accordingly, the CI job in that dedicated environment will be triggered only when PRs are made to the specified custom branch. diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 1e50c6f3bdf..40d528757ef 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -17,7 +17,7 @@ You can create a job and configure it to run on [scheduled days and times](/docs :::tip Join our beta -dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, click on the **Beta version** tab below. +dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, refer to [Create and schedule jobs (Beta version)](/docs/deploy/job-settings?version=beta#create-and-schedule-jobs). If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). From d97ec9c8e3c8a989f3ffad66c4e88a5d7043d87a Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Thu, 3 Aug 2023 20:34:27 -0700 Subject: [PATCH 517/703] Nits --- website/docs/docs/deploy/ci-jobs.md | 2 +- website/docs/docs/deploy/job-settings.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index feccd1cb49a..7a5267ed6bc 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -8,7 +8,7 @@ You can set up [continuous integration](/docs/deploy/continuous-integration) (CI :::tip Join our beta -dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, refer to [Set up CI jobs (Beta version)](/docs/deploy/ci-jobs?version=beta#set-up-ci-jobs). +dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs, refer to [Set up CI jobs (Beta version)](/docs/deploy/ci-jobs?version=beta#set-up-ci-jobs) on this page. If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 40d528757ef..8be11c4f265 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -17,7 +17,7 @@ You can create a job and configure it to run on [scheduled days and times](/docs :::tip Join our beta -dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, refer to [Create and schedule jobs (Beta version)](/docs/deploy/job-settings?version=beta#create-and-schedule-jobs). +dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs, refer to [Create and schedule jobs (Beta version)](/docs/deploy/job-settings?version=beta#create-and-schedule-jobs) on this page. If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). From 21e2f3bbdc07deeac1cea81037fe641581e378d9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Fri, 4 Aug 2023 05:09:24 +0100 Subject: [PATCH 518/703] Update _new-sl-setup.md Fast follow to Fix typo and capitalization --- website/snippets/_new-sl-setup.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index c03b9d5df5c..54a2f280295 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -6,7 +6,7 @@ You can set up the dbt Semantic Layer in dbt Cloud at the environment and projec If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. ::: -1. in dbt Cloud, create a new [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) or use an existing environment on dbt 1.6 or higher. +1. In dbt Cloud, create a new [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) or use an existing environment on dbt 1.6 or higher. * Note — Deployment environment is currently supported (_development experience coming soon_) 2. Navigate to **Account Settings** and select the specific project you want to enable the Semantic Layer for. @@ -25,7 +25,7 @@ If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade 6. You should see connection information that allows you to connect to downstream tools. **Note:** If your tool supports JDBC, save the JDBC URL or individual components (like environment id and host). -7. Return to the **Project Details** page, then select **Generate Service Token** to create a [Semantic Layer Only an Metadata Only service token](/docs/dbt-cloud-apis/service-tokens). +7. Return to the **Project Details** page, then select **Generate Service Token** to create a Semantic Layer Only and Metadata Only [service token](/docs/dbt-cloud-apis/service-tokens). 8. Save and copy your environment ID, service token, and host, which you'll need to use downstream tools. For more info on how to integrate with partner integrations, refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). From 5f125fb74afe5bf5897cdb7de0ada8b9f27845a7 Mon Sep 17 00:00:00 2001 From: schottj Date: Fri, 4 Aug 2023 07:34:45 -0700 Subject: [PATCH 519/703] Update job-settings.md --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 8be11c4f265..7d69286b542 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -1,6 +1,6 @@ --- title: "Job settings" -description: "Learn how to create and schedule jobs in dbt Cloud for the scheduler to run. Jobs help you build observability into transformation workflows with the in-app scheduling, logging, and alerting." +description: "Learn how to create and schedule jobs in dbt Cloud for the scheduler to run. When you run with dbt Cloud, you get built in observability, logging, and alerting." tags: [scheduler] --- From 0e414dd16e1f56c9687849e1ea062cea499c7bf7 Mon Sep 17 00:00:00 2001 From: schottj Date: Fri, 4 Aug 2023 07:38:40 -0700 Subject: [PATCH 520/703] Update job-settings.md --- website/docs/docs/deploy/job-settings.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 7d69286b542..be0e7fd7666 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -4,14 +4,14 @@ description: "Learn how to create and schedule jobs in dbt Cloud for the schedul tags: [scheduler] --- -Jobs make it easy to run dbt commands against a project in your cloud data platform, triggered either by schedule or events. Each job run in dbt Cloud will have a run history, run status, and a run overview, which provides you with: +Jobs make it easy to run dbt commands against a project in your cloud data platform, triggered either by schedule or events. Each job run in dbt Cloud will have an entry in the job's run history and a detailed run overview, which provides you with: - Job trigger type - Commit SHA - Environment name -- Sources and documentation info +- Sources and documentation info, if applicable - Job run details, including run timing, [model timing data](#model-timing), and [artifacts](/docs/deploy/artifacts) -- Detailed run steps with logs and their statuses +- Detailed run steps with logs and their run step statuses You can create a job and configure it to run on [scheduled days and times](/docs/deploy/job-triggers#schedule-days) or enter a [custom cron schedule](/docs/deploy/job-triggers#custom-cron-schedules). From 578be22283ec52a8ed79e61dbc001fac5cadc435 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 08:36:46 -0700 Subject: [PATCH 521/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: schottj --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index be0e7fd7666..03f3a02b2e2 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -81,7 +81,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. 4. Options in the **Schedule** section: - **Run on schedule** — Enable this option to run this deploy job on a set schedule. - - **Timing** and **Run every (UTC)** — Specify whether to [schedule](#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or to **Cron Schedule** that runs the job specified using [cron syntax](#custom-cron-schedule). + - **Timing** — Specify whether to [schedule](#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](#custom-cron-schedule). - **Days of the Week** — By default, it’s set to every day when **Frequency** or **Specific Intervals** is chosen for **Timing**. From 6e9cf18802b4957ca093b0d9d45828fc1d1f69ab Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 08:38:06 -0700 Subject: [PATCH 522/703] Update website/docs/docs/deploy/ci-jobs.md Co-authored-by: schottj --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 7a5267ed6bc..d88c8be8cba 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -51,7 +51,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d 2. Options in the **Job Description** section: - **Job Name** — Specify the name for this CI job. - **Environment** — By default, it’s set to the environment you created the CI job from. - - **Triggered by pull requests** — By default, it’s enabled. + - **Triggered by pull requests** — By default, it’s enabled. Every time a developer opens up a pull request or pushes a commit to an existing pull request, this job will get triggered to run. 3. Options in the **Execution Settings** section: - **Commands** — By default, it includes the `dbt build --select state:modified+` command. This informs dbt Cloud to build only new or changed models and their downstream dependents. Importantly, state comparison can only happen when there is a deferred job selected to compare state to. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. From bd1deb3a32d01d30f452674975a68c61242a7282 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 08:38:36 -0700 Subject: [PATCH 523/703] Update website/docs/docs/deploy/ci-jobs.md Co-authored-by: schottj --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index d88c8be8cba..1b8837205a0 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -56,7 +56,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d 3. Options in the **Execution Settings** section: - **Commands** — By default, it includes the `dbt build --select state:modified+` command. This informs dbt Cloud to build only new or changed models and their downstream dependents. Importantly, state comparison can only happen when there is a deferred job selected to compare state to. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. - - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since doc generation testing isn't typically performed for every CI check. + - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since most teams do not want to test doc generation on every CI check. From e1b23353322846ac0033a186baac17e18d843534 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 08:39:29 -0700 Subject: [PATCH 524/703] Update website/docs/docs/deploy/ci-jobs.md Co-authored-by: schottj --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 1b8837205a0..8de1f50b165 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -54,7 +54,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d - **Triggered by pull requests** — By default, it’s enabled. Every time a developer opens up a pull request or pushes a commit to an existing pull request, this job will get triggered to run. 3. Options in the **Execution Settings** section: - - **Commands** — By default, it includes the `dbt build --select state:modified+` command. This informs dbt Cloud to build only new or changed models and their downstream dependents. Importantly, state comparison can only happen when there is a deferred job selected to compare state to. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. + - **Commands** — By default, it includes the `dbt build --select state:modified+` command. This informs dbt Cloud to build only new or changed models and their downstream dependents. Importantly, state comparison can only happen when there is a deferred environment selected to compare state to. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since most teams do not want to test doc generation on every CI check. From ad685c091cc6261e3f1c7690eb7e9c4f65245845 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 08:39:59 -0700 Subject: [PATCH 525/703] Update website/docs/docs/deploy/ci-jobs.md Co-authored-by: schottj --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 8de1f50b165..48733c400b1 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -63,7 +63,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d 4. (optional) Options in the **Advanced Settings** section: - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this CI job runs. You can specify that a CI job is running in a _Staging_ or _CI_ environment by setting an environment variable and modifying your project code to behave differently, depending on the context. - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this CI job to the settings in your project. Similar to **Environment Variables**, this option lets you customize the behavior of the project. You can use this option to specify that a CI job is running in a _Staging_ or _CI_ environment by setting the target name and modifying your project code to behave differently, depending on the context. - - **Run Timeout** — Cancel this CI job if the run time exceeds the timeout value. You can use this option to help ensure that a CI check doesn't consume too many of your warehouse resources. + - **Run Timeout** — Cancel this CI job if the run time exceeds the timeout value. You can use this option to help ensure that a CI check doesn't consume too much of your warehouse resources. - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this CI job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. From 288d9f731070fc4b3c9f3a81637b704a66415146 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 09:24:36 -0700 Subject: [PATCH 526/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: schottj --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 03f3a02b2e2..86649c93d7e 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -88,7 +88,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si 5. (optional) Options in the **Advanced Settings** section: - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this deploy job runs. - - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this deploy job to the settings in your project. + - **Target Name** — Define the [target name](/docs/build/custom-target-names) to customize the behavior of your project when this deploy job runs. Environment variables and target name are often used interchangeably. - **Run Timeout** — Cancel this deploy job if the run time exceeds the timeout value. - **Compare changes against an environment (Deferral)** option — By default, it’s set to **No deferral**. - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. From 1257f448a5eee1fdedd781dbfeddeb1d46f2010d Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 09:32:45 -0700 Subject: [PATCH 527/703] Update website/docs/docs/deploy/ci-jobs.md Co-authored-by: schottj --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 48733c400b1..6ac37af398e 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -61,7 +61,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d 4. (optional) Options in the **Advanced Settings** section: - - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this CI job runs. You can specify that a CI job is running in a _Staging_ or _CI_ environment by setting an environment variable and modifying your project code to behave differently, depending on the context. + - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this CI job runs. You can specify that a CI job is running in a _Staging_ or _CI_ environment by setting an environment variable and modifying your project code to behave differently, depending on the context. It's common for teams to process only a subset of data for CI runs, using environment variables to branch logic in their dbt project code. - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this CI job to the settings in your project. Similar to **Environment Variables**, this option lets you customize the behavior of the project. You can use this option to specify that a CI job is running in a _Staging_ or _CI_ environment by setting the target name and modifying your project code to behave differently, depending on the context. - **Run Timeout** — Cancel this CI job if the run time exceeds the timeout value. You can use this option to help ensure that a CI check doesn't consume too much of your warehouse resources. - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. From 64827112932e6e60f2ddd2d9a51f87b0b66cdd6c Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 09:34:14 -0700 Subject: [PATCH 528/703] Update website/docs/docs/deploy/ci-jobs.md Co-authored-by: schottj --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 6ac37af398e..6807e4becd4 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -62,7 +62,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d 4. (optional) Options in the **Advanced Settings** section: - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this CI job runs. You can specify that a CI job is running in a _Staging_ or _CI_ environment by setting an environment variable and modifying your project code to behave differently, depending on the context. It's common for teams to process only a subset of data for CI runs, using environment variables to branch logic in their dbt project code. - - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this CI job to the settings in your project. Similar to **Environment Variables**, this option lets you customize the behavior of the project. You can use this option to specify that a CI job is running in a _Staging_ or _CI_ environment by setting the target name and modifying your project code to behave differently, depending on the context. + - **Target Name** — Define the [target name](/docs/build/custom-target-names). Similar to **Environment Variables**, this option lets you customize the behavior of the project. You can use this option to specify that a CI job is running in a _Staging_ or _CI_ environment by setting the target name and modifying your project code to behave differently, depending on the context. - **Run Timeout** — Cancel this CI job if the run time exceeds the timeout value. You can use this option to help ensure that a CI check doesn't consume too much of your warehouse resources. - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. From 3d2610a5c57fb937e9736f51ed436171ec04e6c9 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Fri, 4 Aug 2023 09:48:25 -0700 Subject: [PATCH 529/703] Fold in feedback from PM --- website/docs/docs/deploy/ci-jobs.md | 7 ++++++- website/docs/docs/deploy/job-settings.md | 9 +++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 48733c400b1..52edadc4372 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -56,6 +56,11 @@ To make CI job creation easier, many options on the **CI job** page are set to d 3. Options in the **Execution Settings** section: - **Commands** — By default, it includes the `dbt build --select state:modified+` command. This informs dbt Cloud to build only new or changed models and their downstream dependents. Importantly, state comparison can only happen when there is a deferred environment selected to compare state to. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. + + :::info + Older versions of dbt Cloud only allow you to defer to a specific job instead of an environment. Deferral to a job compares state against the project code that was run in the deferred job's last successful run. While deferral to an environment is more efficient as dbt Cloud will compare against the project representation (which is stored in the `manifest.json`) of the last successful deploy job run that executed in the deferred environment. By considering _all_ deploy jobs that run in the deferred environment, dbt Cloud will get a more accurate, latest project representation state. + ::: + - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since most teams do not want to test doc generation on every CI check. @@ -64,7 +69,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this CI job runs. You can specify that a CI job is running in a _Staging_ or _CI_ environment by setting an environment variable and modifying your project code to behave differently, depending on the context. - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this CI job to the settings in your project. Similar to **Environment Variables**, this option lets you customize the behavior of the project. You can use this option to specify that a CI job is running in a _Staging_ or _CI_ environment by setting the target name and modifying your project code to behave differently, depending on the context. - **Run Timeout** — Cancel this CI job if the run time exceeds the timeout value. You can use this option to help ensure that a CI check doesn't consume too much of your warehouse resources. - - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. + - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting. This option to change the version at the job level is useful only when you upgrade a project to the next dbt version; otherwise, mismatched versions between the environment and job can lead to confusing behavior. - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this CI job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 03f3a02b2e2..26321decfa1 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -1,6 +1,6 @@ --- title: "Job settings" -description: "Learn how to create and schedule jobs in dbt Cloud for the scheduler to run. When you run with dbt Cloud, you get built in observability, logging, and alerting." +description: "Learn how to create and schedule jobs in dbt Cloud for the scheduler to run. When you run with dbt Cloud, you get built-in observability, logging, and alerting." tags: [scheduler] --- @@ -91,7 +91,12 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this deploy job to the settings in your project. - **Run Timeout** — Cancel this deploy job if the run time exceeds the timeout value. - **Compare changes against an environment (Deferral)** option — By default, it’s set to **No deferral**. - - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting as mismatched versions can result in unexpected behavior. + + :::info + Older versions of dbt Cloud only allow you to defer to a specific job instead of an environment. Deferral to a job compares state against the project code that was run in the deferred job's last successful run. While deferral to an environment is more efficient as dbt Cloud will compare against the project representation (which is stored in the `manifest.json`) of the last successful deploy job run that executed in the deferred environment. By considering _all_ deploy jobs that run in the deferred environment, dbt Cloud will get a more accurate, latest project representation state. + ::: + + - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. dbt Labs strongly recommends that you don't change the default setting. This option to change the version at the job level is useful only when you upgrade a project to the next dbt version; otherwise, mismatched versions between the environment and job can lead to confusing behavior. - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. From a84dc9574fca8ccf74279d37a51151b4b8032a62 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Fri, 4 Aug 2023 10:04:34 -0700 Subject: [PATCH 530/703] Add link to deploy jobs page --- website/docs/docs/deploy/ci-jobs.md | 2 +- website/docs/docs/deploy/job-settings.md | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index d78feacb6e2..8befa51bc6e 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -58,7 +58,7 @@ To make CI job creation easier, many options on the **CI job** page are set to d - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. :::info - Older versions of dbt Cloud only allow you to defer to a specific job instead of an environment. Deferral to a job compares state against the project code that was run in the deferred job's last successful run. While deferral to an environment is more efficient as dbt Cloud will compare against the project representation (which is stored in the `manifest.json`) of the last successful deploy job run that executed in the deferred environment. By considering _all_ deploy jobs that run in the deferred environment, dbt Cloud will get a more accurate, latest project representation state. + Older versions of dbt Cloud only allow you to defer to a specific job instead of an environment. Deferral to a job compares state against the project code that was run in the deferred job's last successful run. While deferral to an environment is more efficient as dbt Cloud will compare against the project representation (which is stored in the `manifest.json`) of the last successful deploy job run that executed in the deferred environment. By considering _all_ [deploy jobs](/docs/deploy/job-settings) that run in the deferred environment, dbt Cloud will get a more accurate, latest project representation state. ::: - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since most teams do not want to test doc generation on every CI check. diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index d260daf4a7a..e73684fcfcf 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -13,7 +13,7 @@ Jobs make it easy to run dbt commands against a project in your cloud data platf - Job run details, including run timing, [model timing data](#model-timing), and [artifacts](/docs/deploy/artifacts) - Detailed run steps with logs and their run step statuses -You can create a job and configure it to run on [scheduled days and times](/docs/deploy/job-triggers#schedule-days) or enter a [custom cron schedule](/docs/deploy/job-triggers#custom-cron-schedules). +You can create a deploy job and configure it to run on [scheduled days and times](/docs/deploy/job-triggers#schedule-days) or enter a [custom cron schedule](/docs/deploy/job-triggers#custom-cron-schedules). :::tip Join our beta @@ -35,7 +35,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si -1. Create a new job by clicking **Deploy** in the header, click **Jobs** and then **Create job**. +1. Create a new deploy job by clicking **Deploy** in the header, click **Jobs** and then **Create job**. 1. Provide a job name, for example "Hourly Customer Job". 1. Under **Environment**, add the following: * **Environment** — Link to an existing deployment environment. @@ -57,7 +57,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si -6. Under the **Triggers** section, you can configure when and how dbt will trigger the job. Refer to [job triggers](/docs/deploy/job-triggers) for more details. +6. Under the **Triggers** section, you can configure when and how dbt will trigger the deploy job. Refer to [job triggers](/docs/deploy/job-triggers) for more details. * **Schedule** tab — Use the **Run on schedule** toggle to configure your job to run on [scheduled](/docs/deploy/job-triggers#schedule-days) days and time, or enter a [custom cron schedule](/docs/deploy/job-triggers#custom-cron-schedules). * **Continuous Integration** tab — Configure [continuous integration (CI)](/docs/deploy/continuous-integration) to run when someone opens a new pull request in your dbt repository. @@ -65,7 +65,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si -7. Select **Save**, then click **Run Now** to run your job. Click the run and watch its progress under **Run history**. +7. Select **Save**, then click **Run Now** to run your deploy job. Click the run and watch its progress under **Run history**. From 6b4d9e780a4323bdbe54f7acb142359c6b6d2772 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 10:14:42 -0700 Subject: [PATCH 531/703] Update website/docs/docs/deploy/job-settings.md Fix broken links --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index e73684fcfcf..5c9a3cd1e1e 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -81,7 +81,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. 4. Options in the **Schedule** section: - **Run on schedule** — Enable this option to run this deploy job on a set schedule. - - **Timing** — Specify whether to [schedule](#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](#custom-cron-schedule). + - **Timing** — Specify whether to [schedule](/docs/deploy/job-triggers#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](/docs/deploy/job-triggers#custom-cron-schedule). - **Days of the Week** — By default, it’s set to every day when **Frequency** or **Specific Intervals** is chosen for **Timing**. From 53b3afa4219093be91b2c50b78bc4a7cb720381f Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:56:08 -0700 Subject: [PATCH 532/703] Update website/docs/docs/deploy/ci-jobs.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 8befa51bc6e..08fbd5f4225 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -24,7 +24,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si ## Set up CI jobs {#set-up-ci-jobs} -dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schemas builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch in your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings) and, accordingly, the CI job in that dedicated environment will be triggered only when PRs are made to the specified custom branch. +dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schema builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch as part of your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings) and, accordingly, the CI job in that dedicated environment will be triggered only when PRs are made to the specified custom branch. From 490d6ee2da2964fc1614125c3a1558535141828b Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:57:39 -0700 Subject: [PATCH 533/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 5c9a3cd1e1e..061b77194a3 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -35,7 +35,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si -1. Create a new deploy job by clicking **Deploy** in the header, click **Jobs** and then **Create job**. +1. Create a new deploy job by clicking **Deploy** in the header, click **Jobs**, and then **Create job**. 1. Provide a job name, for example "Hourly Customer Job". 1. Under **Environment**, add the following: * **Environment** — Link to an existing deployment environment. From f00ed4185f0d160caad26d09c05c72f9b0b15cba Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:57:52 -0700 Subject: [PATCH 534/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 061b77194a3..dd578553bbf 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -78,7 +78,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si 3. Options in the **Execution Settings** section: - **Commands** — By default, it includes the `dbt build` command. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this deploy job runs. - - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. + - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running the deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. 4. Options in the **Schedule** section: - **Run on schedule** — Enable this option to run this deploy job on a set schedule. - **Timing** — Specify whether to [schedule](/docs/deploy/job-triggers#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](/docs/deploy/job-triggers#custom-cron-schedule). From 1c8997d94dfd0997bb45aef2249d3b30742cf08e Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:58:04 -0700 Subject: [PATCH 535/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index dd578553bbf..622169efb85 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -73,7 +73,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si 1. On your deployment environment page, click **Create Job** > **Deploy Job** to create a new deploy job. 2. Options in the **Job Description** section: - - **Job Name** — Specify the name for this deploy job. For example, `Daily build`. + - **Job Name** — Specify the name for the deploy job. For example, `Daily build`. - **Environment** — By default, it’s set to the deployment environment you created the deploy job from. 3. Options in the **Execution Settings** section: - **Commands** — By default, it includes the `dbt build` command. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. From b46f676f3b22ad8ad3ad99f663e5dc741f48137e Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:58:26 -0700 Subject: [PATCH 536/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 622169efb85..a5398dfe650 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -76,7 +76,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Job Name** — Specify the name for the deploy job. For example, `Daily build`. - **Environment** — By default, it’s set to the deployment environment you created the deploy job from. 3. Options in the **Execution Settings** section: - - **Commands** — By default, it includes the `dbt build` command. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. + - **Commands** — By default, it includes the `dbt build` command. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when the job runs. - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this deploy job runs. - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running the deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. 4. Options in the **Schedule** section: From 9b843fdd96497ba5bf576529145483f5d1a8ac9b Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:58:36 -0700 Subject: [PATCH 537/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index a5398dfe650..b3241162f24 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -80,7 +80,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this deploy job runs. - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running the deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. 4. Options in the **Schedule** section: - - **Run on schedule** — Enable this option to run this deploy job on a set schedule. + - **Run on schedule** — Enable this option to run the deploy job on a set schedule. - **Timing** — Specify whether to [schedule](/docs/deploy/job-triggers#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](/docs/deploy/job-triggers#custom-cron-schedule). - **Days of the Week** — By default, it’s set to every day when **Frequency** or **Specific Intervals** is chosen for **Timing**. From dcd5b6d9d8716a467e555c826245222e15f07374 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:58:59 -0700 Subject: [PATCH 538/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index b3241162f24..07ffc740108 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -81,7 +81,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running the deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. 4. Options in the **Schedule** section: - **Run on schedule** — Enable this option to run the deploy job on a set schedule. - - **Timing** — Specify whether to [schedule](/docs/deploy/job-triggers#schedule-days) this deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](/docs/deploy/job-triggers#custom-cron-schedule). + - **Timing** — Specify whether to [schedule](/docs/deploy/job-triggers#schedule-days) the deploy job using **Frequency** that runs the job at specific times of day, **Specific Intervals** that runs the job every specified number of hours, or **Cron Schedule** that runs the job specified using [cron syntax](/docs/deploy/job-triggers#custom-cron-schedule). - **Days of the Week** — By default, it’s set to every day when **Frequency** or **Specific Intervals** is chosen for **Timing**. From aa5d35cc6befde7abb1640d2fe01f22fc1ec254b Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:59:09 -0700 Subject: [PATCH 539/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 07ffc740108..3311e161b9b 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -87,7 +87,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si 5. (optional) Options in the **Advanced Settings** section: - - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this deploy job runs. + - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when the deploy job runs. - **Target Name** — Define the [target name](/docs/build/custom-target-names) to customize the behavior of your project when this deploy job runs. Environment variables and target name are often used interchangeably. - **Run Timeout** — Cancel this deploy job if the run time exceeds the timeout value. - **Compare changes against an environment (Deferral)** option — By default, it’s set to **No deferral**. From 7c0f3bd709cbc1baabe7365a44646cc752a68da0 Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:59:35 -0700 Subject: [PATCH 540/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 3311e161b9b..d19bdce7bc7 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -88,7 +88,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si 5. (optional) Options in the **Advanced Settings** section: - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when the deploy job runs. - - **Target Name** — Define the [target name](/docs/build/custom-target-names) to customize the behavior of your project when this deploy job runs. Environment variables and target name are often used interchangeably. + - **Target Name** — Define the [target name](/docs/build/custom-target-names) to customize the behavior of your project when the deploy job runs. Environment variables and target names are often used interchangeably. - **Run Timeout** — Cancel this deploy job if the run time exceeds the timeout value. - **Compare changes against an environment (Deferral)** option — By default, it’s set to **No deferral**. From 5219b63fb406cc911cd23e074047f7d2733a18af Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 11:59:47 -0700 Subject: [PATCH 541/703] Update website/docs/docs/deploy/job-settings.md Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/deploy/job-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index d19bdce7bc7..8df0f48925d 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -89,7 +89,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si 5. (optional) Options in the **Advanced Settings** section: - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when the deploy job runs. - **Target Name** — Define the [target name](/docs/build/custom-target-names) to customize the behavior of your project when the deploy job runs. Environment variables and target names are often used interchangeably. - - **Run Timeout** — Cancel this deploy job if the run time exceeds the timeout value. + - **Run Timeout** — Cancel the deploy job if the run time exceeds the timeout value. - **Compare changes against an environment (Deferral)** option — By default, it’s set to **No deferral**. :::info From 309a6be0f5fddad479cb94638cd15ce6a7a5e111 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Fri, 4 Aug 2023 15:16:23 -0400 Subject: [PATCH 542/703] Updating Usage Language --- website/docs/reference/global-configs/usage-stats.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/global-configs/usage-stats.md b/website/docs/reference/global-configs/usage-stats.md index ea02fe0bb59..ce2d3e49652 100644 --- a/website/docs/reference/global-configs/usage-stats.md +++ b/website/docs/reference/global-configs/usage-stats.md @@ -8,14 +8,14 @@ We want to build the best version of dbt possible, and a crucial part of that is Usage statistics are fired when dbt is invoked and when models are run. These events contain basic platform information (OS + python version) and metadata such as whether the invocation succeeded, how long it took, an anonymized hash key representing the raw model content, and number of nodes that were run. You can see all the event definitions in [`tracking.py`](https://github.com/dbt-labs/dbt-core/blob/HEAD/core/dbt/tracking.py). -By default this is turned on – you can opt out of event tracking at any time by adding the following to your `profiles.yml` file: +By default this is enabled – dbt Core users can opt out of event tracking at any time by adding the following to your `profiles.yml` file: ```yaml config: send_anonymous_usage_stats: False ``` -You can also use the DO_NOT_TRACK environment variable to enable or disable sending anonymous data. For more information, see [Environment variables](/docs/build/environment-variables). +dbt Core users can also use the DO_NOT_TRACK environment variable to enable or disable sending anonymous data. For more information, see [Environment variables](/docs/build/environment-variables). `DO_NOT_TRACK=1` is the same as `DBT_SEND_ANONYMOUS_USAGE_STATS=False` `DO_NOT_TRACK=0` is the same as `DBT_SEND_ANONYMOUS_USAGE_STATS=True` From 2f89b869cb634df1ffca0d4f1c2c24ec36e8850e Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Fri, 4 Aug 2023 16:16:43 -0400 Subject: [PATCH 543/703] Update website/docs/reference/global-configs/usage-stats.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/reference/global-configs/usage-stats.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/global-configs/usage-stats.md b/website/docs/reference/global-configs/usage-stats.md index ce2d3e49652..1f9492f4a43 100644 --- a/website/docs/reference/global-configs/usage-stats.md +++ b/website/docs/reference/global-configs/usage-stats.md @@ -8,7 +8,7 @@ We want to build the best version of dbt possible, and a crucial part of that is Usage statistics are fired when dbt is invoked and when models are run. These events contain basic platform information (OS + python version) and metadata such as whether the invocation succeeded, how long it took, an anonymized hash key representing the raw model content, and number of nodes that were run. You can see all the event definitions in [`tracking.py`](https://github.com/dbt-labs/dbt-core/blob/HEAD/core/dbt/tracking.py). -By default this is enabled – dbt Core users can opt out of event tracking at any time by adding the following to your `profiles.yml` file: +By default, this is enabled. dbt Core users can opt out of event tracking at any time by adding the following to your `profiles.yml` file: ```yaml config: From 3c29c57406bc12648c2c75b03c09ea765dc9ee94 Mon Sep 17 00:00:00 2001 From: Jeremy Cohen Date: Fri, 4 Aug 2023 22:22:21 +0200 Subject: [PATCH 544/703] Update Cloud support for retry with additional nuance --- website/docs/reference/commands/retry.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/website/docs/reference/commands/retry.md b/website/docs/reference/commands/retry.md index 692b2f6b744..8f5c617ef80 100644 --- a/website/docs/reference/commands/retry.md +++ b/website/docs/reference/commands/retry.md @@ -4,9 +4,11 @@ sidebar_label: "retry" id: "retry" --- -:::warning dbt Cloud support coming soon +:::info Support in dbt Cloud -Native support for `dbt retry` is coming to dbt Cloud soon. +`dbt retry` is supported in the dbt Cloud IDE. + +Native support for restarting scheduled runs from point of failure is currently in development & coming soon. ::: From e5e4cc88236c718eeec5c3d1da9c89032aecd2fb Mon Sep 17 00:00:00 2001 From: Jeremy Cohen Date: Fri, 4 Aug 2023 22:25:02 +0200 Subject: [PATCH 545/703] Add back to IDE list --- website/docs/reference/dbt-commands.md | 1 + 1 file changed, 1 insertion(+) diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index 000839820ba..ff9fea4cc00 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -53,6 +53,7 @@ Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/ - [compile](/reference/commands/compile): compiles (but does not run) the models in a project - [deps](/reference/commands/deps): downloads dependencies for a project - [docs](/reference/commands/cmd-docs) : generates documentation for a project +- [retry](/reference/commands/retry): retry the last run `dbt` command from the point of failure (requires dbt 1.6 or higher) - [run](/reference/commands/run): runs the models in a project - [run-operation](/reference/commands/run-operation): invoke a macro, including running arbitrary maintenance SQL against the database - [seed](/reference/commands/seed): loads CSV files into the database From e43fd90e6b346a2225a9df9efa58ab7db7f5aa4d Mon Sep 17 00:00:00 2001 From: "Alison (she/her)" Date: Fri, 4 Aug 2023 17:07:59 -0500 Subject: [PATCH 546/703] Update grants.md with grant syntax note (#3814) ## What are you changing in this pull request and why? Adds a note to avoid some frustration when using grants in a dbt_project.yml file. ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [x] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." --------- Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Co-authored-by: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> --- website/docs/reference/resource-configs/grants.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/grants.md b/website/docs/reference/resource-configs/grants.md index 8ef726788dc..68d1e6eb14e 100644 --- a/website/docs/reference/resource-configs/grants.md +++ b/website/docs/reference/resource-configs/grants.md @@ -121,7 +121,7 @@ For example: ```yml models: - +grants: + +grants: # In this case the + is not optional, you must include it for your project to parse. select: ['user_a', 'user_b'] ``` From 9163fbecbe30741928e6affb5079abe2e1e52e4a Mon Sep 17 00:00:00 2001 From: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> Date: Fri, 4 Aug 2023 15:41:56 -0700 Subject: [PATCH 547/703] Update website/docs/reference/dbt-commands.md --- website/docs/reference/dbt-commands.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index ff9fea4cc00..862829ef809 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -53,7 +53,7 @@ Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/ - [compile](/reference/commands/compile): compiles (but does not run) the models in a project - [deps](/reference/commands/deps): downloads dependencies for a project - [docs](/reference/commands/cmd-docs) : generates documentation for a project -- [retry](/reference/commands/retry): retry the last run `dbt` command from the point of failure (requires dbt 1.6 or higher) +- [retry](/reference/commands/retry): retry the last run `dbt` command from the point of failure (requires dbt 1.6 or later) - [run](/reference/commands/run): runs the models in a project - [run-operation](/reference/commands/run-operation): invoke a macro, including running arbitrary maintenance SQL against the database - [seed](/reference/commands/seed): loads CSV files into the database From 370bf2556124f314eadc27228d8bdceda71eac2a Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Fri, 4 Aug 2023 16:02:14 -0700 Subject: [PATCH 548/703] Add link to Related docs section --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 46a696e695e..21b5f4f921a 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -278,3 +278,7 @@ semantic_layer.query(metrics=['food_order_amount', 'order_gross_profit'], - **What is the default output when adding granularity?**
        The default output follows the format `{time_dimension_name}__{granularity_level}`. So for example, if the time dimension name is `ds` and the granularity level is yearly, the output is `ds__year`. +## Related docs + +- [dbt Semantic Layer integration best practices](/guides/dbt-ecosystem/sl-partner-integration-guide) + From e869badf22bc6992c0bd2d37c31b047f987f4b05 Mon Sep 17 00:00:00 2001 From: Doug Guthrie Date: Sat, 5 Aug 2023 16:01:07 -0600 Subject: [PATCH 549/703] Update sl-migration.md Small fix - adding quote --- website/docs/guides/migration/sl-migration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 49977a5076e..9f8a9ac3cfa 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -20,7 +20,7 @@ dbt Labs recommends completing these steps in a local dev environment instead of 1. Install the CLI with `pip install "dbt-metricflow[your_adapter_name]`. For example: ```bash - pip install "dbt-metricflow[snowflake] + pip install "dbt-metricflow[snowflake]" ``` The MetricFlow CLI is not available in the IDE at this time. Support for it is coming soon. From 101965be0465fa316b15d96f67f299357575de0b Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 09:09:01 +0100 Subject: [PATCH 550/703] Add files via upload --- .../using-dbt-cloud/prod-settings.jpg | Bin 0 -> 140124 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 website/static/img/docs/dbt-cloud/using-dbt-cloud/prod-settings.jpg diff --git a/website/static/img/docs/dbt-cloud/using-dbt-cloud/prod-settings.jpg b/website/static/img/docs/dbt-cloud/using-dbt-cloud/prod-settings.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6eb689b0cdd4b1222c6bf459fb1422c52c4cc9f8 GIT binary patch literal 140124 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

      1. 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 uo)`ZWOBxyqy8##|Hu1}El!n(+>D1yyYC Date: Mon, 7 Aug 2023 09:13:15 +0100 Subject: [PATCH 551/703] Update deploy-environments.md fix image link --- website/docs/docs/deploy/deploy-environments.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/deploy-environments.md b/website/docs/docs/deploy/deploy-environments.md index e2c4758a29b..9421d664739 100644 --- a/website/docs/docs/deploy/deploy-environments.md +++ b/website/docs/docs/deploy/deploy-environments.md @@ -34,7 +34,7 @@ import ExpBeta from '/snippets/_explorer-beta-banner.md'; -image + In dbt Cloud, each project can have one designated deployment environment, which serves as its production environment. This production environment is _essential_ for using features like dbt Explorer and cross-project references. It acts as the source of truth for the project's production state in dbt Cloud. From 4e2dc83457c2efdb0dcf5c9833279bfe611c48b3 Mon Sep 17 00:00:00 2001 From: Benoit Perigaud <8754100+b-per@users.noreply.github.com> Date: Mon, 7 Aug 2023 10:39:37 +0200 Subject: [PATCH 552/703] Typo in code example --- website/docs/docs/build/cumulative-metrics.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index aebe3fd7ecc..9b1434f7f52 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -19,9 +19,9 @@ metrics: label: The value that will be displayed in downstream tools # Required type_params: # Required measure: the measure you are referencing # Required - window: the accumulation window i.e 1 month, 7 days, 1 year. # Optional. Cannot be used with window + window: the accumulation window i.e 1 month, 7 days, 1 year. # Optional. Cannot be used with grain_to_date grain_to_date: sets the accumulation grain, such as month will accumulate data for one month, then restart at the beginning of the next. - # Optional. Can not be used with grain_to_date. + # Optional. Can not be used with window. ``` From 66d512e398df9dd8a9b936e208d3d5ecaeafb21c Mon Sep 17 00:00:00 2001 From: Benoit Perigaud <8754100+b-per@users.noreply.github.com> Date: Mon, 7 Aug 2023 10:43:55 +0200 Subject: [PATCH 553/703] Align allowed aggregations --- website/docs/docs/build/measures.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/measures.md b/website/docs/docs/build/measures.md index 13758fa094a..58b28b3d0f4 100644 --- a/website/docs/docs/build/measures.md +++ b/website/docs/docs/build/measures.md @@ -12,7 +12,7 @@ Measures are aggregations performed on columns in your model. They can be used a | --- | --- | --- | | [`name`](#name) | Provide a name for the measure, which must be unique and can't be repeated across all semantic models in your dbt project. | Required | | [`description`](#description) | Describes the calculated measure. | Optional | -| [`agg`](#aggregation) | dbt supports the following aggregations: `sum`, `max`, `min`, `count_distinct`, and `sum_boolean`. | Required | +| [`agg`](#aggregation) | dbt supports the following aggregations: `sum`, `min`, `max`, `average`, `sum_boolean`, `count_distinct`, `median`, and `percentile`. | Required | | [`expr`](#expr) | You can either reference an existing column in the table or use a SQL expression to create or derive a new one. | Optional | | [`non_additive_dimension`](#non-additive-dimensions) | Non-additive dimensions can be specified for measures that cannot be aggregated over certain dimensions, such as bank account balances, to avoid producing incorrect results. | Optional | | `agg_params` | specific aggregation properties such as a percentile. | Optional | From 44da122d29d564d79f7f47ee74abeadf93e40429 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 09:51:42 +0100 Subject: [PATCH 554/703] Update website/docs/docs/build/measures.md --- website/docs/docs/build/measures.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/measures.md b/website/docs/docs/build/measures.md index 58b28b3d0f4..a80ff9f5e3e 100644 --- a/website/docs/docs/build/measures.md +++ b/website/docs/docs/build/measures.md @@ -12,7 +12,7 @@ Measures are aggregations performed on columns in your model. They can be used a | --- | --- | --- | | [`name`](#name) | Provide a name for the measure, which must be unique and can't be repeated across all semantic models in your dbt project. | Required | | [`description`](#description) | Describes the calculated measure. | Optional | -| [`agg`](#aggregation) | dbt supports the following aggregations: `sum`, `min`, `max`, `average`, `sum_boolean`, `count_distinct`, `median`, and `percentile`. | Required | +| [`agg`](#aggregation) | dbt supports aggregations such as `sum`, `min`, `max`, and more. Refer to [Aggregation](/docs/build/measures#aggregation) for the full list of supported aggregation types. | Required | | [`expr`](#expr) | You can either reference an existing column in the table or use a SQL expression to create or derive a new one. | Optional | | [`non_additive_dimension`](#non-additive-dimensions) | Non-additive dimensions can be specified for measures that cannot be aggregated over certain dimensions, such as bank account balances, to avoid producing incorrect results. | Optional | | `agg_params` | specific aggregation properties such as a percentile. | Optional | From 161b276cf81472fe4f6f5c989c8aef2adc82cf73 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 11:59:58 +0100 Subject: [PATCH 555/703] Update build-metrics-intro.md add clarification that postgres supported in metricflow but not dbt cloud yet per [slack thread](https://getdbt.slack.com/archives/C046L0VTVR6/p1691092050990009?thread_ts=1691089665.187629&cid=C046L0VTVR6) - Use MetricFlow with Snowflake, BigQuery, Databricks, Postgres (CLI only), or Redshift. (dbt Cloud Postgres support coming soon) --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index ed10a874a3c..232b3f83ee0 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -21,7 +21,7 @@ Before you start, consider the following guidelines: - Define metrics in YAML and query them using these [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). - You must be on dbt v1.6 or higher to use MetricFlow. [Upgrade your dbt Cloud version](/docs/dbt-versions/upgrade-core-in-cloud) to get started. -- Use MetricFlow with Snowflake, Postgres, BigQuery, Databricks, or Redshift. +- Use MetricFlow with Snowflake, BigQuery, Databricks, Postgres (CLI only), or Redshift. (dbt Cloud Postgres support coming soon) - Unlock insights and query your metrics using the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and its diverse range of [available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). From 17f4408f0311f70e09bfece56dc13e1fa1439604 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 12:00:39 +0100 Subject: [PATCH 556/703] Update quickstart-sl.md --- website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index 8dbcc6c46f3..f70433cd10a 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -23,7 +23,7 @@ import TestQuery from '/snippets/_sl-test-and-query-metrics.md'; The dbt Semantic Layer, powered by [MetricFlow](/docs/build/about-metricflow), simplifies defining and using critical business metrics. It centralizes metric definitions, eliminates duplicate coding, and ensures consistent self-service access to metrics in downstream tools. -MetricFlow is a powerful component within the dbt Semantic Layer that helps users define and manage company metrics efficiently. It provides flexible abstractions and SQL query generation, and also allows data consumers to retrieve metric datasets quickly and easily from a data platform. +MetricFlow is a powerful component within the dbt Semantic Layer that helps users define and manage company metrics efficiently. It provides flexible abstractions and SQL query generation and also allows data consumers to retrieve metric datasets quickly and easily from a data platform. Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: From c263c9155e53c826217c89e19ff86811e49bfcb8 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 12:01:48 +0100 Subject: [PATCH 557/703] Update _v2-sl-prerequisites.md --- website/snippets/_v2-sl-prerequisites.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 95d563c9359..cce4555af87 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -3,11 +3,11 @@ To use the Semantic Layer, you must: -- Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America -- Have both your production and development environments running dbt version 1.6 or higher -- Use Snowflake, BigQuery, Databricks, and Redshift data platform +- Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. +- Have both your production and development environments running dbt version 1.6 or higher. +- Use Snowflake, BigQuery, Databricks, and Redshift. - Create a successful run in the environment where you configure the Semantic Layer.
        - **Note:** Semantic Layer currently supports Deployment environment. (_development experience coming soon_) + **Note:** Semantic Layer currently supports the Deployment environment. (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. - Set up the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions.
        **Note:** Developer accounts can only query data manually using the [MetricFlow CLI](/docs/build/metricflow-cli) and SQL. To dynamically query metrics using external tools, you must have a dbt Cloud Team or Enterprise account with access to the Semantic Layer API.
        From 090ae602666d4c46ab3938b4640370c6e884fad8 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 12:02:56 +0100 Subject: [PATCH 558/703] Update sl-getting-started.md --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 7259a7eb22c..bfe8eb00f4d 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -29,7 +29,7 @@ To fully experience the power of a universal dbt Semantic Layer, take the follow - Have an understanding of key concepts in [MetricFlow](/docs/build/about-metricflow), which powers the revamped dbt Semantic Layer. - Have both your production and development environments running dbt version 1.6 or higher. Refer to [upgrade in dbt Cloud](/docs/dbt-versions/upgrade-core-in-cloud) for more info. -- Use Snowflake, BigQuery, Databricks, or Redshift data platform +- Use MetricFlow with Snowflake, BigQuery, Databricks, Postgres (CLI only), or Redshift. (dbt Cloud Postgres support coming soon) - A successful run in the environment where your Semantic Layer is configured - To query with dbt Cloud: * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America (Other regions coming soon) From 12d8824d43f2bb2beed449ff1fae0dec003deb19 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 12:04:09 +0100 Subject: [PATCH 559/703] Update website/snippets/_v2-sl-prerequisites.md --- website/snippets/_v2-sl-prerequisites.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index cce4555af87..28c82e6f913 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -5,7 +5,7 @@ To use the Semantic Layer, you must: - Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. - Have both your production and development environments running dbt version 1.6 or higher. -- Use Snowflake, BigQuery, Databricks, and Redshift. +- Use Snowflake, BigQuery, Databricks, or Redshift. (dbt Cloud Postgres support coming soon). - Create a successful run in the environment where you configure the Semantic Layer.
        **Note:** Semantic Layer currently supports the Deployment environment. (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. From 2d8d40162cc5b89e39b914de877ebbfb16e791d6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 12:04:32 +0100 Subject: [PATCH 560/703] Update website/snippets/_v2-sl-prerequisites.md --- website/snippets/_v2-sl-prerequisites.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/snippets/_v2-sl-prerequisites.md b/website/snippets/_v2-sl-prerequisites.md index 28c82e6f913..8e7075db257 100644 --- a/website/snippets/_v2-sl-prerequisites.md +++ b/website/snippets/_v2-sl-prerequisites.md @@ -5,7 +5,7 @@ To use the Semantic Layer, you must: - Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. - Have both your production and development environments running dbt version 1.6 or higher. -- Use Snowflake, BigQuery, Databricks, or Redshift. (dbt Cloud Postgres support coming soon). +- Use Snowflake, BigQuery, Databricks, or Redshift (dbt Cloud Postgres support coming soon). - Create a successful run in the environment where you configure the Semantic Layer.
        **Note:** Semantic Layer currently supports the Deployment environment. (_development experience coming soon_) - Install the [MetricFlow CLI](/docs/build/metricflow-cli). After installing the package, make sure you run at least one model. From 36b1140b2d87f036c986919ac1ce9989e64632df Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 12:20:47 +0100 Subject: [PATCH 561/703] Update metrics-overview.md update to required and fix typo --- website/docs/docs/build/metrics-overview.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index 5607fcbab99..fd84c96e0ec 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -13,9 +13,9 @@ The keys for metrics definitions are: | Component | Description | Type | | --------- | ----------- | ---- | | `name` | Provide the reference name for the metric. This name must be unique amongst all metrics. | Required | -| `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Optional | +| `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Required | | `type_params` | Additional parameters used to configure metrics. `type_params` are different for each metric type. | Required | -| `filter` | For any type of metric, you may optionally include a filter string, which applies a filter for a dimension, entity or time dimension when computing the metric. You can think of this as your WHERE clause. | Optional | +| `filter` | For any type of metric, you may optionally include a filter string, which applies a filter for a dimension, entity, or time dimension when computing the metric. You can think of this as your WHERE clause. | Optional | | `meta` | Additional metadata you want to add to your metric. | @@ -38,7 +38,7 @@ metrics: This page explains the different supported metric types you can add to your dbt project. + ## Related docs From 278987ace0feebbb96f3f8d5f12fe823c84ed3d7 Mon Sep 17 00:00:00 2001 From: Sudarsan Balaji Date: Mon, 7 Aug 2023 14:24:02 +0100 Subject: [PATCH 562/703] Fix typo --- website/docs/reference/resource-configs/redshift-configs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index 18e4da73225..9972ab6f8b4 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -143,6 +143,6 @@ We hope to address the following limitations in a future release. Swapping a materialized view to a table or view is not supported. You must manually drop the existing materialized view in the data warehouse before calling `dbt run` again. -For example, assume that a view, `my_mv.sql`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="table"`, they will get an error. The workaround is to execute `DROP MATERIALIZE VIEW my_mv CASCASE` on the data warehouse before trying the model again. +For example, assume that a view, `my_mv.sql`, has already been materialized to the underlying data platform via `dbt run`. If a user then changes the model's config to be `materialized="table"`, they will get an error. The workaround is to execute `DROP MATERIALIZE VIEW my_mv CASCADE` on the data warehouse before trying the model again. From 0df86d2fb81cd91d7898874976bc6e003e0f3109 Mon Sep 17 00:00:00 2001 From: winnie <91998347+gwenwindflower@users.noreply.github.com> Date: Mon, 7 Aug 2023 10:21:54 -0500 Subject: [PATCH 563/703] Un nest filter for simple metrics --- website/docs/docs/build/metrics-overview.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index 5607fcbab99..a1be4969537 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -142,9 +142,9 @@ metrics: - name: cancellations type: simple type_params: - measure: cancellations_usd # Specify the measure you are creating a proxy for. - filter: | - {{ Dimension('order__value')}} > 100 and {{Dimension('user__acquisition')}} + measure: cancellations_usd # Specify the measure you are creating a proxy for. + filter: | + {{ Dimension('order__value')}} > 100 and {{Dimension('user__acquisition')}} ``` ## Filters From bb14288aca21dbe289a954df24d6cbf0399b99eb Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Mon, 7 Aug 2023 17:23:48 +0100 Subject: [PATCH 564/703] Update semantic-layer-3-build-semantic-models.md opening to fix some typos and suggestions. --- .../semantic-layer-3-build-semantic-models.md | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md index 549dbccf8dd..ba4d0cab726 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md @@ -43,7 +43,7 @@ semantic_models: semantic_models: - name: orders description: | - Model containting order data. The grain of the table is the order id. + Model containing order data. The grain of the table is the order id. model: ref('stg_orders') entities: ... @@ -117,13 +117,13 @@ semantic_models: - 🧮 Dimensions are the columns that we want to **filter and group by**, **the adjectives of our project**. They come in three types: - **categorical** - **time** - - slowly changing dimensions — [these are covered in the documentation](https://docs.getdbt.com/docs/build/dimensions#scd-type-ii), and a little more complex. To focus on building your mental models of MetricFlow's fundamentals, we won't be using SCDs this guide. + - slowly changing dimensions — [these are covered in the documentation](https://docs.getdbt.com/docs/build/dimensions#scd-type-ii), and a little more complex. To focus on building your mental models of MetricFlow's fundamentals, we won't be using SCDs in this guide. - ➕ We're **not limited to existing columns**, we can use the `expr` property to add simple computations in our dimensions. - 📛 Categorical dimensions are the simplest, they simply require a `name` and `type` (type being categorical). **If the `name` property matches the name of the dimension column**, that's it, you're done. If you want or need to use a `name` other than the column name, or do some filtering or computation, **you can supply an optional `expr` property** to evaluate for the dimension. ### Dimensions in action -- 👀 Lets look at our staging model again and see what fields we have available. +- 👀 Let's look at our staging model again and see what fields we have available. ```SQL select @@ -145,7 +145,7 @@ from source - ⏰ For now the only dimension to add is a **time dimension**. - 🕰️ At least one **primary time dimension** is **required** for any semantic models that **have measures**. -- 1️⃣ We denote this with the `is_primary` property, or if there is only one time dimension supplied it is primary by default. Below we only have `ordered_at` as a timestamp so we don't need to specify anything except the maximum granularity we're bucketing to (in this case, day). +- 1️⃣ We denote this with the `is_primary` property, or if there is only a one-time dimension supplied it is primary by default. Below we only have `ordered_at` as a timestamp so we don't need to specify anything except the maximum granularity we're bucketing to (in this case, day). ```YAML dimensions: @@ -161,7 +161,7 @@ dimensions: We'll discuss an alternate situation, dimensional tables that have static numeric values like supply costs or tax rates but no time dimensions, later in the Guide. ::: -- 🔢 We can also **make a dimension out of numeric column** that would be typically be a measures. +- 🔢 We can also **make a dimension out of a numeric column** that would typically be a measure. - 🪣 Using `expr` we can **create buckets of values that we label** for our dimension. We'll add one of these in for labeling 'large orders' as any order totals over $50. ```YAML @@ -185,7 +185,7 @@ dimensions: ### Measures in action -- 👀 Lets look at **our staging model** one last time and see what **fields we want to measure**. +- 👀 Let's look at **our staging model** one last time and see what **fields we want to measure**. ```SQL select @@ -213,7 +213,7 @@ from source ```YAML measures: - name: order_total - description: The total amount for each order inlcuding taxes. + description: The total amount for each order including taxes. agg: sum - name: tax_paid description: The total tax paid on each order. @@ -275,17 +275,17 @@ semantic_models: agg: sum ``` -- 🦺 We can check that it's valid configuration and works with the real data our dbt project is generating by using the `mf validate-configs` command. This will: +- 🦺 We can check that it's a valid configuration and works with the real data our dbt project is generating by using the `mf validate-configs` command. This will: 1. **Parse the semantic manifest** our configuration describes out of the dbt project. 2. Validate the **internal semantics** of the manifest as described by our code. 3. Validate the **external semantics** of the manifest against your data warehouse (e.g. making sure that a column specified as a dimension exists on the proper table) ## Review and next steps -Let's review what the basics of semantic models, they: +Let's review the basics of semantic models: - 🧱 Consist off **entities, dimensions, and measures**. - 🫂 Describe the **semantics and relationships of objects** in the warehouse. - 1️⃣ Correspond to a **single logical model** in your dbt project. -Next up, lets use our new semantic model to **build a metric**! +Next up, let's use our new semantic model to **build a metric**! From 194b04e30e9e20325935433f6b1b76534101f858 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 7 Aug 2023 12:50:14 -0400 Subject: [PATCH 565/703] Adding Databricks to MV --- website/docs/guides/migration/versions/01-upgrading-to-v1.6.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md index 22111828e24..ea231ce7f9a 100644 --- a/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md +++ b/website/docs/guides/migration/versions/01-upgrading-to-v1.6.md @@ -47,8 +47,9 @@ Supported on: - [Postgres](/reference/resource-configs/postgres-configs#materialized-view) - [Redshift](/reference/resource-configs/redshift-configs#materialized-view) - Snowflake (docs forthcoming) +- Databricks (docs forthcoming) -Support for BigQuery and Databricks forthcoming. +Support for BigQuery coming soon. ### New commands for mature deployment From 471f346bb7091f9d13ce099ba9d72c09f4405b63 Mon Sep 17 00:00:00 2001 From: Joel Labes Date: Tue, 8 Aug 2023 08:20:22 +1200 Subject: [PATCH 566/703] Create new guide for updated CI (#3722) ## What are you changing in this pull request and why? Working with Julia to update our guidance based on the new CI functionality. This will also obsolete [this guide](https://docs.getdbt.com/guides/best-practices/environment-setup/1-env-guide-overview), and I've move most of the CI content in [this guide](https://docs.getdbt.com/guides/orchestration/custom-cicd-pipelines/1-cicd-background) out so that the latter becomes a CD-only guide. Preview link: - https://deploy-preview-3722--docs-getdbt-com.netlify.app/guides/orchestration/set-up-ci/overview Showing a redirect working: - https://deploy-preview-3722--docs-getdbt-com.netlify.app/guides/best-practices/environment-setup/1-env-guide-overview ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. Adding new pages (delete if not applicable): - [x] Add page to `website/sidebars.js` - [x] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [x] Remove page from `website/sidebars.js` - [x] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page --- .../environment-setup/1-env-guide-overview.md | 67 ---------------- .../2-one-deployment-environment.md | 61 --------------- .../3-many-deployment-environments.md | 77 ------------------- .../1-cicd-background.md | 4 +- .../orchestration/set-up-ci/1-introduction.md | 10 +++ .../orchestration/set-up-ci/2-quick-setup.md | 58 ++++++++++++++ .../set-up-ci/3-run-dbt-project-evaluator.md | 46 +++++++++++ .../4-lint-on-push.md} | 43 +++++------ .../set-up-ci/5-multiple-checks.md | 69 +++++++++++++++++ website/sidebars.js | 33 ++++---- website/static/_redirects | 4 + 11 files changed, 226 insertions(+), 246 deletions(-) delete mode 100644 website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md delete mode 100644 website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md delete mode 100644 website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md create mode 100644 website/docs/guides/orchestration/set-up-ci/1-introduction.md create mode 100644 website/docs/guides/orchestration/set-up-ci/2-quick-setup.md create mode 100644 website/docs/guides/orchestration/set-up-ci/3-run-dbt-project-evaluator.md rename website/docs/guides/orchestration/{custom-cicd-pipelines/2-lint-on-push.md => set-up-ci/4-lint-on-push.md} (55%) create mode 100644 website/docs/guides/orchestration/set-up-ci/5-multiple-checks.md diff --git a/website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md b/website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md deleted file mode 100644 index 8c1d79877ae..00000000000 --- a/website/docs/guides/best-practices/environment-setup/1-env-guide-overview.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: "dbt Cloud environment best practices" -id: 1-env-guide-overview -description: Learn how to configure environments in dbt Cloud. -displayText: "dbt Cloud environment best practices" -hoverSnippet: Learn how to configure environments in dbt Cloud. ---- - -> *How do I manage environments in my dbt Cloud project? How many do I need?* -> -> *How does my structure map to environments in dbt Cloud?* -> -> *What do git branches have to do with my dbt Cloud environments?* -> - -If these questions keep you up at night, you’ve come to the right place! When it comes to managing your dbt Cloud environments, there is not a one-size-fits-all solution for all teams. In this guide we’ll walk you through a few environment architecture options for dbt Cloud that we’d recommend, and hopefully you find an option that works for you. - -## Learning goals - -This guide has three main goals: - -- Provide our recommendations on managing dbt Cloud environments -- Illustrate these recommendations with comprehensive examples -- At each stage, explain *why* we recommend the approach that we do, so that you're equipped to decide when and where to deviate from these recommendations to better fit your organization’s unique needs - -:::info -☁️ This guide focuses on architecture for **dbt Cloud**. However, similar principles apply for developers using dbt Core. Before diving into this guide we recommend taking a look at our **[dbt Cloud environments](/docs/dbt-cloud-environments)** page for more context. - -::: - -### How many environments do I really need? - -Environments define the way that dbt will execute your code, including: - -- The **version of dbt** that will run. -- The **version of your code** to be executed. -- The **connection information** for your warehouse. -- In dbt Cloud, there are **two types of environments:** - - **Development** — the environment settings in which you work in the IDE on a development branch. - - **Deployment** — the environment settings in which a dbt Cloud job runs. - -In this guide, we’re going to focus on **deployment environments**, which determine how your project is executed when a **dbt Cloud job executes**. When using both approaches, make sure to designate one environment as "Production." This will allow you to use features such as dbt Explorer and cross-project references. Refer to [Set product environment](/docs/deploy/deploy-environments#set-as-production-environment-beta) for details. - -Depending on your git workflow and testing strategy, you'll be choosing between one deployment environment or many deployment environments. We provide a high-level overview of how these two deployment strategies work here, but use each section of this guide to get a deep-dive into how these setups differ. - -| Setup option | Works well if you | Relative complexity level | -| --- | --- | --- | -| One deployment environment | - only scheduled runs for one set of data objects
        - development branches are merged directly to main | Low | -| Many deployment environments | - feature branches move through several promotion stages | High | - -### TL;DR — One deployment environment - -We usually recommended folks start with the basics; having one deployment environment is usually the simplest and most maintainable approach to start. This approach works well if: - -- You only need to have **scheduled jobs running in a single environment** within your data warehouse. -- You use a **single primary branch** and follow a direct promotion (**Dev —> Prod**) strategy - -With this option, your production jobs and your [CI jobs](/docs/deploy/continuous-integration) that ensure code integrity are managed within one single deployment environment. - -### TL;DR — Many deployment environments -This approach adds a bit more complexity and may slow down the development process, but adds a layer of security that can be worth the tradeoff. This approach works well if: - -- Your organization maintains **several long-lived git branches** to control how and when changes are tested and promoted to production. - - Some orgs follow a **Dev —> QA —> Prod release cycle** — if that sounds like your org, this approach is probably right for you. -- The **output of your dbt project is an input to other systems** and you need to test and validate many changes on a stable, long-lived staging dataset in a pre-production environment. - -The two options are explored in more detail in the following sections, including the benefits, trade-offs, the steps required to implement the setup in dbt Cloud. diff --git a/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md b/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md deleted file mode 100644 index 5b6c3b742e3..00000000000 --- a/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -title: "One deployment environment" -id: 2-one-deployment-environment -description: Learn how to configure a single deployment environment setup in dbt Cloud. -displayText: "dbt Cloud environment best practices" -hoverSnippet: Learn how to configure a single deployment environment setup in dbt Cloud. ---- -import ExpNote from '/snippets/_explorer-beta-note.md'; - - -## What this looks like - -1. You have a **single *development* environment** where dbt users can access the dbt Cloud IDE and make changes to their code on feature branches created off of your default branch in your repository (most often the `main` branch). -2. You have a **single *deployment* environment** (let’s call it “Production”) where your scheduled jobs run referencing the `main` branch.
        - - - -3. You also have a [**CI job**](/docs/deploy/continuous-integration) that kicks off anytime you open a PR to merge a feature branch into `main`. This CI job can run in your dbt “Production” environment. - -:::info - -☁️ CI jobs run in a dedicated custom schema for each PR, so there will no collision with your production schemas. - -::: - - - -### Git workflow - - - - -1. In the dbt Cloud IDE, developers work on feature branches, created from the `main` branch (`feature_a`, `feature_b`, `feature_c` above) -2. When code is ready, developer opens a PR to merge feature branch into `main` -3. [**CI Job**](/docs/deploy/continuous-integration) automatically kicks off, and tests the changes made in the PR -4. When CI Job is successful and team is ready to deploy changes to Production, the PR is merged directly into the `main` branch. The next time a production job runs, these changes will be incorporated and executed. - -### dbt Cloud setup - -1. Create your [**development environment**](/docs/dbt-cloud-environments) to power the dbt Cloud IDE. No extra customization needed! -2. Create your **[production deployment environment](/docs/deploy/deploy-environments)**. -3. Define your **dbt Cloud jobs** in the production deployment environment from step 2. - 1. **Production job(s)**: You will need to set up **at least one scheduled job** that deploys your project to your production databases/schemas. You may create multiple jobs based on your business SLAs. - 2. **CI Job**: Unlike the production jobs, which are triggered via the scheduler, this job will be triggered when PRs are opened in your repository. Refer to [CI jobs](/docs/deploy/ci-jobs) for details. - - -### When this works well - -This approach is recommended for most use cases because it enables you to quickly and safely implement code changes in the production environment. It also gives developers the confidence to trust and rely on these changes. With this option, multiple developers can easily contribute to and collaborate on the same codebase with confidence. - -:::info -💡 Check out [Sunrun's Coalesce 2022 talk](https://www.youtube.com/watch?v=vmBAO2XN-fM) on Automating CI/CD in dbt Cloud, where they simplified their CI/CD process from several long-lived branches to a single long-lived main branch with feature branches. - -::: - -### When this doesn’t work so well - -- You have a **formal QA process** before merging code into production. -- You want to **control when features are released** to production. -- You need to have scheduled **jobs running in many environments** due to dependencies on outside systems. - - e.g. Your organization has many applications that consume and test data changes in a lower non-Production environment before changes should be promoted to Production. diff --git a/website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md b/website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md deleted file mode 100644 index 2ac46f811b1..00000000000 --- a/website/docs/guides/best-practices/environment-setup/3-many-deployment-environments.md +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: "Many deployment environments" -id: 3-many-deployment-environments -description: Learn how to configure a many deployment environment setup in dbt Cloud. -displayText: "dbt Cloud environment best practices" -hoverSnippet: Learn how to configure a many deployment environment setup in dbt Cloud. ---- -import ExpNote from '/snippets/_explorer-beta-note.md'; - -## What this looks like - -1. You have a **single *development* environment** where dbt users can access the dbt Cloud IDE and make changes to their code. However, you’ll want to update the **[custom branch settings](faqs/Environments/custom-branch-settings)** to ensure that developers create feature branches off of the a non-production branch. For this example, we’ll refer to this as the `qa` branch. -2. You have a **QA deployment environment**, running scheduled jobs from the `qa` branch that deploys your dbt project to a pre-production warehouse location. -3. You have a **Production deployment environment,** running scheduled jobs from the `main` branch that deploys your dbt project to your production warehouse location.
        - - - -4. You have **multiple CI jobs** (one in each deployment environment) to ensure changes to each branch are tested. - - - -### Git workflow - - - -1. In the dbt Cloud IDE, developers work on feature branches, **created from the `qa` branch** (`feature_a`, `feature_b`, `feature_c` above). -2. When code is ready, developer opens a PR to merge feature branch into `qa`. -3. The **first CI Job** automatically kicks off to test the changes introduced in the PR. This job will *defer to a regularly-scheduled job in the QA environment* and run in the QA deployment environment. -4. When **CI Job is successful** and team is ready to deploy changes, the **PR is merged into `qa`.** -5. Scheduled jobs run in the QA deployment environment, running on `qa` branch to ensure the new changes work as intended. -6. When **all feature branches** for a given release (e.g. sprint) have been **successfully merged** to `qa` and are **running without error** in the QA deployment environment, a team member opens a **PR to merge `qa` → `main`.** -7. The **second CI Job** automatically kicks off to test changes in PR. This job will *defer to a regularly-scheduled job in the Production environment* and run in the Production deployment environment. -8. When **second CI Job** is successful and team is ready to deploy changes, the **PR is merged into `main`**. -9. Monitor scheduled jobs in the Production deployment environment that are running on `main` branch. Voila! All changes are released and ready for your stakeholders. - -:::info -💡 Considering a different branching strategy that involves cherry picking? [Maybe reconsider!](https://docs.getdbt.com/blog/the-case-against-git-cherry-picking) - -::: - -### dbt Cloud setup - -1. Create your [**development environment**](/docs/dbt-cloud-environments) to power the dbt Cloud IDE. - - Here, we’ll set a **custom branch** so that users in the IDE create their feature branches from `qa` instead of `main`. Click **Only run on a custom branch** in **General settings**, enter `qa` into **Custom Branch.** - -2. Set up your **QA [deployment environment](/docs/deploy/deploy-environments)** - - Here, we’ll apply the same custom branch settings as the development environment in Step 1. All scheduled jobs in the QA deployment environment will use the code from the `qa` branch during execution. - -3. **Define QA jobs** - 1. **QA job(s)**: You’ll want to create at least one scheduled job, running on a roughly daily cadence. This will allow us to make sure all the code executes without error before you release it to production, and will also power the first CI job. - 2. **CI Job**: As above, this job will be triggered when PRs are opened in your repository. Enable this option by selecting **Run on Pull Requests?** under the **Continuous Integration(CI)** tab under the **Triggers** section. Since we’re using the custom branch setting in the QA environment, you'll also want to be sure to select the second option **Run only on Custom Branch** (selected by default) — this means that only PRs created against the `qa` branch will trigger this job, rather than any PR at all. - - This job will also need to defer to one of the QA jobs created in step 3a. This enables the use of the `state` modifier in your selection syntax to only run changes introduced by your PR. - -4. Set up your **Production [deployment environment](/docs/deploy/deploy-environments)** - - Here, we’ll *also* use the same custom branch settings as the other environments, but set the custom branch as `main`. Even thought the `main` branch is the default, setting this value enables us to properly set up the CI Job in the next step. - -5. **Define production jobs** - 1. **Production job(s)**: You will need to set up at least one scheduled job that deploys your project to your production databases/schemas. You may create multiple jobs based on your business SLAs. - 2. **Production CI Job**: As above, this job will be triggered when PRs are opened in your repository. Enable this option by selecting **Run on Pull Requests?** under the **Continuous Integration(CI)** tab under the **Triggers** section. Since we’re using the custom branch setting in the QA environment, we’ll also want to select the second option **Run only on Custom Branch** — this means that only PRs created against the `main` branch will trigger this job, rather than any PR at all. - - This job will also need to defer to one of the QA jobs created in step 5a. This enables the use of the `state` modifier in your selection syntax to only run changes introduced by your PR. - -### When this works well - -This approach works well when it’s critical to **apply user acceptance and integration testing to your project in a pre-production environment**. This approach allows you to have scheduled jobs running in **many environments** on your data warehouse. - -### When this doesn’t work so well - -This approach may slow down the time it takes to get new feature into production, since it requires additional steps in the deployment process and additional branches to maintain. Keep in mind that adding complexity to your deployment process might cause some slowdown in your release cycle. - -## Conclusion - -While there’s no single correct answer to how to setup your dbt Cloud environments, they are flexible enough to enable just about any code promotion workflow your organization uses. We would love to hear how you’ve set up your deployment infrastructure in dbt Cloud! diff --git a/website/docs/guides/orchestration/custom-cicd-pipelines/1-cicd-background.md b/website/docs/guides/orchestration/custom-cicd-pipelines/1-cicd-background.md index 048fe637de0..a66259c6c49 100644 --- a/website/docs/guides/orchestration/custom-cicd-pipelines/1-cicd-background.md +++ b/website/docs/guides/orchestration/custom-cicd-pipelines/1-cicd-background.md @@ -1,10 +1,8 @@ --- -title: Customizing CI/CD +title: Customizing CI/CD with Custom Pipelines id: 1-cicd-background --- -# Creating Custom CI/CD Pipelines - One of the core tenets of dbt is that analytic code should be version controlled. This provides a ton of benefit to your organization in terms of collaboration, code consistency, stability, and the ability to roll back to a prior version. There’s an additional benefit that is provided with your code hosting platform that is often overlooked or underutilized. Some of you may have experience using dbt Cloud’s [webhook functionality](https://docs.getdbt.com/docs/dbt-cloud/using-dbt-cloud/cloud-enabling-continuous-integration) to run a job when a PR is created. This is a fantastic capability, and meets most use cases for testing your code before merging to production. However, there are circumstances when an organization needs additional functionality, like running workflows on every commit (linting), or running workflows after a merge is complete. In this article, we will show you how to setup custom pipelines to lint your project and trigger a dbt Cloud job via the API. A note on parlance in this article since each code hosting platform uses different terms for similar concepts. The terms `pull request` (PR) and `merge request` (MR) are used interchangeably to mean the process of merging one branch into another branch. diff --git a/website/docs/guides/orchestration/set-up-ci/1-introduction.md b/website/docs/guides/orchestration/set-up-ci/1-introduction.md new file mode 100644 index 00000000000..97df16b4ce1 --- /dev/null +++ b/website/docs/guides/orchestration/set-up-ci/1-introduction.md @@ -0,0 +1,10 @@ +--- +title: "Get started with Continuous Integration tests" +slug: overview +--- + +By validating your code _before_ it goes into production, you don't need to spend your afternoon fielding messages from people whose reports are suddenly broken. + +A solid CI setup is critical to preventing avoidable downtime and broken trust. dbt Cloud uses **sensible defaults** to get you up and running in a performant and cost-effective way in minimal time. + +After that, there's time to get fancy, but let's walk before we run. diff --git a/website/docs/guides/orchestration/set-up-ci/2-quick-setup.md b/website/docs/guides/orchestration/set-up-ci/2-quick-setup.md new file mode 100644 index 00000000000..89e04daa8df --- /dev/null +++ b/website/docs/guides/orchestration/set-up-ci/2-quick-setup.md @@ -0,0 +1,58 @@ +--- +title: "Baseline: Enable CI in 15 minutes" +slug: in-15-minutes +description: Find issues before they are deployed to production with dbt Cloud's Slim CI. +--- + +:::tip Join the beta + +dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs, refer to [Set up CI jobs (Beta version)](/docs/deploy/ci-jobs?version=beta#set-up-ci-jobs). This guide assumes you are using the improvements available in the beta. + +If you're interested in joining our beta, please fill out our Google Form to [sign up](https://forms.gle/VxwBD1xjzouE84EQ6). + +::: + +## Prerequisites + +As part of your initial dbt Cloud setup, you should already have Development and Production environments configured. Let's recap what each does: + +- Your **Development environment** powers the IDE. Each user has individual credentials, and builds into an individual dev schema. Nothing you do here impacts any of your colleagues. +- Your **Production environment** brings the canonical version of your project to life for downstream consumers. There is a single set of deployment credentials, and everything is built into your production schema(s). + +In this guide, we're going to add a **CI environment**, where proposed changes can be validated in the context of the entire project without impacting production systems. We will use a single set of deployment credentials (like the Prod environment), but models are built in a separate location to avoid impacting others (like the Dev environment). + +Your git flow will look like this: + + +## Step 1: Create a new CI environment + +See [Create a new environment](/docs/dbt-cloud-environments#create-a-deployment-environment). The environment should be called **CI**. Just like your existing Production environment, it will be a Deployment-type environment. + +When setting a Schema in the **Deployment Credentials** area, remember that dbt Cloud will automatically generate a custom schema name for each PR to ensure that they don't interfere with your deployed models. This means you can safely set the same Schema name as your Production job. + +## Step 2: Double-check your Production environment is identified + +Go into your existing Production environment, and ensure that the **Set as Production environment** checkbox is set. It'll make things easier later. + +## Step 3: Create a new job in the CI environment + +Use the **Continuous Integration Job** template, and call the job **CI Check**. + +In the Execution Settings, your command will be preset to `dbt build --select state:modified+`. Let's break this down: + +- [`dbt build`](/reference/commands/build) runs all nodes (seeds, models, snapshots, tests) at once in DAG order. If something fails, nodes that depend on it will be skipped. +- The [`state:modified+` selector](/reference/node-selection/methods#the-state-method) means that only modified nodes and their children will be run ("Slim CI"). In addition to [not wasting time](https://discourse.getdbt.com/t/how-we-sped-up-our-ci-runs-by-10x-using-slim-ci/2603) building and testing nodes that weren't changed in the first place, this significantly reduces compute costs. + +To be able to find modified nodes, dbt needs to have something to compare against. dbt Cloud uses the last successful run of any job in your Production environment as its [comparison state](/reference/node-selection/syntax#about-node-selection). As long as you identified your Production environment in Step 2, you won't need to touch this. If you didn't, pick the right environment from the dropdown. + +## Step 4: Test your process + +That's it! There are other steps you can take to be even more confident in your work, such as [validating your structure follows best practices](/guides/orchestration/set-up-ci/run-dbt-project-evaluator) and [linting your code](/guides/orchestration/set-up-ci/lint-on-push), but this covers the most critical checks. + +To test your new flow, create a new branch in the dbt Cloud IDE then add a new file or modify an existing one. Commit it, then create a new Pull Request (not a draft). Within a few seconds, you’ll see a new check appear in your git provider. + +## Things to keep in mind + +- If you make a new commit while a CI run based on older code is in progress, it will be automatically canceled and replaced with the fresh code. +- An unlimited number of CI jobs can run at once. If 10 developers all commit code to different PRs at the same time, each person will get their own schema containing their changes. Once each PR is merged, dbt Cloud will drop that schema. +- CI jobs will never block a production run. diff --git a/website/docs/guides/orchestration/set-up-ci/3-run-dbt-project-evaluator.md b/website/docs/guides/orchestration/set-up-ci/3-run-dbt-project-evaluator.md new file mode 100644 index 00000000000..646a9cb42b7 --- /dev/null +++ b/website/docs/guides/orchestration/set-up-ci/3-run-dbt-project-evaluator.md @@ -0,0 +1,46 @@ +--- +title: "Enforce best practices with dbt project evaluator" +slug: run-dbt-project-evaluator +description: dbt Project Evaluator can be run from inside of your existing dbt Cloud CI job to identify common flaws in projects. +--- + +dbt Project Evaluator is a package designed to identify deviations from best practices common to many dbt projects, including modeling, testing, documentation, structure and performance problems. For an introduction to the package, read its [launch blog post](/blog/align-with-dbt-project-evaluator). + +## Step 1: Install the package + +As with all packages, add a reference to `dbt-labs/dbt_project_evaluator` to your `packages.yml` file. See the [dbt Package Hub](https://hub.getdbt.com/dbt-labs/dbt_project_evaluator/latest/) for full installation instructions. + +## Step 2: Define test severity with an environment variable + +As noted in the [documentation](https://dbt-labs.github.io/dbt-project-evaluator/latest/ci-check/), tests in the package are set to `warn` severity by default. + +To have these tests fail in CI, create a new environment called `DBT_PROJECT_EVALUATOR_SEVERITY`. Set the project-wide default to `warn`, and set it to `error` in the CI environment. + +In your `dbt_project.yml` file, override the severity configuration: + +```yaml +tests: +dbt_project_evaluator: + +severity: "{{ env_var('DBT_PROJECT_EVALUATOR_SEVERITY', 'warn') }}" +``` + +## Step 3: Update your CI commands + +Because these tests should only run after the rest of your project has been built, your existing CI command will need to be updated to exclude the dbt_project_evaluator package. You will then add a second step which builds _only_ the package's models and tests. + +Update your steps to: + +```bash +dbt build --select state:modified+ --exclude package:dbt_project_evaluator +dbt build --select package:dbt_project_evaluator +``` + +## Step 4: Apply any customizations + +Depending on the state of your project when you roll out the evaluator, you may need to skip some tests or allow exceptions for some areas. To do this, refer to the documentation on: + +- [disabling tests](https://dbt-labs.github.io/dbt-project-evaluator/latest/customization/customization/) +- [excluding groups of models from a specific test](https://dbt-labs.github.io/dbt-project-evaluator/latest/customization/exceptions/) +- [excluding packages or sources/models based on path](https://dbt-labs.github.io/dbt-project-evaluator/latest/customization/excluding-packages-and-paths/) + +If you create a seed to exclude groups of models from a specific test, remember to disable the default seed and include `dbt_project_evaluator_exceptions` in your second `dbt build` command above. diff --git a/website/docs/guides/orchestration/custom-cicd-pipelines/2-lint-on-push.md b/website/docs/guides/orchestration/set-up-ci/4-lint-on-push.md similarity index 55% rename from website/docs/guides/orchestration/custom-cicd-pipelines/2-lint-on-push.md rename to website/docs/guides/orchestration/set-up-ci/4-lint-on-push.md index 465994e4442..1932ffe1019 100644 --- a/website/docs/guides/orchestration/custom-cicd-pipelines/2-lint-on-push.md +++ b/website/docs/guides/orchestration/set-up-ci/4-lint-on-push.md @@ -1,11 +1,12 @@ --- -title: Lint code on push -id: 2-lint-on-push +title: "Run linting checks with SQLFluff" +slug: lint-on-push +description: Enforce your organization's SQL style guide with by running SQLFluff in your git workflow whenever new code is pushed. --- -This section shows a very basic example of linting a project every time a commit is pushed to the repo. While it is simple, it shows the power of CI and can be expanded on to meet the needs of your organization. +By [linting](/docs/cloud/dbt-cloud-ide/lint-format#lint) your project during CI, you can ensure that code styling standards are consistently enforced, without spending human time nitpicking comma placement. -The steps below use [SQLFluff](https://docs.sqlfluff.com/en/stable/) to scan your code and look for linting errors. In the example, it's set to use the `snowflake` dialect, and specifically runs the rules L019, L020, L021, and L022. This is purely for demonstration purposes. You should update this to reflect your code base's [dialect](https://docs.sqlfluff.com/en/stable/dialects.html) and the [rules](https://docs.sqlfluff.com/en/stable/rules.html) you've established for your repo. +The steps below create an action/pipeline which uses [SQLFluff](https://docs.sqlfluff.com/en/stable/) to scan your code and look for linting errors. If you don't already have SQLFluff rules defined, check out [our recommended config file](/guides/best-practices/how-we-style/2-how-we-style-our-sql). ### 1. Create a YAML file to define your pipeline @@ -21,8 +22,8 @@ The YAML files defined below are what tell your code hosting platform the steps }> -In order for GitHub to know that you want to run an action, you need to have a few specific folders in your project. Add a new folder named `.github`, and within that folder add a new one named `workflows`. Your final folder structure will look like this: - +GitHub Actions are defined in the `.github/workflows` directory. To define the job for your action, add a new file named `lint_on_push.yml` under the `workflows` folder. Your final folder structure will look like this: + ```sql my_awesome_project ├── .github @@ -30,16 +31,14 @@ my_awesome_project │ │ └── lint_on_push.yml ``` -To define the job for our action, let’s add a new file named `lint_on_push.yml` under the `workflows` folder. This file is how we tell the GitHub runner what to execute when the job is triggered. - -Below I touch on the important pieces for running a dbt Cloud job, but if you want a full run-down of all the components of this YAML file checkout [this GitHub article](https://docs.github.com/en/actions/learn-github-actions/understanding-github-actions#understanding-the-workflow-file) on actions. - **Key pieces:** -- `on:` - this is used to filter when the pipeline is run. In this example we’re running it on every push except for pushes to branches named `main`. For more filters, checkout [GitHub’s docs](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows). +- `on:` defines when the pipeline is run. This workflow will run whenever code is pushed to any branch except `main`. For other trigger options, check out [GitHub’s docs](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows). - `runs-on: ubuntu-latest` - this defines the operating system we’re using to run the job -- `uses:` - remember the virtual servers we covered in the background section? They’re just empty operating systems, so there are two pieces of setup that are needed in order to access the code in your repo, and setup Python correctly on the virtual server. These two actions are called from other repos in GitHub to provide those services. For more information on them, checkout their repos: [actions/checkout](https://github.com/actions/checkout#checkout-v3) and [actions/setup-python](https://github.com/actions/setup-python#setup-python-v3). -- `run:` - this is how we’re telling the GitHub runner to execute the Python script we defined above. +- `uses:` - When the Ubuntu server is created, it is completely empty. [`checkout`](https://github.com/actions/checkout#checkout-v3) and [`setup-python`](https://github.com/actions/setup-python#setup-python-v3) are public GitHub Actions which enable the server to access the code in your repo, and set up Python correctly. +- `run:` - these steps are run at the command line, as though you typed them at a prompt yourself. This will install sqlfluff and lint the project. Be sure to set the correct `--dialect` for your project. + +For a full breakdown of the properties in a workflow file, see [Understanding the workflow file](https://docs.github.com/en/actions/learn-github-actions/understanding-github-actions#understanding-the-workflow-file) on GitHub's website. ```yaml name: lint dbt project on push @@ -50,7 +49,7 @@ on: - 'main' jobs: -# this job runs SQLFluff with a specific set of rules + # this job runs SQLFluff with a specific set of rules # note the dialect is set to Snowflake, so make that specific to your setup # details on linter rules: https://docs.sqlfluff.com/en/stable/rules.html lint_project: @@ -63,9 +62,9 @@ jobs: with: python-version: "3.9" - name: Install SQLFluff - run: "pip install sqlfluff==0.13.1" + run: "pip install sqlfluff" - name: Lint project - run: "sqlfluff lint models --dialect snowflake --rules L019,L020,L021,L022" + run: "sqlfluff lint models --dialect snowflake" ``` @@ -83,7 +82,7 @@ my_awesome_project **Key pieces:** - `image: python:3.9` - this defines the virtual image we’re using to run the job -- `rules:` - this is used to filter when the pipeline runs. In this case we’re telling it to run on every push event except when the branch is named `main`. Filters are very powerful to run commands on specific events, and you can find a full list in [GitLab’s documentation](https://docs.gitlab.com/ee/ci/yaml/#rules). +- `rules:` - defines when the pipeline is run. This workflow will run whenever code is pushed to any branch except `main`. For other rules, refer to [GitLab’s documentation](https://docs.gitlab.com/ee/ci/yaml/#rules). - `script:` - this is how we’re telling the GitLab runner to execute the Python script we defined above. ```yaml @@ -100,8 +99,8 @@ lint-project: rules: - if: $CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH != 'main' script: - - pip install sqlfluff==0.13.1 - - sqlfluff lint models --dialect snowflake --rules L019,L020,L021,L022 + - pip install sqlfluff + - sqlfluff lint models --dialect snowflake ``` @@ -118,7 +117,7 @@ my_awesome_project **Key pieces:** - `image: python:3.11.1` - this defines the virtual image we’re using to run the job -- `'**':` - this is used to filter when the pipeline runs. In this case we’re telling it to run on every push event, and you can see at line 12 we're creating a dummy pipeline for `master`. More information on filtering when a pipeline is run can be found in [Bitbucket's documentation](https://support.atlassian.com/bitbucket-cloud/docs/pipeline-triggers/) +- `'**':` - this is used to filter when the pipeline runs. In this case we’re telling it to run on every push event, and you can see at line 12 we're creating a dummy pipeline for `main`. More information on filtering when a pipeline is run can be found in [Bitbucket's documentation](https://support.atlassian.com/bitbucket-cloud/docs/pipeline-triggers/) - `script:` - this is how we’re telling the Bitbucket runner to execute the Python script we defined above. ```yaml @@ -134,7 +133,7 @@ pipelines: - pip install sqlfluff==0.13.1 - sqlfluff lint models --dialect snowflake --rules L019,L020,L021,L022 - 'master': # override if your default branch doesn't run on a branch named "master" + 'main': # override if your default branch doesn't run on a branch named "main" - step: script: - python --version @@ -145,7 +144,7 @@ pipelines: ### 2. Commit and push your changes to make sure everything works -After you finish creating the YAML files, commit and push your code. Doing this will trigger your pipeline for the first time! If everything goes well, you should see the pipeline in your code platform. When you click into the job you’ll get a log showing that SQLFluff was run. If your code failed linting you’ll get an error in the job with a description of what needs to be fixed. If everything passed the lint check, you’ll see a successful job run. +After you finish creating the YAML files, commit and push your code to trigger your pipeline for the first time. If everything goes well, you should see the pipeline in your code platform. When you click into the job you’ll get a log showing that SQLFluff was run. If your code failed linting you’ll get an error in the job with a description of what needs to be fixed. If everything passed the lint check, you’ll see a successful job run. + +## Step 1: Create a `release` branch in your git repo + +As noted above, this branch will outlive any individual feature, and will be the base of all feature development for a period of time. Your team might choose to create a new branch for each sprint (`qa/sprint-01`, `qa/sprint-02`, etc), tie it to a version of your data product (`qa/1.0`, `qa/1.1`), or just have a single `qa` branch which remains active indefinitely. + +## Step 2: Update your Development environment to use the `qa` branch + +See [Custom branch behavior](/docs/dbt-cloud-environments#custom-branch-behavior). Setting `qa` as your custom branch ensures that the IDE creates new branches and PRs with the correct target, instead of using `main`. + + + +## Step 3: Create a new QA environment + +See [Create a new environment](/docs/dbt-cloud-environments#create-a-deployment-environment). The environment should be called **QA**. Just like your existing Production and CI environments, it will be a Deployment-type environment. + +Set its branch to `qa` as well. + +## Step 4: Create a new job + +Use the **Continuous Integration Job** template, and call the job **QA Check**. + +In the Execution Settings, your command will be preset to `dbt build --select state:modified+`. Let's break this down: + +- [`dbt build`](/reference/commands/build) runs all nodes (seeds, models, snapshots, tests) at once in DAG order. If something fails, nodes that depend on it will be skipped. +- The [`state:modified+` selector](/reference/node-selection/methods#the-state-method) means that only modified nodes and their children will be run ("Slim CI"). In addition to [not wasting time](https://discourse.getdbt.com/t/how-we-sped-up-our-ci-runs-by-10x-using-slim-ci/2603) building and testing nodes that weren't changed in the first place, this significantly reduces compute costs. + +To be able to find modified nodes, dbt needs to have something to compare against. Normally, we use the Production environment as the source of truth, but in this case there will be new code merged into `qa` long before it hits the `main` branch and Production environment. Because of this, we'll want to defer the Release environment to itself. + +### Optional: also add a compile-only job + +dbt Cloud uses the last successful run of any job in that environment as its [comparison state](/reference/node-selection/syntax#about-node-selection). If you have a lot of PRs in flight, the comparison state could switch around regularly. + +Adding a regularly-scheduled job inside of the QA environment whose only command is `dbt compile` can regenerate a more stable manifest for comparison purposes. + +## Step 5: Test your process + +When the Release Manager is ready to cut a new release, they will manually open a PR from `qa` into `main` from their git provider (e.g. GitHub, GitLab, Azure DevOps). dbt Cloud will detect the new PR, at which point the existing check in the CI environment will trigger and run. When using the [baseline configuration](/guides/orchestration/set-up-ci/in-15-minutes), it's possible to kick off the PR creation from inside of the dbt Cloud IDE. Under this paradigm, that button will create PRs targeting your QA branch instead. + +To test your new flow, create a new branch in the dbt Cloud IDE then add a new file or modify an existing one. Commit it, then create a new Pull Request (not a draft) against your `qa` branch. You'll see the integration tests begin to run. Once they complete, manually create a PR against `main`, and within a few seconds you’ll see the tests run again but this time incorporating all changes from all code that hasn't been merged to main yet. diff --git a/website/sidebars.js b/website/sidebars.js index e9cab8815a9..0faa37afff0 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -246,7 +246,7 @@ const sidebarSettings = { { type: "category", label: "Build your metrics", - link: { type: "doc", id: "docs/build/build-metrics-intro"}, + link: { type: "doc", id: "docs/build/build-metrics-intro" }, collapsed: true, items: [ { @@ -274,7 +274,7 @@ const sidebarSettings = { { type: "category", label: "Metrics", - link: { type: "doc", id: "docs/build/metrics-overview"}, + link: { type: "doc", id: "docs/build/metrics-overview" }, items: [ "docs/build/cumulative", "docs/build/derived", @@ -909,18 +909,6 @@ const sidebarSettings = { "guides/best-practices/materializations/materializations-guide-6-examining-builds", "guides/best-practices/materializations/materializations-guide-7-conclusion", ], - }, - { - type: "category", - label: "dbt Cloud Environment best practices", - link: { - type: "doc", - id: "guides/best-practices/environment-setup/1-env-guide-overview", - }, - items: [ - "guides/best-practices/environment-setup/2-one-deployment-environment", - "guides/best-practices/environment-setup/3-many-deployment-environments", - ], }, "guides/best-practices/debugging-errors", "guides/best-practices/writing-custom-generic-tests", @@ -949,16 +937,29 @@ const sidebarSettings = { "guides/orchestration/airflow-and-dbt-cloud/3-running-airflow-and-dbt-cloud", "guides/orchestration/airflow-and-dbt-cloud/4-airflow-and-dbt-cloud-faqs", ], + }, + { + type: "category", + label: "Set up Continuous Integration", + link: { + type: "doc", + id: "guides/orchestration/set-up-ci/introduction", + }, + items: [ + "guides/orchestration/set-up-ci/quick-setup", + "guides/orchestration/set-up-ci/run-dbt-project-evaluator", + "guides/orchestration/set-up-ci/lint-on-push", + "guides/orchestration/set-up-ci/multiple-checks", + ], }, { type: "category", - label: "Customizing CI/CD", + label: "Custom Continuous Deployment Workflows", link: { type: "doc", id: "guides/orchestration/custom-cicd-pipelines/1-cicd-background", }, items: [ - "guides/orchestration/custom-cicd-pipelines/2-lint-on-push", "guides/orchestration/custom-cicd-pipelines/3-dbt-cloud-job-on-merge", "guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr", "guides/orchestration/custom-cicd-pipelines/5-something-to-consider", diff --git a/website/static/_redirects b/website/static/_redirects index 4172475e431..ba9d00d37f6 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -762,6 +762,10 @@ https://tutorial.getdbt.com/* https://docs.getdbt.com/:splat 301! /docs/guides/migration-guide/_ /guides/migration/versions/:splat 301! /docs/guides/_ /guides/legacy/:splat 301! +/guides/best-practices/environment-setup/1-env-guide-overview /guides/orchestration/set-up-ci/overview 301 +/guides/best-practices/environment-setup/2-one-deployment-environment /guides/orchestration/set-up-ci/in-15-minutes 301 +/guides/best-practices/environment-setup/3-many-deployment-environments /guides/orchestration/set-up-ci/multiple-environments 301 + # adapter development docs /docs/contributing/what-are-adapters /guides/advanced/adapter-development/1-what-are-adapters 301 From d89ddd1aecf9e52320681cfe1e5f038aa6f09629 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Mon, 7 Aug 2023 14:34:38 -0600 Subject: [PATCH 567/703] Example usage of a `foreign_key` and `unique` constraints --- website/docs/reference/resource-properties/constraints.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/website/docs/reference/resource-properties/constraints.md b/website/docs/reference/resource-properties/constraints.md index 51e10e028ab..cbc388ee616 100644 --- a/website/docs/reference/resource-properties/constraints.md +++ b/website/docs/reference/resource-properties/constraints.md @@ -53,6 +53,9 @@ models: # column-level constraints constraints: - type: not_null + - type: unique + - type: foreign_key + expression: . () - type: ... ``` From cd4c456a604730198eed58d7345e73f050cc2620 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Mon, 7 Aug 2023 14:36:32 -0600 Subject: [PATCH 568/703] Add `unique` the list of supported types --- website/docs/reference/resource-properties/constraints.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-properties/constraints.md b/website/docs/reference/resource-properties/constraints.md index cbc388ee616..71d13c0ebb3 100644 --- a/website/docs/reference/resource-properties/constraints.md +++ b/website/docs/reference/resource-properties/constraints.md @@ -20,7 +20,7 @@ Constraints require the declaration and enforcement of a model [contract](/refer Constraints may be defined for a single column, or at the model level for one or more columns. As a general rule, we recommend defining single-column constraints directly on those columns. The structure of a constraint is: -- `type` (required): one of `not_null`, `primary_key`, `foreign_key`, `check`, `custom` +- `type` (required): one of `not_null`, `unique`, `primary_key`, `foreign_key`, `check`, `custom` - `expression`: Free text input to qualify the constraint. Required for certain constraint types, and optional for others. - `name` (optional): Human-friendly name for this constraint. Supported by some data platforms. - `columns` (model-level only): List of column names to apply the constraint over From 5f81389e47567a3af7190234e6e0b77027491b8e Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Mon, 7 Aug 2023 13:41:48 -0700 Subject: [PATCH 569/703] Fast-follow for CI improvements beta --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 08fbd5f4225..a1f12d19f84 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -24,7 +24,7 @@ If you're interested in joining our beta, please fill out our Google Form to [si ## Set up CI jobs {#set-up-ci-jobs} -dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schema builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch as part of your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings) and, accordingly, the CI job in that dedicated environment will be triggered only when PRs are made to the specified custom branch. +dbt Labs recommends that you create your CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schema builds and your production data builds. Additionally, sometimes teams need their CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch as part of your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings) and, accordingly, the CI job in that dedicated environment will be triggered only when PRs are made to the specified custom branch. To learn more, refer to [Get started with CI tests](/guides/orchestration/set-up-ci/overview). From 87bb0258a6e17a5cba722cc744cc5f8cb93b8113 Mon Sep 17 00:00:00 2001 From: dave-connors-3 <73915542+dave-connors-3@users.noreply.github.com> Date: Mon, 7 Aug 2023 16:01:42 -0500 Subject: [PATCH 570/703] Update metrics-overview.md make table align with sample code --- website/docs/docs/build/metrics-overview.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index a1be4969537..a768b18f41a 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -13,7 +13,10 @@ The keys for metrics definitions are: | Component | Description | Type | | --------- | ----------- | ---- | | `name` | Provide the reference name for the metric. This name must be unique amongst all metrics. | Required | -| `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Optional | +| `description` | Provide the description for your metric. | Optional | +| `configs` | Provide the specific configurations for your metric | Optional | +| `label` | PThe display name for your metric. This value will be shown in downstream tools. | Required | +| `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Required | | `type_params` | Additional parameters used to configure metrics. `type_params` are different for each metric type. | Required | | `filter` | For any type of metric, you may optionally include a filter string, which applies a filter for a dimension, entity or time dimension when computing the metric. You can think of this as your WHERE clause. | Optional | | `meta` | Additional metadata you want to add to your metric. | From 9c5c4ea682059dde7ab08d5adfc479c1e4811b40 Mon Sep 17 00:00:00 2001 From: Thomas Lento Date: Mon, 7 Aug 2023 14:29:27 -0700 Subject: [PATCH 571/703] Update ratio metrics overview to reference metrics, not measures Ratio metrics take other metrics as input, but the documentation was pointing to measures rather than metrics. --- website/docs/docs/build/metrics-overview.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index a1be4969537..eaa0b306674 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -98,7 +98,7 @@ metrics: ### Ratio metrics -[Ratio metrics](/docs/build/ratio) involve a numerator measure and a denominator measure. A `constraint` string can be applied, to both numerator and denominator, or applied separately to the numerator or denominator. +[Ratio metrics](/docs/build/ratio) involve a numerator metric and a denominator metric. A `constraint` string can be applied, to both numerator and denominator, or applied separately to the numerator or denominator. ```yaml # Ratio Metric @@ -106,25 +106,25 @@ metrics: - name: cancellation_rate owners: - support@getdbt.com -# Ratio metrics create a ratio out of two measures. -# Define the measures from the semantic model as numerator or denominator +# Ratio metrics create a ratio out of two metrics. +# Define the metrics from the semantic manifest as numerator or denominator type: ratio type_params: - numerator: cancellations_usd - denominator: transaction_amount_usd + numerator: cancellations + denominator: transaction_amount filter: | # add optional constraint string. This applies to both the numerator and denominator {{ Dimension('customer__country') }} = 'MX' - name: enterprise_cancellation_rate owners: - support@getdbt.com # Ratio metrics create a ratio out of two measures. - # Define the measures from the semantic model as numerator or denominator + # Define the metrics from the semantic model as numerator or denominator type: ratio type_params: numerator: - name: cancellations_usd + name: cancellations filter: {{ Dimension('company__tier' )}} = 'enterprise' # constraint only applies to the numerator - denominator: transaction_amount_usd + denominator: transaction_amount filter: | # add optional constraint string. This applies to both the numerator and denominator {{ Dimension('customer__country') }} = 'MX' ``` From 182faea325ace82450d6052e255e98f4743bb6c5 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 7 Aug 2023 17:30:53 -0400 Subject: [PATCH 572/703] Alpha docs for CLI --- .../docs/docs/cloud/cloud-cli-installation.md | 111 ++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 website/docs/docs/cloud/cloud-cli-installation.md diff --git a/website/docs/docs/cloud/cloud-cli-installation.md b/website/docs/docs/cloud/cloud-cli-installation.md new file mode 100644 index 00000000000..f6f8fa78d38 --- /dev/null +++ b/website/docs/docs/cloud/cloud-cli-installation.md @@ -0,0 +1,111 @@ +--- +title: Installing the dbt Cloud CLI (Alpha) +id: cloud-cli-installation +description: "Instructions for installing and configuring dbt Cloud CLI" +--- + +:::warning Alpha functionality + +The following installation instructions are for the dbt Cloud CLI, currently in alpha. These instructions are not intended for general audiences at this time. + +::: + +## Installing dbt Cloud CLI + +### Install and update with Brew (recommended) + +Install the CLI: + +```bash +brew tap dbt-labs/dbt-cli +brew install dbt-cloud-cli +``` + +Verify the installation: + +```bash +which dbt +dbt --help +``` + +Upgrade the CLI: + +```bash +brew update +brew upgrade dbt-cloud-cli +``` + +### Manually install (Windows only) + +1. Download the latest darwin release from [Github](https://github.com/dbt-labs/dbti/releases). +2. Place the `dbt` executable in `/usr/local/bin` or `/usr/.local/bin` if `/usr/local/bin` doesn’t exist. +3. Navigate to `/usr/local/bin` / `/usr/.local/bin` in Finder and double click on the `dbt` executable: + 1. You will receive a message that the executable is untrusted and cannot be run. Override this by right-clicking the executable and selecting “Open”. A new prompt will pop up, allowing you to open the executable. + 2. After clicking “Open”, a terminal window will appear. The window can be closed, and you can now invoke `dbt` from any other terminal*. + - You may need to deal with conflicts due to other `dbt` installations. Run `which dbt` to see the location of the `dbt` installation you’re using. If you get `/usr/local/bin/dbt` from `which dbt`, you’re using the one you just installed. If not, you may need to uninstall other installations, directly invoke the executable, or handle path conflicts differently, such as using an alias for the new executable. +4. Move to a directory with a dbt project, and create a `dbt_cloud.yml` file containing your `project-id` from dbt Cloud. +5. Invoke `dbt --help` from your terminal to see a list of supported commands. + +#### Updating dbt Cloud installation (Windows only) + +Follow the same process in [Installing dbt Cloud CLI](#manually-install-windows-only) and replace the existing `dbt` executable with the new one. You should not have to go through the security steps again. + +## Setting up the CLI + +1. Ensure that you have created a project in dbt Cloud. + +2. Ensure that your personal [development credentials](#glossary) are set on the project + +3. Create an environment variable with your [dbt cloud API key](#glossary): + +```bash + + > $ vi ~/.zshrc + + ... + + # dbt Cloud CLI + export DBT_CLOUD_API_KEY="1234" + +``` + +4. Load the new environment variable. Note: you may need to reactivate your python virtual environment after sourcing your shell's dot file. Alternatively, restart your shell instead of sourcing the shell's dot file + +```bash + > $ source ~/.zshrc +``` + +5. Navigate to a dbt project + +```bash + > $ cd ~/dbt-projects/jaffle_shop +``` + +6. Ensure that a `dbt_cloud.yml` file exists in the project directory. The file is required to have a `project-id` field with a valid [project ID](#glossary): + +```bash +> $ pwd +/Users/user/dbt-projects/jaffle_shop + +> $ cat dbt_cloud.yml +project-id: '123456' +``` + +7. The following commands are supported as of now (we will be adding more in the future): + +- `dbt run` +- `dbt build` +- `dbt deps` +- `dbt cancel` +- `dbt reattach` +- `dbt --help` + +## Using dbt Cloud CLI + +**More informaiton coming soon** + +### Glossary + +- **dbt cloud API key:** your API key found by navigating to the **gear icon**, clicking **Profile Settings**, and scrolling down to **API**. +- **Project ID:** the ID of the dbt project you're working with. Can be retrieved from the dbt cloud URL after a project has been selected, for example, `https://cloud.getdbt.com/deploy/{accountID}/projects/{projectID}` +- **Development credentials:** your personal warehouse credentials for the project you’re working with. They can be set by selecting the project and entering them in dbt Cloud. Navigate to the **gear icon**, click **Profile Settings**, and click **Credentials** from the left-side menu. From a0c331d2237a499dc9dc14ac49ac3f97242ddb42 Mon Sep 17 00:00:00 2001 From: Thomas Lento Date: Mon, 7 Aug 2023 14:38:58 -0700 Subject: [PATCH 573/703] Update ratio-metrics.md to reflect use of metrics as inputs Ratio metrics take metric inputs for the numerator and denominator, rather than measures. --- website/docs/docs/build/ratio-metrics.md | 30 +++++++++++++----------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/website/docs/docs/build/ratio-metrics.md b/website/docs/docs/build/ratio-metrics.md index e206671d423..db108bd37fb 100644 --- a/website/docs/docs/build/ratio-metrics.md +++ b/website/docs/docs/build/ratio-metrics.md @@ -6,7 +6,7 @@ sidebar_label: Ratio tags: [Metrics, Semantic Layer] --- -Ratio allows you to create a ratio between two measures. You simply specify a numerator and a denominator measure. Additionally, you can apply a dimensional filter to both the numerator and denominator using a constraint string when computing the metric. +Ratio allows you to create a ratio between two metrics. You simply specify a numerator and a denominator metric. Additionally, you can apply a dimensional filter to both the numerator and denominator using a constraint string when computing the metric. The following displays the full spec for ratio metrics, along with an example: @@ -17,12 +17,14 @@ metrics: type: ratio # Required label: The value that will be displayed in downstream tools #Required type_params: # Required - numerator: the measure used for the numerator # Required - filter: filter for the numerator# Optional - alias: alias for the numerator # Optional - denominator: the measure used for the denominator # Required - filter: filter for the denominator # Optional - alias: alias for the denominator # Optional + numerator: the name of the metric used for the numerator, or a struct of properties as below # Required + name: name of metric used for the numerator # Required + filter: filter for the numerator# Optional + alias: alias for the numerator # Optional + denominator: the name of the metric used for the denominator, or a struct of properties as below # Required + name: name of metric used for the denominator # Required + filter: filter for the denominator # Optional + alias: alias for the denominator # Optional ``` ## Ratio metrics example @@ -30,13 +32,13 @@ metrics: ```yaml # Ratio Metric metrics: - - name: food_order_total_pct - description: "The food order total as the % of the total order" - label: Food Order Total % + - name: food_order_pct + description: "The food order count as a ratio of the total order count" + label: Food Order Ratio type: ratio type_params: - numerator: food_order_total - denominator: order_total + numerator: food_orders + denominator: orders ``` ## Ratio metrics using different semantic models @@ -90,7 +92,7 @@ on ## Add filter -Users can define constraints on input measures for a metric by applying a filter directly to the measure, like so: +Users can define constraints on input metrics for a ratio metric by applying a filter directly to the input metric, like so: ```yaml metrics: @@ -108,4 +110,4 @@ metrics: name: distinct_purchasers ``` -Note the `filter` and `alias` parameters for the measure referenced in the numerator. Use the `filter` parameter to apply a filter to the measure it's attached to. The `alias` parameter is used to avoid naming conflicts in the rendered SQL queries when the same measure is used with different filters. If there are no naming conflicts, the `alias` parameter can be left out. +Note the `filter` and `alias` parameters for the metric referenced in the numerator. Use the `filter` parameter to apply a filter to the metric it's attached to. The `alias` parameter is used to avoid naming conflicts in the rendered SQL queries when the same metric is used with different filters. If there are no naming conflicts, the `alias` parameter can be left out. From 62318110d613f38c7c6a1653ea5ddc18fd853dad Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Mon, 7 Aug 2023 15:57:36 -0700 Subject: [PATCH 574/703] add time granularity --- website/docs/docs/build/metricflow-cli.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 8687d4e31aa..b58f42859a0 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -367,3 +367,11 @@ mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 + +## Time Granularity +You can optionally specify the time granularity you want your data to be aggregated at by appending double underscore and the unit of granularity you want against your. The granularity options are: day, week, month, quarter year. + +An example for querying metric data at a monthly grain would look like this +```bash +mf query --metrics revenue --group-by metric_time__month +``` \ No newline at end of file From 7f50ddbedafc2dbaa68c3bc51460893b90f12803 Mon Sep 17 00:00:00 2001 From: Jordan Date: Mon, 7 Aug 2023 16:07:03 -0700 Subject: [PATCH 575/703] Update website/docs/docs/build/metricflow-cli.md nice one! Co-authored-by: winnie <91998347+gwenwindflower@users.noreply.github.com> --- website/docs/docs/build/metricflow-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index b58f42859a0..ed0489c6490 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -369,7 +369,7 @@ mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 ## Time Granularity -You can optionally specify the time granularity you want your data to be aggregated at by appending double underscore and the unit of granularity you want against your. The granularity options are: day, week, month, quarter year. +You can optionally specify the time granularity you want your data to be aggregated at by appending double underscore and the unit of granularity you want to the global time dimension `metric_time`. The granularity options to group by are: day, week, month, quarter year. An example for querying metric data at a monthly grain would look like this ```bash From 5a8ccedfeae74cc1e0d6ac7a7733af2b9e55377c Mon Sep 17 00:00:00 2001 From: Jordan Date: Mon, 7 Aug 2023 16:26:55 -0700 Subject: [PATCH 576/703] Update website/docs/docs/build/metricflow-cli.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/build/metricflow-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index ed0489c6490..5c3bcb5899b 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -368,7 +368,7 @@ mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 -## Time Granularity +## Time granularity You can optionally specify the time granularity you want your data to be aggregated at by appending double underscore and the unit of granularity you want to the global time dimension `metric_time`. The granularity options to group by are: day, week, month, quarter year. An example for querying metric data at a monthly grain would look like this From 06e4104c1090c012d23df010e2444aa60a6db914 Mon Sep 17 00:00:00 2001 From: Jordan Date: Mon, 7 Aug 2023 16:27:02 -0700 Subject: [PATCH 577/703] Update website/docs/docs/build/metricflow-cli.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/build/metricflow-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 5c3bcb5899b..69b3a8fda02 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -369,7 +369,7 @@ mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 ## Time granularity -You can optionally specify the time granularity you want your data to be aggregated at by appending double underscore and the unit of granularity you want to the global time dimension `metric_time`. The granularity options to group by are: day, week, month, quarter year. +Optionally, you can specify the time granularity you want your data to be aggregated at by appending two underscores and the unit of granularity you want to `metric_time`, the global time dimension . You can group the granularity by: `day`, `week`, `month`, `quarter`, and `year`. An example for querying metric data at a monthly grain would look like this ```bash From 9bfc0092f6d81bd49f9d90f2534f56afad9f96d6 Mon Sep 17 00:00:00 2001 From: Jordan Date: Mon, 7 Aug 2023 16:27:12 -0700 Subject: [PATCH 578/703] Update website/docs/docs/build/metricflow-cli.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/build/metricflow-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-cli.md b/website/docs/docs/build/metricflow-cli.md index 69b3a8fda02..0f90b2bb03c 100644 --- a/website/docs/docs/build/metricflow-cli.md +++ b/website/docs/docs/build/metricflow-cli.md @@ -371,7 +371,7 @@ mf query --metrics order_amount --group-by metric_time,is_food_order --limit 10 ## Time granularity Optionally, you can specify the time granularity you want your data to be aggregated at by appending two underscores and the unit of granularity you want to `metric_time`, the global time dimension . You can group the granularity by: `day`, `week`, `month`, `quarter`, and `year`. -An example for querying metric data at a monthly grain would look like this +Below is an example for querying metric data at a monthly grain: ```bash mf query --metrics revenue --group-by metric_time__month ``` \ No newline at end of file From b24c417ef9c17d2ae9883ed79fb6ade29f07a53d Mon Sep 17 00:00:00 2001 From: winnie <91998347+gwenwindflower@users.noreply.github.com> Date: Mon, 7 Aug 2023 18:50:36 -0500 Subject: [PATCH 579/703] Update 'How we structure' for SL (#3851) ## What are you changing in this pull request and why? Adds a page to the 'How we structure' guide covering our recommendations re the Semantic Layer. --- .../how-we-structure/1-guide-overview.md | 22 ++--- .../how-we-structure/2-staging.md | 81 ++++++++++--------- .../how-we-structure/3-intermediate.md | 32 ++++---- .../how-we-structure/4-marts.md | 24 +++--- .../5-semantic-layer-marts.md | 48 +++++++++++ ...roject.md => 6-the-rest-of-the-project.md} | 14 ++-- website/sidebars.js | 3 +- 7 files changed, 137 insertions(+), 87 deletions(-) create mode 100644 website/docs/guides/best-practices/how-we-structure/5-semantic-layer-marts.md rename website/docs/guides/best-practices/how-we-structure/{5-the-rest-of-the-project.md => 6-the-rest-of-the-project.md} (93%) diff --git a/website/docs/guides/best-practices/how-we-structure/1-guide-overview.md b/website/docs/guides/best-practices/how-we-structure/1-guide-overview.md index 1bbb628b73d..d1e78231e57 100644 --- a/website/docs/guides/best-practices/how-we-structure/1-guide-overview.md +++ b/website/docs/guides/best-practices/how-we-structure/1-guide-overview.md @@ -14,9 +14,9 @@ Building a great dbt project is an inherently collaborative endeavor, bringing t Famously, Steve Jobs [wore the same outfit everyday](https://images.squarespace-cdn.com/content/v1/5453c539e4b02ab5398ffc8f/1580381503218-E56FQDNFL1P4OBLQWHWW/ke17ZwdGBToddI8pDm48kJKedFpub2aPqa33K4gNUDwUqsxRUqqbr1mOJYKfIPR7LoDQ9mXPOjoJoqy81S2I8N_N4V1vUb5AoIIIbLZhVYxCRW4BPu10St3TBAUQYVKcxb5ZTIyC_D49_DDQq2Sj8YVGtM7O1i4h5tvKa2lazN4nGUQWMS_WcPM-ztWbVr-c/steve_jobs_outfit.jpg) to reduce decision fatigue. You can think of this guide similarly, as a black turtleneck and New Balance sneakers for your company’s dbt project. A dbt project’s power outfit, or more accurately its structure, is composed not of fabric but of files, folders, naming conventions, and programming patterns. How you label things, group them, split them up, or bring them together — the system you use to organize the [data transformations](https://www.getdbt.com/analytics-engineering/transformation/) encoded in your dbt project — this is your project’s structure. -This guide is just a starting point. You may decide that you prefer Birkenstocks or a purple hoodie for your project over Jobs-ian minimalism. That's fine. What's important is that you think through the reasoning for those changes in your organization, explicitly declare them in a thorough, accessible way for all contributors, and above all *stay consistent*. +This guide is just a starting point. You may decide that you prefer Birkenstocks or a purple hoodie for your project over Jobs-ian minimalism. That's fine. What's important is that you think through the reasoning for those changes in your organization, explicitly declare them in a thorough, accessible way for all contributors, and above all _stay consistent_. -One foundational principle that applies to all dbt projects though, is the need to establish a cohesive arc moving data from *source-conformed* to *business-conformed*. Source-conformed data is shaped by external systems out of our control, while business-conformed data is shaped by the needs, concepts, and definitions we create. No matter what patterns or conventions you define within your project, this process remains the essential purpose of the transformation layer, and dbt as your tool within it. This guide is an update to a seminal analytics engineering [post of the same name](https://discourse.getdbt.com/t/how-we-structure-our-dbt-projects/355) by the great Claire Carroll, and while some of the details have changed over time (as anticipated in that post) this fundamental trajectory holds true. Moving forward, this guide will be iteratively updated as new tools expand our viewpoints, new experiences sharpen our vision, and new voices strengthen our perspectives, but always in service of that aim. +One foundational principle that applies to all dbt projects though, is the need to establish a cohesive arc moving data from _source-conformed_ to _business-conformed_. Source-conformed data is shaped by external systems out of our control, while business-conformed data is shaped by the needs, concepts, and definitions we create. No matter what patterns or conventions you define within your project, this process remains the essential purpose of the transformation layer, and dbt as your tool within it. This guide is an update to a seminal analytics engineering [post of the same name](https://discourse.getdbt.com/t/how-we-structure-our-dbt-projects/355) by the great Claire Carroll, and while some of the details have changed over time (as anticipated in that post) this fundamental trajectory holds true. Moving forward, this guide will be iteratively updated as new tools expand our viewpoints, new experiences sharpen our vision, and new voices strengthen our perspectives, but always in service of that aim. ### Learning goals @@ -24,7 +24,7 @@ This guide has three main goals: - Thoroughly cover our most up-to-date recommendations on how to structure typical dbt projects - Illustrate these recommendations with comprehensive examples -- At each stage, explain *why* we recommend the approach that we do, so that you're equipped to decide when and where to deviate from these recommendations to better fit your organization’s unique needs +- At each stage, explain _why_ we recommend the approach that we do, so that you're equipped to decide when and where to deviate from these recommendations to better fit your organization’s unique needs You should walk away from this guide with a deeper mental model of how the components of a dbt project fit together, such that purpose and principles of analytics engineering feel more clear and intuitive. @@ -33,7 +33,7 @@ By approaching our structure intentionally, we’ll gain a better understanding Our hope is that by deepening your sense of the connections between these patterns and the principles they flow from, you'll be able to translate them to fit your specific needs and craft customized documentation for your team to act on. :::info Example project. -This guide walks through our recommendations using a very simple dbt project — similar to the one used for the Getting Started guide and many other demos — from a fictional company called the Jaffle Shop. You can read more about [jaffles](https://en.wiktionary.org/wiki/jaffle) if you want (they *are* a real thing), but that context isn’t important to understand the structure. We encourage you to follow along, try things out, make changes, and take notes on what works or doesn't work for you along the way. +This guide walks through our recommendations using a very simple dbt project — similar to the one used for the Getting Started guide and many other demos — from a fictional company called the Jaffle Shop. You can read more about [jaffles](https://en.wiktionary.org/wiki/jaffle) if you want (they _are_ a real thing), but that context isn’t important to understand the structure. We encourage you to follow along, try things out, make changes, and take notes on what works or doesn't work for you along the way. ::: We'll get a deeper sense of our project as we move through the guide, but for now we just need to know that the Jaffle Shop is a restaurant selling jaffles that has two main data sources: @@ -46,17 +46,17 @@ We'll get a deeper sense of our project as we move through the guide, but for no We'll walk through our topics in the same order that our data would move through transformation: 1. Dig into how we structure the files, folders, and models for our three primary layers in the `models` directory, which build on each other: - 1. **Staging** — creating our atoms, our initial modular building blocks, from source data - 2. **Intermediate** — stacking layers of logic with clear and specific purposes to prepare our staging models to join into the entities we want - 3. **Marts** — bringing together our modular pieces into a wide, rich vision of the entities our organization cares about + 1. **Staging** — creating our atoms, our initial modular building blocks, from source data + 2. **Intermediate** — stacking layers of logic with clear and specific purposes to prepare our staging models to join into the entities we want + 3. **Marts** — bringing together our modular pieces into a wide, rich vision of the entities our organization cares about 2. Explore how these layers fit into the rest of the project: - 1. Review the overall structure comprehensively - 2. Expand on YAML configuration in-depth - 3. Discuss how to use the other folders in a dbt project: `tests`, `seeds`, and `analyses` + 1. Review the overall structure comprehensively + 2. Expand on YAML configuration in-depth + 3. Discuss how to use the other folders in a dbt project: `tests`, `seeds`, and `analyses` Below is the complete file tree of the project we’ll be working through. Don’t worry if this looks like a lot of information to take in at once - this is just to give you the full vision of what we’re building towards. We’ll focus in on each of the sections one by one as we break down the project’s structure. -```markdown +```shell jaffle_shop ├── README.md ├── analyses diff --git a/website/docs/guides/best-practices/how-we-structure/2-staging.md b/website/docs/guides/best-practices/how-we-structure/2-staging.md index a14c5c8992b..cb46fa19b33 100644 --- a/website/docs/guides/best-practices/how-we-structure/2-staging.md +++ b/website/docs/guides/best-practices/how-we-structure/2-staging.md @@ -14,7 +14,7 @@ We'll use an analogy for working with dbt throughout this guide: thinking modula Let's zoom into the staging directory from our `models` file tree [in the overview](/guides/best-practices/how-we-structure/1-guide-overview) and walk through what's going on here. -```markdown +```shell models/staging ├── jaffle_shop │ ├── _jaffle_shop__docs.md @@ -36,7 +36,7 @@ models/staging - ❌ **Subdirectories based on loader.** Some people attempt to group by how the data is loaded (Fivetran, Stitch, custom syncs), but this is too broad to be useful on a project of any real size. - ❌ **Subdirectories based on business grouping.** Another approach we recommend against is splitting up by business groupings in the staging layer, and creating subdirectories like 'marketing', 'finance', etc. A key goal of any great dbt project should be establishing a single source of truth. By breaking things up too early, we open ourselves up to creating overlap and conflicting definitions (think marketing and financing having different fundamental tables for orders). We want everybody to be building with the same set of atoms, so in our experience, starting our transformations with our staging structure reflecting the source system structures is the best level of grouping for this step. - **File names.** Creating a consistent pattern of file naming is [crucial in dbt](https://docs.getdbt.com/blog/on-the-importance-of-naming). File names must be unique and correspond to the name of the model when selected and created in the warehouse. We recommend putting as much clear information into the file name as possible, including a prefix for the layer the model exists in, important grouping information, and specific information about the entity or transformation in the model. - - ✅ `stg_[source]__[entity]s.sql` - the double underscore between source system and entity helps visually distinguish the separate parts in the case of a source name having multiple words. For instance, `google_analytics__campaigns` is always understandable, whereas to somebody unfamiliar `google_analytics_campaigns` could be `analytics_campaigns` from the `google` source system as easily as `campaigns` from the `google_analytics` source system. Think of it like an [oxford comma](https://www.youtube.com/watch?v=P_i1xk07o4g), the extra clarity is very much worth the extra punctuation. + - ✅ `stg_[source]__[entity]s.sql` - the double underscore between source system and entity helps visually distinguish the separate parts in the case of a source name having multiple words. For instance, `google_analytics__campaigns` is always understandable, whereas to somebody unfamiliar `google_analytics_campaigns` could be `analytics_campaigns` from the `google` source system as easily as `campaigns` from the `google_analytics` source system. Think of it like an [oxford comma](https://www.youtube.com/watch?v=P_i1xk07o4g), the extra clarity is very much worth the extra punctuation. - ❌ `stg_[entity].sql` - might be specific enough at first, but will break down in time. Adding the source system into the file name aids in discoverability, and allows understanding where a component model came from even if you aren't looking at the file tree. - ✅ **Plural.** SQL, and particularly SQL in dbt, should read as much like prose as we can achieve. We want to lean into the broad clarity and declarative nature of SQL when possible. As such, unless there’s a single order in your `orders` table, plural is the correct way to describe what is in a table with multiple rows. @@ -77,7 +77,7 @@ renamed as ( -- numerics amount as amount_cents, amount / 100.0 as amount, - + -- booleans case when status = 'successful' then true @@ -104,20 +104,21 @@ select * from renamed - ✅ **Categorizing** (using conditional logic to group values into buckets or booleans, such as in the `case when` statements above) - ❌ **Joins** — the goal of staging models is to clean and prepare individual source conformed concepts for downstream usage. We're creating the most useful version of a source system table, which we can use as a new modular component for our project. In our experience, joins are almost always a bad idea here — they create immediate duplicated computation and confusing relationships that ripple downstream — there are occasionally exceptions though (see [base models](guides/best-practices/how-we-structure/2-staging#staging-other-considerations) below). - ❌ **Aggregations** — aggregations entail grouping, and we're not doing that at this stage. Remember - staging models are your place to create the building blocks you’ll use all throughout the rest of your project — if we start changing the grain of our tables by grouping in this layer, we’ll lose access to source data that we’ll likely need at some point. We just want to get our individual concepts cleaned and ready for use, and will handle aggregating values downstream. -- ✅ **Materialized as views.** Looking at a partial view of our `dbt_project.yml` below, we can see that we’ve configured the entire staging directory to be materialized as views. As they’re not intended to be final artifacts themselves, but rather building blocks for later models, staging models should typically be materialized as views for two key reasons: +- ✅ **Materialized as views.** Looking at a partial view of our `dbt_project.yml` below, we can see that we’ve configured the entire staging directory to be materialized as views. As they’re not intended to be final artifacts themselves, but rather building blocks for later models, staging models should typically be materialized as views for two key reasons: + - Any downstream model (discussed more in [marts](/guides/best-practices/how-we-structure/4-marts)) referencing our staging models will always get the freshest data possible from all of the component views it’s pulling together and materializing - It avoids wasting space in the warehouse on models that are not intended to be queried by data consumers, and thus do not need to perform as quickly or efficiently ```yaml # dbt_project.yml - + models: jaffle_shop: staging: +materialized: view ``` -- Staging models are the only place we'll use the [`source` macro](/docs/build/sources), and our staging models should have a 1-to-1 relationship to our source tables. That means for each source system table we’ll have a single staging model referencing it, acting as its entry point — *staging* it — for use downstream. +- Staging models are the only place we'll use the [`source` macro](/docs/build/sources), and our staging models should have a 1-to-1 relationship to our source tables. That means for each source system table we’ll have a single staging model referencing it, acting as its entry point — _staging_ it — for use downstream. :::tip Don’t Repeat Yourself. Staging models help us keep our code DRY. dbt's modular, reusable structure means we can, and should, push any transformations that we’ll always want to use for a given component model as far upstream as possible. This saves us from potentially wasting code, complexity, and compute doing the same transformation more than once. For instance, if we know we always want our monetary values as floats in dollars, but the source system is integers and cents, we want to do the division and type casting as early as possible so that we can reference it rather than redo it repeatedly downstream. @@ -128,94 +129,96 @@ This is a welcome change for many of us who have become used to applying the sam ### Staging: Other considerations - **Base models when joins are necessary to stage concepts.** Sometimes, in order to maintain a clean and DRY staging layer we do need to implement some joins to create a solid concept for our building blocks. In these cases, we recommend creating a sub-directory in the staging directory for the source system in question and building `base` models. These have all the same properties that would normally be in the staging layer, they will directly source the raw data and do the non-joining transformations, then in the staging models we’ll join the requisite base models. The most common use cases for building a base layer under a staging folder are: + - ✅ **Joining in separate delete tables**. Sometimes a source system might store deletes in a separate table. Typically we’ll want to make sure we can mark or filter out deleted records for all our component models, so we’ll need to join these delete records up to any of our entities that follow this pattern. This is the example shown below to illustrate. ```sql -- base_jaffle_shop__customers.sql - + with - + source as ( - + select * from {{ source('jaffle_shop','customers') }} - + ), - + customers as ( - + select id as customer_id, first_name, last_name - + from source - + ) - + select * from customers ``` ```sql -- base_jaffle_shop__deleted_customers.sql - + with - + source as ( - + select * from {{ source('jaffle_shop','customer_deletes') }} - + ), - + deleted_customers as ( - + select id as customer_id, deleted as deleted_at - + from source - + ) - + select * from deleted_customers ``` ```sql -- stg_jaffle_shop__customers.sql - + with - + customers as ( - + select * from {{ ref('base_jaffle_shop__customers') }} - + ), - + deleted_customers as ( - + select * from {{ ref('base_jaffle_shop__deleted_customers') }} - + ), - + join_and_mark_deleted_customers as ( - + select customers.*, case when deleted_customers.deleted_at is not null then true else false end as is_deleted - + from customers - + left join deleted_customers on customers.customer_id = deleted_customers.customer_id - + ) - + select * from join_and_mark_deleted_customers ``` - - ✅ **Unioning disparate but symmetrical sources**. A typical example here would be if you operate multiple ecommerce platforms in various territories via a SaaS platform like Shopify. You would have perfectly identical schemas, but all loaded separately into your warehouse. In this case, it’s easier to reason about our orders if *all* of our shops are unioned together, so we’d want to handle the unioning in a base model before we carry on with our usual staging model transformations on the (now complete) set — you can dig into [more detail on this use case here](https://discourse.getdbt.com/t/unioning-identically-structured-data-sources/921). -- **[Codegen](https://github.com/dbt-labs/dbt-codegen) to automate staging table generation.** It’s very good practice to learn to write staging models by hand, they’re straightforward and numerous, so they can be an excellent way to absorb the dbt style of writing SQL. Also, we’ll invariably find ourselves needing to add special elements to specific models at times — for instance, in one of the situations above that require base models — so it’s helpful to deeply understand how they work. Once that understanding is established though, because staging models are built largely following the same rote patterns and need to be built 1-to-1 for each source table in a source system, it’s preferable to start automating their creation. For this, we have the [codegen](https://github.com/dbt-labs/dbt-codegen) package. This will let you automatically generate all the source YAML and staging model boilerplate to speed up this step, and we recommend using it in every project. + - ✅ **Unioning disparate but symmetrical sources**. A typical example here would be if you operate multiple ecommerce platforms in various territories via a SaaS platform like Shopify. You would have perfectly identical schemas, but all loaded separately into your warehouse. In this case, it’s easier to reason about our orders if _all_ of our shops are unioned together, so we’d want to handle the unioning in a base model before we carry on with our usual staging model transformations on the (now complete) set — you can dig into [more detail on this use case here](https://discourse.getdbt.com/t/unioning-identically-structured-data-sources/921). + +- **[Codegen](https://github.com/dbt-labs/dbt-codegen) to automate staging table generation.** It’s very good practice to learn to write staging models by hand, they’re straightforward and numerous, so they can be an excellent way to absorb the dbt style of writing SQL. Also, we’ll invariably find ourselves needing to add special elements to specific models at times — for instance, in one of the situations above that require base models — so it’s helpful to deeply understand how they work. Once that understanding is established though, because staging models are built largely following the same rote patterns and need to be built 1-to-1 for each source table in a source system, it’s preferable to start automating their creation. For this, we have the [codegen](https://github.com/dbt-labs/dbt-codegen) package. This will let you automatically generate all the source YAML and staging model boilerplate to speed up this step, and we recommend using it in every project. - **Utilities folder.** While this is not in the `staging` folder, it’s useful to consider as part of our fundamental building blocks. The `models/utilities` directory is where we can keep any general purpose models that we generate from macros or based on seeds that provide tools to help us do our modeling, rather than data to model itself. The most common use case is a [date spine](https://github.com/dbt-labs/dbt-utils#date_spine-source) generated with [the dbt utils package](https://hub.getdbt.com/dbt-labs/dbt_utils/latest/). :::info Development flow versus DAG order. diff --git a/website/docs/guides/best-practices/how-we-structure/3-intermediate.md b/website/docs/guides/best-practices/how-we-structure/3-intermediate.md index 5e1db61c49f..0cf44d3cccc 100644 --- a/website/docs/guides/best-practices/how-we-structure/3-intermediate.md +++ b/website/docs/guides/best-practices/how-we-structure/3-intermediate.md @@ -12,7 +12,7 @@ Once we’ve got our atoms ready to work with, we’ll set about bringing them t Let’s take a look at the intermediate layer of our project to understand the purpose of this stage more concretely. -```markdown +```shell models/intermediate └── finance ├── _int_finance__models.yml @@ -22,10 +22,10 @@ models/intermediate - **Folders** - ✅ **Subdirectories based on business groupings.** Much like the staging layer, we’ll house this layer of models inside their own `intermediate` subfolder. Unlike the staging layer, here we shift towards being business-conformed, splitting our models up into subdirectories not by their source system, but by their area of business concern. - **File names** - - `✅ int_[entity]s_[verb]s.sql` - the variety of transformations that can happen inside of the intermediate layer makes it harder to dictate strictly how to name them. The best guiding principle is to think about *verbs* (e.g. `pivoted`, `aggregated_to_user`, `joined`, `fanned_out_by_quantity`, `funnel_created`, etc.) in the intermediate layer. In our example project, we use an intermediate model to pivot payments out to the order grain, so we name our model `int_payments_pivoted_to_orders`. It’s easy for anybody to quickly understand what’s happening in that model, even if they don’t know [SQL](https://mode.com/sql-tutorial/). That clarity is worth the long file name. It’s important to note that we’ve dropped the double underscores at this layer. In moving towards business-conformed concepts, we no longer need to separate a system and an entity and simply reference the unified entity if possible. In cases where you need intermediate models to operate at the source system level (e.g. `int_shopify__orders_summed`, `int_core__orders_summed` which you would later union), you’d preserve the double underscores. Some people like to separate the entity and verbs with double underscores as well. That’s a matter of preference, but in our experience, there is often an intrinsic connection between entities and verbs in this layer that make that difficult to maintain. + - `✅ int_[entity]s_[verb]s.sql` - the variety of transformations that can happen inside of the intermediate layer makes it harder to dictate strictly how to name them. The best guiding principle is to think about _verbs_ (e.g. `pivoted`, `aggregated_to_user`, `joined`, `fanned_out_by_quantity`, `funnel_created`, etc.) in the intermediate layer. In our example project, we use an intermediate model to pivot payments out to the order grain, so we name our model `int_payments_pivoted_to_orders`. It’s easy for anybody to quickly understand what’s happening in that model, even if they don’t know [SQL](https://mode.com/sql-tutorial/). That clarity is worth the long file name. It’s important to note that we’ve dropped the double underscores at this layer. In moving towards business-conformed concepts, we no longer need to separate a system and an entity and simply reference the unified entity if possible. In cases where you need intermediate models to operate at the source system level (e.g. `int_shopify__orders_summed`, `int_core__orders_summed` which you would later union), you’d preserve the double underscores. Some people like to separate the entity and verbs with double underscores as well. That’s a matter of preference, but in our experience, there is often an intrinsic connection between entities and verbs in this layer that make that difficult to maintain. :::tip Don’t over-optimize too early! -The example project is very simple for illustrative purposes. This level of division in our post-staging layers is probably unnecessary when dealing with these few models. Remember, our goal is a *single* *source of truth.* We don’t want finance and marketing operating on separate `orders` models, we want to use our dbt project as a means to bring those definitions together! As such, don’t split and optimize too early. If you have less than 10 marts models and aren’t having problems developing and using them, feel free to forego subdirectories completely (except in the staging layer, where you should always implement them as you add new source systems to your project) until the project has grown to really need them. Using dbt is always about bringing simplicity to complexity. +The example project is very simple for illustrative purposes. This level of division in our post-staging layers is probably unnecessary when dealing with these few models. Remember, our goal is a _single_ _source of truth._ We don’t want finance and marketing operating on separate `orders` models, we want to use our dbt project as a means to bring those definitions together! As such, don’t split and optimize too early. If you have less than 10 marts models and aren’t having problems developing and using them, feel free to forego subdirectories completely (except in the staging layer, where you should always implement them as you add new source systems to your project) until the project has grown to really need them. Using dbt is always about bringing simplicity to complexity. ::: ### Intermediate: Models @@ -36,27 +36,27 @@ Below is the lone intermediate model from our small example project. This repres -- int_payments_pivoted_to_orders.sql {%- set payment_methods = ['bank_transfer','credit_card','coupon','gift_card'] -%} - -with + +with payments as ( select * from {{ ref('stg_stripe__payments') }} ), - + pivot_and_aggregate_payments_to_order_grain as ( - + select - order_id, + order_id, {% for payment_method in payment_methods -%} - + sum( case when payment_method = '{{ payment_method }}' and - status = 'success' - then amount - else 0 + status = 'success' + then amount + else 0 end ) as {{ payment_method }}_amount, @@ -68,7 +68,7 @@ pivot_and_aggregate_payments_to_order_grain as ( group by 1 ) - + select * from pivot_and_aggregate_payments_to_order_grain ``` @@ -77,15 +77,15 @@ select * from pivot_and_aggregate_payments_to_order_grain - ✅ **Materialized as views in a custom schema with special permissions.** A more robust option is to materialize your intermediate models as views in a specific [custom schema](/docs/build/custom-schemas), outside of your main production schema. This gives you added insight into development and easier troubleshooting as the number and complexity of your models grows, while remaining easy to implement and taking up negligible space. :::tip Keep your warehouse tidy! -There are three interfaces to the organizational knowledge graph we’re encoding into dbt: the DAG, the files and folder structure of our codebase, and the output into the warehouse. As such, it’s really important that we consider that output intentionally! Think of the schemas, tables, and views we’re creating in the warehouse as *part of the UX,* in addition to the dashboards, ML, apps, and other use cases you may be targeting for the data. Ensuring that our output is named and grouped well, and that models not intended for broad use are either not materialized or built into special areas with specific permissions is crucial to achieving this. +There are three interfaces to the organizational knowledge graph we’re encoding into dbt: the DAG, the files and folder structure of our codebase, and the output into the warehouse. As such, it’s really important that we consider that output intentionally! Think of the schemas, tables, and views we’re creating in the warehouse as _part of the UX,_ in addition to the dashboards, ML, apps, and other use cases you may be targeting for the data. Ensuring that our output is named and grouped well, and that models not intended for broad use are either not materialized or built into special areas with specific permissions is crucial to achieving this. ::: - Intermediate models’ purposes, as these serve to break up complexity from our marts models, can take as many forms as [data transformation](https://www.getdbt.com/analytics-engineering/transformation/) might require. Some of the most common use cases of intermediate models include: - + - ✅ **Structural simplification.** Bringing together a reasonable number (typically 4 to 6) of entities or concepts (staging models, or perhaps other intermediate models) that will be joined with another similarly purposed intermediate model to generate a mart — rather than have 10 joins in our mart, we can join two intermediate models that each house a piece of the complexity, giving us increased readability, flexibility, testing surface area, and insight into our components. - ✅ **Re-graining.** Intermediate models are often used to fan out or collapse models to the right composite grain — if we’re building a mart for `order_items` that requires us to fan out our `orders` based on the `quantity` column, creating a new single row for each item, this would be ideal to do in a specific intermediate model to maintain clarity in our mart and more easily view that our grain is correct before we mix it with other components. - ✅ **Isolating complex operations.** It’s helpful to move any particularly complex or difficult to understand pieces of logic into their own intermediate models. This not only makes them easier to refine and troubleshoot, but simplifies later models that can reference this concept in a more clearly readable way. For example, in the `quantity` fan out example above, we benefit by isolating this complex piece of logic so we can quickly debug and thoroughly test that transformation, and downstream models can reference `order_items` in a way that’s intuitively easy to grasp. :::tip Narrow the DAG, widen the tables. -Until we get to the marts layer and start building our various outputs, we ideally want our DAG to look like an arrowhead pointed right. As we move from source-conformed to business-conformed, we’re also moving from numerous, narrow, isolated concepts to fewer, wider, joined concepts. We’re bringing our components together into wider, richer concepts, and that creates this shape in our DAG. This way when we get to the marts layer we have a robust set of components that can quickly and easily be put into any configuration to answer a variety of questions and serve specific needs. One rule of thumb to ensure you’re following this pattern on an individual model level is allowing multiple *inputs* to a model, but **not** multiple *outputs*. Several arrows going *into* our post-staging models is great and expected, several arrows coming *out* is a red flag. There are absolutely situations where you need to break this rule, but it’s something to be aware of, careful about, and avoid when possible. +Until we get to the marts layer and start building our various outputs, we ideally want our DAG to look like an arrowhead pointed right. As we move from source-conformed to business-conformed, we’re also moving from numerous, narrow, isolated concepts to fewer, wider, joined concepts. We’re bringing our components together into wider, richer concepts, and that creates this shape in our DAG. This way when we get to the marts layer we have a robust set of components that can quickly and easily be put into any configuration to answer a variety of questions and serve specific needs. One rule of thumb to ensure you’re following this pattern on an individual model level is allowing multiple _inputs_ to a model, but **not** multiple _outputs_. Several arrows going _into_ our post-staging models is great and expected, several arrows coming _out_ is a red flag. There are absolutely situations where you need to break this rule, but it’s something to be aware of, careful about, and avoid when possible. ::: diff --git a/website/docs/guides/best-practices/how-we-structure/4-marts.md b/website/docs/guides/best-practices/how-we-structure/4-marts.md index 0e22d036e58..e7a0d35c342 100644 --- a/website/docs/guides/best-practices/how-we-structure/4-marts.md +++ b/website/docs/guides/best-practices/how-we-structure/4-marts.md @@ -3,13 +3,17 @@ title: "Marts: Business-defined entities" id: "4-marts" --- -This is the layer where everything comes together and we start to arrange all of our atoms (staging models) and molecules (intermediate models) into full-fledged cells that have identity and purpose. We sometimes like to call this the *entity* *layer* or *concept layer*, to emphasize that all our marts are meant to represent a specific entity or concept at its unique grain. For instance, an order, a customer, a territory, a click event, a payment — each of these would be represented with a distinct mart, and each row would represent a discrete instance of these concepts. Unlike in a traditional Kimball star schema though, in modern data warehousing — where storage is cheap and compute is expensive — we’ll happily borrow and add any and all data from other concepts that are relevant to answering questions about the mart’s core entity. Building the same data in multiple places, as we do with `orders` in our `customers` mart example below, is more efficient in this paradigm than repeatedly rejoining these concepts (this is a basic definition of denormalization in this context). Let’s take a look at how we approach this first layer intended expressly for exposure to end users. +:::info +Our guidance here diverges if you use the dbt Semantic Layer. In a project without the Semantic Layer we recommend you denormalize heavily, per the best practices below. On the other hand, if you're using the Semantic Layer, we want to stay as normalized as possible to allow MetricFlow the most flexibility. Guidance for marts in a Semantic Layer context is on the next page. +::: + +This is the layer where everything comes together and we start to arrange all of our atoms (staging models) and molecules (intermediate models) into full-fledged cells that have identity and purpose. We sometimes like to call this the _entity_ _layer_ or _concept layer_, to emphasize that all our marts are meant to represent a specific entity or concept at its unique grain. For instance, an order, a customer, a territory, a click event, a payment — each of these would be represented with a distinct mart, and each row would represent a discrete instance of these concepts. Unlike in a traditional Kimball star schema though, in modern data warehousing — where storage is cheap and compute is expensive — we’ll happily borrow and add any and all data from other concepts that are relevant to answering questions about the mart’s core entity. Building the same data in multiple places, as we do with `orders` in our `customers` mart example below, is more efficient in this paradigm than repeatedly rejoining these concepts (this is a basic definition of denormalization in this context). Let’s take a look at how we approach this first layer intended expressly for exposure to end users. ### Marts: Files and folders The last layer of our core transformations is below, providing models for both `finance` and `marketing` departments. -```markdown +```shell models/marts ├── finance │ ├── _finance__models.yml @@ -24,7 +28,7 @@ models/marts ✅ **Name by entity.** Use plain English to name the file based on the concept that forms the grain of the mart `customers`, `orders`. Note that for pure marts, there should not be a time dimension (`orders_per_day`) here, that is typically best captured via metrics. -❌ **Build the same concept differently for different teams.** `finance_orders` and `marketing_orders` is typically considered an anti-pattern. There are, as always, exceptions — a common pattern we see is that, finance may have specific needs, for example reporting revenue to the government in a way that diverges from how the company as a whole measures revenue day-to-day. Just make sure that these are clearly designed and understandable as *separate* concepts, not departmental views on the same concept: `tax_revenue` and `revenue` not `finance_revenue` and `marketing_revenue`. +❌ **Build the same concept differently for different teams.** `finance_orders` and `marketing_orders` is typically considered an anti-pattern. There are, as always, exceptions — a common pattern we see is that, finance may have specific needs, for example reporting revenue to the government in a way that diverges from how the company as a whole measures revenue day-to-day. Just make sure that these are clearly designed and understandable as _separate_ concepts, not departmental views on the same concept: `tax_revenue` and `revenue` not `finance_revenue` and `marketing_revenue`. ### Marts: Models @@ -33,7 +37,7 @@ Finally we’ll take a look at the best practices for models within the marts di ```sql -- orders.sql -with +with orders as ( @@ -68,7 +72,7 @@ select * from orders_and_payments_joined ```sql -- customers.sql -with +with customers as ( @@ -117,21 +121,15 @@ customers_and_customer_orders_joined as ( select * from customers_and_customer_orders_joined ``` -- ✅ **Materialized as tables or incremental models.** Once we reach the marts layer, it’s time to start building not just our logic into the warehouse, but the data itself. This gives end users much faster performance for these later models that are actually designed for their use, and saves us costs recomputing these entire chains of models every time somebody refreshes a dashboard or runs a regression in python. A good general rule of thumb regarding materialization is to always start with a view (as it takes up essentially no storage and always gives you up-to-date results), once that view takes too long to practically *query*, build it into a table, and finally once that table takes too long to *build* and is slowing down your runs, [configure it as an incremental model](https://docs.getdbt.com/docs/build/incremental-models/). As always, start simple and only add complexity as necessary. The models with the most data and compute-intensive transformations should absolutely take advantage of dbt’s excellent incremental materialization options, but rushing to make all your marts models incremental by default will introduce superfluous difficulty. We recommend reading this [classic post from Tristan on the limits of incremental modeling](https://discourse.getdbt.com/t/on-the-limits-of-incrementality/303). +- ✅ **Materialized as tables or incremental models.** Once we reach the marts layer, it’s time to start building not just our logic into the warehouse, but the data itself. This gives end users much faster performance for these later models that are actually designed for their use, and saves us costs recomputing these entire chains of models every time somebody refreshes a dashboard or runs a regression in python. A good general rule of thumb regarding materialization is to always start with a view (as it takes up essentially no storage and always gives you up-to-date results), once that view takes too long to practically _query_, build it into a table, and finally once that table takes too long to _build_ and is slowing down your runs, [configure it as an incremental model](https://docs.getdbt.com/docs/build/incremental-models/). As always, start simple and only add complexity as necessary. The models with the most data and compute-intensive transformations should absolutely take advantage of dbt’s excellent incremental materialization options, but rushing to make all your marts models incremental by default will introduce superfluous difficulty. We recommend reading this [classic post from Tristan on the limits of incremental modeling](https://discourse.getdbt.com/t/on-the-limits-of-incrementality/303). - ✅ **Wide and denormalized.** Unlike old school warehousing, in the modern data stack storage is cheap and it’s compute that is expensive and must be prioritized as such, packing these into very wide denormalized concepts that can provide everything somebody needs about a concept as a goal. - ❌ **Too many joins in one mart.** One good rule of thumb when building dbt transformations is to avoid bringing together too many concepts in a single mart. What constitutes ‘too many’ can vary. If you need to bring 8 staging models together with nothing but simple joins, that might be fine. Conversely, if you have 4 concepts you’re weaving together with some complex and computationally heavy window functions, that could be too much. You need to weigh the number of models you’re joining against the complexity of the logic within the mart, and if it’s too much to read through and build a clear mental model of then look to modularize. While this isn’t a hard rule, if you’re bringing together more than 4 or 5 concepts to create your mart, you may benefit from adding some intermediate models for added clarity. Two intermediate models that bring together three concepts each, and a mart that brings together those two intermediate models, will typically result in a much more readable chain of logic than a single mart with six joins. - ✅ **Build on separate marts thoughtfully.** While we strive to preserve a narrowing DAG up to the marts layer, once here things may start to get a little less strict. A common example is passing information between marts at different grains, as we saw above, where we bring our `orders` mart into our `customers` marts to aggregate critical order data into a `customer` grain. Now that we’re really ‘spending’ compute and storage by actually building the data in our outputs, it’s sensible to leverage previously built resources to speed up and save costs on outputs that require similar data, versus recomputing the same views and CTEs from scratch. The right approach here is heavily dependent on your unique DAG, models, and goals — it’s just important to note that using a mart in building another, later mart is okay, but requires careful consideration to avoid wasted resources or circular dependencies. :::tip Marts are entity-grained. -The most important aspect of marts is that they contain all of the useful data about a *particular entity* at a granular level. That doesn’t mean we don’t bring in lots of other entities and concepts, like tons of `user` data into our `orders` mart, we do! It just means that individual `orders` remain the core grain of our table. If we start grouping `users` and `orders` along a [date spine](https://github.com/dbt-labs/dbt-utils#date_spine-source), into something like `user_orders_per_day`, we’re moving past marts into *metrics*. +The most important aspect of marts is that they contain all of the useful data about a _particular entity_ at a granular level. That doesn’t mean we don’t bring in lots of other entities and concepts, like tons of `user` data into our `orders` mart, we do! It just means that individual `orders` remain the core grain of our table. If we start grouping `users` and `orders` along a [date spine](https://github.com/dbt-labs/dbt-utils#date_spine-source), into something like `user_orders_per_day`, we’re moving past marts into _metrics_. ::: ### Marts: Other considerations - **Troubleshoot via tables.** While stacking views and ephemeral models up until our marts — only building data into the warehouse at the end of a chain when we have the models we really want end users to work with — is ideal in production, it can present some difficulties in development. Particularly, certain errors may seem to be surfacing in our later models that actually stem from much earlier dependencies in our model chain (ancestor models in our DAG that are built before the model throws the errors). If you’re having trouble pinning down where or what a database error is telling you, it can be helpful to temporarily build a specific chain of models as tables so that the warehouse will throw the error where it’s actually occurring. -- **After marts: the activation layer.** In the same way that our staging models are building blocks for our marts, that also offer us direct views into specific source data, our marts are building blocks for our final outputs that also offer direct views into specific ideas. You can use marts directly, but they are equally important as components for building models in the *activation layer* after marts. This is a deep and fast-evolving topic, so we’ll cover this in a separate forthcoming guide that dives into: - - Metrics - - Reverse ETL - - Reporting and dashboards - - Data science and ML - - [Exposures](https://docs.getdbt.com/docs/build/exposures) (how we tie our dbt DAG into all of the above) diff --git a/website/docs/guides/best-practices/how-we-structure/5-semantic-layer-marts.md b/website/docs/guides/best-practices/how-we-structure/5-semantic-layer-marts.md new file mode 100644 index 00000000000..adebc4a63c7 --- /dev/null +++ b/website/docs/guides/best-practices/how-we-structure/5-semantic-layer-marts.md @@ -0,0 +1,48 @@ +--- +title: "Marts for the Semantic Layer" +id: "5-semantic-layer-marts" +--- + +The Semantic Layer alters some fundamental principles of how you organize your project. Using dbt without the Semantic Layer necessitates creating the most useful combinations of your building block components into wide, denormalized marts. On the other hand, the Semantic Layer leverages MetricFlow to denormalize every possible combination of components we've encoded dynamically. As such we're better served to bring more normalized models through from the logical layer into the Semantic Layer to maximize flexibility. This section will assume familiarity with the best practices laid out in the [How we build our metrics](https://docs.getdbt.com/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro) guide, so check that out first for a more hands-on introduction to the Semantic Layer. + +## Semantic Layer: Files and folders + +- 2️⃣ There are two major factors that alter our recommendations for the Semantic Layer: + - 📝 There is **more YAML** in the form of **semantic models and metrics**. + - ⏫ We may **use a staging model directly** if it forms a complete normalized component, and it will not have a mart at all. +- 💪 This combination means models at **both the staging and marts layer** may participate in the Semantic Layer and use **more powerful, expansive YAML configuration**. +- 🔁 Given this, for projects using the Semantic Layer we recommend a **YAML-file-per-model approach**, as below. + +```shell +models +├── marts +│   ├── customers.sql +│   ├── customers.yml +│   ├── orders.sql +│   └── orders.yml +└── staging + ├── __sources.yml + ├── stg_customers.sql + ├── stg_customers.yml + ├── stg_locations.sql + ├── stg_locations.yml + ├── stg_order_items.sql + ├── stg_order_items.yml + ├── stg_orders.sql + ├── stg_orders.yml + ├── stg_products.sql + ├── stg_products.yml + ├── stg_supplies.sql + └── stg_supplies.yml +``` + +## When to make a mart + +- ❓ If we can go directly to staging models and it's better to serve normalized models to the Semantic Layer, then when, where, and why would we make a mart? + - 🕰️ We have models that have measures but no time dimension to aggregate against. The details of this are laid out in the [Semantic Layer guide](https://docs.getdbt.com/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro) but in short, we need a time dimension to aggregate against in MetricFlow. Dimensional tables that + - 🧱 We want to **materialize** our model in various ways. + - 👯 We want to **version** our model. + - 🛒 We have various related models that make more sense as **one wider component**. + - 1️⃣ We have similar models across multiple data sources that make more sense **unioned together**. + - ⌚ We have models in our project we **need to time to refactor** but want to serve up to the Semantic Layer quickly. +- 🌍 Any of the above and more are great reasons to build a mart. Analytics engineering is about **creativity and problem solving**, so these are not prescriptive rules, **there are many reasons to build marts** in any project. The most important takeaway is that you don't **_have to_** if you're using the Semantic Layer. diff --git a/website/docs/guides/best-practices/how-we-structure/5-the-rest-of-the-project.md b/website/docs/guides/best-practices/how-we-structure/6-the-rest-of-the-project.md similarity index 93% rename from website/docs/guides/best-practices/how-we-structure/5-the-rest-of-the-project.md rename to website/docs/guides/best-practices/how-we-structure/6-the-rest-of-the-project.md index 2a6c7399adb..4082f92b932 100644 --- a/website/docs/guides/best-practices/how-we-structure/5-the-rest-of-the-project.md +++ b/website/docs/guides/best-practices/how-we-structure/6-the-rest-of-the-project.md @@ -1,6 +1,6 @@ --- title: "The rest of the project" -id: "5-the-rest-of-the-project" +id: "6-the-rest-of-the-project" description: The rest of the project. displayText: The rest of the project. hoverSnippet: The rest of the project. @@ -10,7 +10,7 @@ hoverSnippet: The rest of the project. So far we’ve focused on the `models` folder, the primary directory of our dbt project. Next, we’ll zoom out and look at how the rest of our project files and folders fit in with this structure, starting with how we approach YAML configuration files. -```markdown +```shell models ├── intermediate │ └── finance @@ -51,7 +51,7 @@ When structuring your YAML configuration files in a dbt project, you want to bal - YAML files don’t need unique names in the way that SQL model files do, but including the directory (instead of simply `_sources.yml` in each folder), means you can fuzzy find the right file more quickly. - We’ve recommended several different naming conventions over the years, most recently calling these `schema.yml` files. We’ve simplified to recommend that these simply be labelled based on the YAML dictionary that they contain. - If you utilize [doc blocks](https://docs.getdbt.com/docs/collaborate/documentation#using-docs-blocks) in your project, we recommend following the same pattern, and creating a `_[directory]__docs.md` markdown file per directory containing all your doc blocks for that folder of models. -- ❌ **Config per project.** Some people put *all* of their source and model YAML into one file. While you can technically do this, and while it certainly simplifies knowing what file the config you’re looking for will be in (as there is only one file), it makes it much harder to find specific configurations within that file. We recommend balancing those two concerns. +- ❌ **Config per project.** Some people put _all_ of their source and model YAML into one file. While you can technically do this, and while it certainly simplifies knowing what file the config you’re looking for will be in (as there is only one file), it makes it much harder to find specific configurations within that file. We recommend balancing those two concerns. - ⚠️ **Config per model.** On the other end of the spectrum, some people prefer to create one YAML file per model. This presents less of an issue than a single monolith file, as you can quickly search for files, know exactly where specific configurations exist, spot models without configs (and thus without tests) by looking at the file tree, and various other advantages. In our opinion, the extra files, tabs, and windows this requires creating, copying from, pasting to, closing, opening, and managing creates a somewhat slower development experience that outweighs the benefits. Defining config per directory is the most balanced approach for most projects, but if you have compelling reasons to use config per model, there are definitely some great projects that follow this paradigm. - ✅ **Cascade configs.** Leverage your `dbt_project.yml` to set default configurations at the directory level. Use the well-organized folder structure we’ve created thus far to define the baseline schemas and materializations, and use dbt’s cascading scope priority to define variations to this. For example, as below, define your marts to be materialized as tables by default, define separate schemas for our separate subfolders, and any models that need to use incremental materialization can be defined at the model level. @@ -73,12 +73,12 @@ models: ``` :::tip Define your defaults. -One of the many benefits this consistent approach to project structure confers to us is this ability to cascade default behavior. Carefully organizing our folders and defining configuration at that level whenever possible frees us from configuring things like schema and materialization in every single model (not very DRY!) — we only need to configure exceptions to our general rules. Tagging is another area this principle comes into play. Many people new to dbt will rely on tags rather than a rigorous folder structure, and quickly find themselves in a place where every model *requires* a tag. This creates unnecessary complexity. We want to lean on our folders as our primary selectors and grouping mechanism, and use tags to define groups that are *exceptions.* A folder-based selection like **`dbt build --select marts.marketing` is much simpler than trying to tag every marketing-related model, hoping all developers remember to add that tag for new models, and using `dbt build --select tag:marketing`. +One of the many benefits this consistent approach to project structure confers to us is this ability to cascade default behavior. Carefully organizing our folders and defining configuration at that level whenever possible frees us from configuring things like schema and materialization in every single model (not very DRY!) — we only need to configure exceptions to our general rules. Tagging is another area this principle comes into play. Many people new to dbt will rely on tags rather than a rigorous folder structure, and quickly find themselves in a place where every model _requires_ a tag. This creates unnecessary complexity. We want to lean on our folders as our primary selectors and grouping mechanism, and use tags to define groups that are _exceptions._ A folder-based selection like \*\*`dbt build --select marts.marketing` is much simpler than trying to tag every marketing-related model, hoping all developers remember to add that tag for new models, and using `dbt build --select tag:marketing`. ::: ### How we use the other folders -```yaml +```shell jaffle_shop ├── analyses ├── seeds @@ -88,7 +88,7 @@ jaffle_shop │ └── cents_to_dollars.sql ├── snapshots └── tests - └── assert_positive_value_for_total_amount.sql +└── assert_positive_value_for_total_amount.sql ``` We’ve focused heavily thus far on the primary area of action in our dbt project, the `models` folder. As you’ve probably observed though, there are several other folders in our project. While these are, by design, very flexible to your needs, we’ll discuss the most common use cases for these other folders to help get you started. @@ -111,6 +111,6 @@ One important, growing consideration in the analytics engineering ecosystem is h ## Final considerations -Overall, consistency is more important than any of these specific conventions. As your project grows and your experience with dbt deepens, you will undoubtedly find aspects of the above structure you want to change. While we recommend this approach for the majority of projects, every organization is unique! The only dogmatic advice we’ll put forward here is that when you find aspects of the above structure you wish to change, think intently about your reasoning and document for your team *how* and *why* you are deviating from these conventions. To that end, we highly encourage you to fork this guide and add it to your project’s README, wiki, or docs so you can quickly create and customize those artifacts. +Overall, consistency is more important than any of these specific conventions. As your project grows and your experience with dbt deepens, you will undoubtedly find aspects of the above structure you want to change. While we recommend this approach for the majority of projects, every organization is unique! The only dogmatic advice we’ll put forward here is that when you find aspects of the above structure you wish to change, think intently about your reasoning and document for your team _how_ and _why_ you are deviating from these conventions. To that end, we highly encourage you to fork this guide and add it to your project’s README, wiki, or docs so you can quickly create and customize those artifacts. Finally, we emphasize that this guide is a living document! It will certainly change and grow as dbt and dbt Labs evolve. We invite you to join in — discuss, comment, and contribute regarding suggested changes or new elements to cover. diff --git a/website/sidebars.js b/website/sidebars.js index 0faa37afff0..62262703055 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -859,7 +859,8 @@ const sidebarSettings = { "guides/best-practices/how-we-structure/2-staging", "guides/best-practices/how-we-structure/3-intermediate", "guides/best-practices/how-we-structure/4-marts", - "guides/best-practices/how-we-structure/5-the-rest-of-the-project", + "guides/best-practices/how-we-structure/5-semantic-layer-marts", + "guides/best-practices/how-we-structure/6-the-rest-of-the-project", ], }, { From 3851bd7b703c65131cdf713514e9cd863d50d67c Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Mon, 7 Aug 2023 20:06:42 -0400 Subject: [PATCH 580/703] Update website/docs/docs/cloud/cloud-cli-installation.md --- website/docs/docs/cloud/cloud-cli-installation.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/cloud-cli-installation.md b/website/docs/docs/cloud/cloud-cli-installation.md index f6f8fa78d38..c300f6478a1 100644 --- a/website/docs/docs/cloud/cloud-cli-installation.md +++ b/website/docs/docs/cloud/cloud-cli-installation.md @@ -102,7 +102,7 @@ project-id: '123456' ## Using dbt Cloud CLI -**More informaiton coming soon** +**Coming soon** ### Glossary From 4d2cb3711ebed6d2d3d25df8e5374581dfba6b1b Mon Sep 17 00:00:00 2001 From: Tania <92768464+Tonayya@users.noreply.github.com> Date: Tue, 8 Aug 2023 13:39:22 +1000 Subject: [PATCH 581/703] Update database.md cross-database referencing is now available with Redshift since the introduction of setting `ra3_node` to true as default which supports this functionality. GH issue [here](https://github.com/dbt-labs/dbt-redshift/issues/94). --- website/docs/reference/resource-configs/database.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/resource-configs/database.md b/website/docs/reference/resource-configs/database.md index 9b7cd1b39d3..118c72b38e9 100644 --- a/website/docs/reference/resource-configs/database.md +++ b/website/docs/reference/resource-configs/database.md @@ -43,4 +43,4 @@ seeds: ## Warehouse specific information * BigQuery: `project` and `database` are interchangeable -* Redshift: Cross-database queries are not possible in Redshift. As such, dbt will return a Database Error if you use 'Database A' for a seed file and try to `{{ ref() }}` that seed file (or its database object) in a model using 'Database B'. This error would only be found at runtime. + From 24f1a07bba746e86dea3fef2f5b8b0861ebf5223 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 7 Aug 2023 21:37:46 -0700 Subject: [PATCH 582/703] Update sl-jdbc.md I realized the examples in the jdbc api query table are missing single quotes! I added them --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 21b5f4f921a..ef10cf7b973 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -135,8 +135,8 @@ To query metric values, here are the following parameters that are available: | Parameter | Description | Example | Type | | --------- | -----------| ------------ | -------------------- | -| `metrics` | The metric name as defined in your dbt metric configuration | `metrics=[revenue]` | Required | -| `group_by` | Dimension names or entities to group by. We require a reference to the entity of the dimension (other than for the primary time dimension), which is pre-appended to the front of the dimension name with a double underscore. | `group_by=[user__country, metric_time]` | Optional | +| `metrics` | The metric name as defined in your dbt metric configuration | `metrics=['revenue']` | Required | +| `group_by` | Dimension names or entities to group by. We require a reference to the entity of the dimension (other than for the primary time dimension), which is pre-appended to the front of the dimension name with a double underscore. | `group_by=['user__country', 'metric_time']` | Optional | | `grain` | A parameter specific to any time dimension and changes the grain of the data from the default for the metric. | ```group_by=[`Dimension('metric_time').```
        ```grain('week\|day\|month\|quarter\|year')]``` | Optional | | `where` | A where clause that allows you to filter on dimensions and entities using parameters - comes with `TimeDimension`, `Dimension`, and `Entity` objects. Granularity is required with `TimeDimension` | `"{{ where="Dimension('customer__country') = 'US')"` | Optional | | `limit` | Limit the data returned | `limit=10` | Optional | From 03f08b2b7c3e5f4e74441abe4e0e5fcff8378e99 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 8 Aug 2023 10:04:16 +0100 Subject: [PATCH 583/703] Update sl-jdbc.md remove excess apostrophe --- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index ef10cf7b973..5606efa744b 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -146,7 +146,7 @@ To query metric values, here are the following parameters that are available: ## Note on time dimensions and `metric_time` -You will notice that in the list of dimensions for all metrics, there is a dimension called `metric_time`'. `Metric_time` is a reserved keyword for the measure-specific aggregation time dimensions. For any time-series metric, the `metric_time` keyword should always be available for use in queries. This is a common dimension across *all* metrics in a semantic graph. +You will notice that in the list of dimensions for all metrics, there is a dimension called `metric_time`. `Metric_time` is a reserved keyword for the measure-specific aggregation time dimensions. For any time-series metric, the `metric_time` keyword should always be available for use in queries. This is a common dimension across *all* metrics in a semantic graph. You can look at a single metric or hundreds of metrics, and if you group by `metric_time`, it will always give you the correct time series. @@ -157,7 +157,7 @@ Note that `metric_time` should be available in addition to any other time dimens ## Examples -Use the following examples to help you get started with the JDBC API +Refer to the following examples to help you get started with the JDBC API. ### Fetch metadata for metrics From bc956c47dee225580c8f3d564747976ca34e4e4d Mon Sep 17 00:00:00 2001 From: Winslow Powers <91896902+wpowers-dbt@users.noreply.github.com> Date: Tue, 8 Aug 2023 05:12:00 -0400 Subject: [PATCH 584/703] add additional webhooks timeout info (#3836) ## What are you changing in this pull request and why? Add some more info to clarify how a webhooks time out is handled by the webhooks dispatcher. ## Checklist - [ ] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [ ] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Adding new pages (delete if not applicable): - [ ] Add page to `website/sidebars.js` - [ ] Provide a unique filename for the new page Removing or renaming existing pages (delete if not applicable): - [ ] Remove page from `website/sidebars.js` - [ ] Add an entry `website/static/_redirects` - [ ] [Ran link testing](https://github.com/dbt-labs/docs.getdbt.com#running-the-cypress-tests-locally) to update the links that point to the deleted page Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/deploy/webhooks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/webhooks.md b/website/docs/docs/deploy/webhooks.md index 4ce089daa89..b4ce7195363 100644 --- a/website/docs/docs/deploy/webhooks.md +++ b/website/docs/docs/deploy/webhooks.md @@ -18,7 +18,7 @@ You can create webhooks for these events from the [dbt Cloud web-based UI](#crea dbt Cloud retries sending each event five times. dbt Cloud keeps a log of each webhook delivery for 30 days. Every webhook has its own **Recent Deliveries** section, which lists whether a delivery was successful or failed at a glance. -A webhook in dbt Cloud has a timeout of 10 seconds. This means that if the endpoint doesn't respond within 10 seconds, the webhook processor will time out. +A webhook in dbt Cloud has a timeout of 10 seconds. This means that if the endpoint doesn't respond within 10 seconds, the webhook processor will time out. This can result in a situation where the client responds successfully after the 10 second timeout and records a success status while the dbt cloud webhooks system will interpret this as a failure. :::tip Videos If you're interested in course learning with videos, check out the [Webhooks on-demand course](https://courses.getdbt.com/courses/webhooks) from dbt Labs. From ca2cb7fe99d0fc7ef076b3a6f71a9b1cac108859 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 8 Aug 2023 11:33:23 +0100 Subject: [PATCH 585/703] fix typos, yaml indention, and removed is_primary --- website/docs/docs/build/cumulative-metrics.md | 58 ++++++++-------- website/docs/docs/build/dimensions.md | 67 ++++--------------- website/docs/docs/build/join-logic.md | 1 - website/docs/docs/build/measures.md | 1 - website/docs/docs/build/semantic-models.md | 30 ++++----- website/docs/docs/build/validation.md | 2 +- website/snippets/_sl-partner-links.md | 19 +++--- 7 files changed, 66 insertions(+), 112 deletions(-) diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index 9b1434f7f52..08e2c6f0adf 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -23,7 +23,6 @@ metrics: grain_to_date: sets the accumulation grain, such as month will accumulate data for one month, then restart at the beginning of the next. # Optional. Can not be used with window. - ``` :::info MetricFlow time spine required @@ -75,9 +74,10 @@ Suppose the underlying measure `customers` which is configured to count the uniq ```yaml measures: - - name: customers - expr: customer_id - agg: count_distinct + - name: customers + expr: customer_id + agg: count_distinct + ``` We can write a cumulative metric `weekly_customers` as such: @@ -118,31 +118,29 @@ Suppose you (a subscription-based company for the sake of this example) have an Using cumulative metrics without specifying a window, you can calculate running totals for metrics like the count of active subscriptions and revenue at any point in time. The following configuration YAML displays creating such cumulative metrics to obtain current revenue or total number of active subscriptions as a cumulative sum: ```yaml -measures: - - name: revenue - description: Total revenue - agg: sum - expr: revenue - - name: subscription_count - description: Count of active subscriptions - agg: sum +measures: + - name: revenue + description: Total revenue + agg: sum + expr: revenue + - name: subscription_count + description: Count of active subscriptions + agg: sum expr: event_type +metrics: + - name: current_revenue + description: Current revenue + label: Current Revenue + type: cumulative + type_params: + measure: revenue + - name: active_subscriptions + description: Count of active subscriptions + label: Active Subscriptions + type: cumulative + type_params: + measure: subscription_count -metrics: -- name: current_revenue - description: Current revenue - label: Current Revenue - type: cumulative - type_params: - measures: - - revenue -- name: active_subscriptions - description: Count of active subscriptions - label: Active Subscriptions - type: cumulative - type_params: - measures: - - subscription_count ``` @@ -165,14 +163,14 @@ We can compare the difference between a 1-month window and a monthly grain to da ```yaml metrics: - - name: cumulative_order_total_l1m #For this metric, we use a window of 1 month - label: Cumulative Order total (L1M) + - name: cumulative_order_total_l1m #For this metric, we use a window of 1 month + label: Cumulative Order total (L1M) description: Trailing 1 month cumulative order amount type: cumulative type_params: measure: order_total window: 1 month - - name: cumulative_order_total_mtd #For this metric, we use a monthly grain to date + - name: cumulative_order_total_mtd #For this metric, we use a monthly grain to date label: Cumulative Order total (MTD) description: The month to date value of all orders type: cumulative diff --git a/website/docs/docs/build/dimensions.md b/website/docs/docs/build/dimensions.md index fe2fa802e17..5b974c908c9 100644 --- a/website/docs/docs/build/dimensions.md +++ b/website/docs/docs/build/dimensions.md @@ -61,7 +61,7 @@ semantic_models: expr: case when quantity > 10 then true else false end ``` -Metricflow requires that all dimensions have a primary entity. If your data source does not have a primary entity, you will need to specfy one. +MetricFlow requires that all dimensions have a primary entity. If your data source does not have a primary entity, you will need to specify one. ```yaml: semantic_model: @@ -76,7 +76,6 @@ semantic_model: create_metric: true primary_entity: booking_id ``` - ## Dimensions types Dimensions have 2 types. This section further explains the definitions and provides examples. @@ -97,54 +96,20 @@ dimensions: ### Time -Time has additional parameters specified under the `type_params` section. - -:::tip use datetime data type if using BigQuery -To use BigQuery as your data platform, time dimensions columns need to be in the datetime data type. If they are stored in another type, you can cast them to datetime using the `expr` property. Time dimensions are used to group metrics by different levels of time, such as day, week, month, quarter, and year. MetricFlow supports these granularities, which can be specified using the `time_granularity` parameter. -::: +Time has additional parameters specified under the `type_params` section. When you query one or more metrics in MetricFlow using the CLI, the default time dimension for a single metric is the primary time dimension, which you can refer to as `metric_time` or use the dimensions' name. - +You can use multiple time groups in separate metrics. For example, the `users_created` metric uses `created_at`, and the `users_deleted` metric uses `deleted_at`: - -To specify the default time dimensions for a measure or metric in MetricFlow, set the `agg_time_dimension` in the `defaults` section. To override the default and aggregation on diffrent time dimension, set the `agg_time_dimension` parameter on a measure. - -In the provided example, the semantic model has two-time groups, `created_at` and `deleted_at`, with `created_at` being the default time dimension. The `users_deleted` measure overrides the default and uses `deleted_at` as its time group. - -```yaml -dimensions: - - name: created_at - type: time - expr: date_trunc('day', ts_created) #ts_created is the underlying column name from the table - is_partition: True - type_params: - is_primary: True - time_granularity: day - - name: deleted_at - type: time - expr: date_trunc('day', ts_deleted) #ts_deleted is the underlying column name from the table - is_partition: True - type_params: - is_primary: False - time_granularity: day - -measures: - - name: users_deleted - expr: 1 - agg: sum - agg_time_dimension: deleted_at - - name: users_created - expr: 1 - agg: sum +```bash +mf query --metrics users_created,users_deleted --dimensions metric_time --order metric_time ``` -When querying one or more metrics in MetricFlow using the CLI, the default time dimension for a single metric is the primary time dimension, which can be referred to as metric_time or the dimensions' name. Multiple time groups can be used in separate metrics, such as users_created which uses created_at, and users_deleted which uses deleted_at. - - ``` - mf query --metrics users_created,users_deleted --dimensions metric_time --order metric_time - ``` +:::tip use datetime data type if using BigQuery +To use BigQuery as your data platform, time dimensions columns need to be in the datetime data type. If they are stored in another type, you can cast them to datetime using the `expr` property. Time dimensions are used to group metrics by different levels of time, such as day, week, month, quarter, and year. MetricFlow supports these granularities, which can be specified using the `time_granularity` parameter. +::: - + @@ -161,14 +126,12 @@ dimensions: expr: date_trunc('day', ts_created) #ts_created is the underlying column name from the table is_partition: True type_params: - is_primary: True time_granularity: day - name: deleted_at type: time expr: date_trunc('day', ts_deleted) #ts_deleted is the underlying column name from the table is_partition: True type_params: - is_primary: False time_granularity: day measures: @@ -185,15 +148,16 @@ measures: -Use `is_partition: True` to indicate that a dimension exists over a specific time window. For example, a date-partitioned dimensional table. When you query metrics from different tables, the Semantic Layer will use this parameter to ensure that the correct dimensional values are joined to measures. +Use `is_partition: True` to show that a dimension exists over a specific time window. For example, a date-partitioned dimensional table. When you query metrics from different tables, the dbt Semantic Layer uses this parameter to ensure that the correct dimensional values are joined to measures. -In addition, MetricFlow allows for easy aggregation of metrics at query time. For example, you can aggregate the `messages_per_month` measure, where the original `time_granularity` of the time dimensions `metrics_time`, at a yearly granularity by specifying it in the query in the CLI. +You can also use `is_partition` for `type: categorical` [categorical](#categorical) dimensions as well. -``` +MetricFlow enables metric aggregation during query time. For example, you can aggregate the `messages_per_month` measure. If you originally had a `time_granularity` for the time dimensions `metric_time`, you can specify a yearly granularity for aggregation in your CLI query: + +```bash mf query --metrics messages_per_month --dimensions metric_time --order metric_time --time-granularity year ``` - ```yaml dimensions: - name: created_at @@ -201,14 +165,12 @@ dimensions: expr: date_trunc('day', ts_created) #ts_created is the underlying column name from the table is_partition: True type_params: - is_primary: True time_granularity: day - name: deleted_at type: time expr: date_trunc('day', ts_deleted) #ts_deleted is the underlying column name from the table is_partition: True type_params: - is_primary: False time_granularity: day measures: @@ -225,7 +187,6 @@ measures: - ### SCD Type II :::caution diff --git a/website/docs/docs/build/join-logic.md b/website/docs/docs/build/join-logic.md index 96426424c87..9039822c9fd 100644 --- a/website/docs/docs/build/join-logic.md +++ b/website/docs/docs/build/join-logic.md @@ -114,7 +114,6 @@ semantic_models: - name: metric_time type: time type_params: - is_primary: true - name: user_signup entities: - name: user_id diff --git a/website/docs/docs/build/measures.md b/website/docs/docs/build/measures.md index a80ff9f5e3e..4ea96d891cc 100644 --- a/website/docs/docs/build/measures.md +++ b/website/docs/docs/build/measures.md @@ -198,7 +198,6 @@ semantic_models: type: time expr: date_transaction type_params: - is_primary: True time_granularity: day measures: diff --git a/website/docs/docs/build/semantic-models.md b/website/docs/docs/build/semantic-models.md index a5d7ef29f7e..bc188eed834 100644 --- a/website/docs/docs/build/semantic-models.md +++ b/website/docs/docs/build/semantic-models.md @@ -30,25 +30,26 @@ Semantic models have 6 components and this page explains the definitions with so ## Semantic models components The complete spec for semantic models is below: + ```yaml semantic_models: - - name: the_name_of_the_semantic_model ## Required - description: same as always ## Optional - model: ref('some_model') ## Required - defaults: ## Required - agg_time_dimension: dimension_name ## Required if the model contains dimensions - entities: ## Required - - see more information in entities - measures: ## Optional - - see more information in measures section - dimensions: ## Required - - see more information in dimensions section - primary_entity: if the semantic model has no primary entity, then this property is required. #Optional if a primary entity exists, otherwise Required + - name: the_name_of_the_semantic_model ## Required + description: same as always ## Optional + model: ref('some_model') ## Required + defaults: ## Required + agg_time_dimension: dimension_name ## Required if the model contains dimensions + entities: ## Required + - see more information in entities + measures: ## Optional + - see more information in measures section + dimensions: ## Required + - see more information in dimensions section + primary_entity: >- + if the semantic model has no primary entity, then this property is required. #Optional if a primary entity exists, otherwise Required ``` - The following example displays a complete configuration and detailed descriptions of each field: -```yml +```yaml semantic_models: - name: transaction # A semantic model with the name Transactions model: ref('fact_transactions') # References the dbt model named `fact_transactions` @@ -64,7 +65,6 @@ semantic_models: type: foreign expr: customer_id - dimensions: # dimensions are qualitative values such as names, dates, or geographical data. They provide context to metrics and allow "metric by group" data slicing. - name: transaction_date type: time diff --git a/website/docs/docs/build/validation.md b/website/docs/docs/build/validation.md index 808d054f021..ad485850d23 100644 --- a/website/docs/docs/build/validation.md +++ b/website/docs/docs/build/validation.md @@ -18,7 +18,7 @@ The code that handles validation [can be found here](https://github.com/dbt-labs ## Validations command -You can run validations from the CLI with the following commands: +You can run validations from the CLI with the following [MetricFlow commands](/docs/build/metricflow-cli): ```bash mf validate-configs diff --git a/website/snippets/_sl-partner-links.md b/website/snippets/_sl-partner-links.md index bd91f00ccd8..40456fcfc17 100644 --- a/website/snippets/_sl-partner-links.md +++ b/website/snippets/_sl-partner-links.md @@ -1,14 +1,11 @@ + The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. These are the following tools that integrate with the dbt Semantic Layer: -- **Hex** — Public docs are coming soon, however, you can refer to this [Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a) for more info on how to integrate with Hex. - -- **Mode** — To connect to Mode, refer to [Mode documentation](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer). - -- **Google Sheets** — Integration with Google Sheets coming soon - -- **Tools that allows you to write SQL** — They must meet one of the two criteria: - * Supports a generic JDBC driver option (such as DataGrip) or - * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. - -**Note**, before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only and Metadata Only service token. +1. **Hex** — Public docs are coming soon, refer to [this Loom video](https://www.loom.com/share/752e85aabfbf4fa585008a5598f3517a) for more info on how to integrate with Hex. +1. **Mode** — Refer to the [Mode docs](https://mode.com/help/articles/supported-databases/#dbt-semantic-layer) for info on how to integrate with Mode. +1. **Google Sheets** — Google Sheets integration coming soon. +1. **Tools that allows you to write SQL** — They must meet one of the two criteria: + * Supports a generic JDBC driver option (such as DataGrip) or + * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. +Before you connect to these tools, you'll need to first [set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) and [generate a service token](/docs/dbt-cloud-apis/service-tokens) to create a Semantic Layer Only and Metadata Only service token. From e3323fadc9106d80c8a06e56cd91b38a616ab1a1 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 8 Aug 2023 11:57:20 +0100 Subject: [PATCH 586/703] add intro do parameters --- website/docs/docs/build/dimensions.md | 35 +++++++++++++++------------ 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/website/docs/docs/build/dimensions.md b/website/docs/docs/build/dimensions.md index 5b974c908c9..a73515e30eb 100644 --- a/website/docs/docs/build/dimensions.md +++ b/website/docs/docs/build/dimensions.md @@ -96,6 +96,11 @@ dimensions: ### Time + +:::tip use datetime data type if using BigQuery +To use BigQuery as your data platform, time dimensions columns need to be in the datetime data type. If they are stored in another type, you can cast them to datetime using the `expr` property. Time dimensions are used to group metrics by different levels of time, such as day, week, month, quarter, and year. MetricFlow supports these granularities, which can be specified using the `time_granularity` parameter. +::: + Time has additional parameters specified under the `type_params` section. When you query one or more metrics in MetricFlow using the CLI, the default time dimension for a single metric is the primary time dimension, which you can refer to as `metric_time` or use the dimensions' name. You can use multiple time groups in separate metrics. For example, the `users_created` metric uses `created_at`, and the `users_deleted` metric uses `deleted_at`: @@ -105,19 +110,21 @@ You can use multiple time groups in separate metrics. For example, the `users_cr mf query --metrics users_created,users_deleted --dimensions metric_time --order metric_time ``` -:::tip use datetime data type if using BigQuery -To use BigQuery as your data platform, time dimensions columns need to be in the datetime data type. If they are stored in another type, you can cast them to datetime using the `expr` property. Time dimensions are used to group metrics by different levels of time, such as day, week, month, quarter, and year. MetricFlow supports these granularities, which can be specified using the `time_granularity` parameter. -::: +You can set `is_partition` for time or categorical dimensions to define specific time spans. Additionally, use the `type_params` section to set `time_granularity` to adjust aggregation detail (like daily, weekly, and so on): - + -`time_granularity` specifies the smallest level of detail that a measure or metric should be reported at, such as daily, weekly, monthly, quarterly, or yearly. Different granularity options are available, and each metric must have a specified granularity. For example, a metric that is specified with weekly granularity couldn't be aggregated to a daily grain. +Use `is_partition: True` to show that a dimension exists over a specific time window. For example, a date-partitioned dimensional table. When you query metrics from different tables, the dbt Semantic Layer uses this parameter to ensure that the correct dimensional values are joined to measures. -The current options for time granularity are day, week, month, quarter, and year. +You can also use `is_partition` for [categorical](#categorical) dimensions as well. -Aggregation between metrics with different granularities is possible, with the Semantic Layer returning results at the highest granularity by default. For example, when querying two metrics with daily and monthly granularity, the resulting aggregation will be at the monthly level. +MetricFlow enables metric aggregation during query time. For example, you can aggregate the `messages_per_month` measure. If you originally had a `time_granularity` for the time dimensions `metric_time`, you can specify a yearly granularity for aggregation in your CLI query: + +```bash +mf query --metrics messages_per_month --dimensions metric_time --order metric_time --time-granularity year +``` ```yaml dimensions: @@ -146,17 +153,13 @@ measures: - - -Use `is_partition: True` to show that a dimension exists over a specific time window. For example, a date-partitioned dimensional table. When you query metrics from different tables, the dbt Semantic Layer uses this parameter to ensure that the correct dimensional values are joined to measures. + -You can also use `is_partition` for `type: categorical` [categorical](#categorical) dimensions as well. +`time_granularity` specifies the smallest level of detail that a measure or metric should be reported at, such as daily, weekly, monthly, quarterly, or yearly. Different granularity options are available, and each metric must have a specified granularity. For example, a metric that is specified with weekly granularity couldn't be aggregated to a daily grain. -MetricFlow enables metric aggregation during query time. For example, you can aggregate the `messages_per_month` measure. If you originally had a `time_granularity` for the time dimensions `metric_time`, you can specify a yearly granularity for aggregation in your CLI query: +The current options for time granularity are day, week, month, quarter, and year. -```bash -mf query --metrics messages_per_month --dimensions metric_time --order metric_time --time-granularity year -``` +Aggregation between metrics with different granularities is possible, with the Semantic Layer returning results at the highest granularity by default. For example, when querying two metrics with daily and monthly granularity, the resulting aggregation will be at the monthly level. ```yaml dimensions: @@ -176,7 +179,7 @@ dimensions: measures: - name: users_deleted expr: 1 - agg: sum + agg: sum agg_time_dimension: deleted_at - name: users_created expr: 1 From 576de30a0d91cee417a35766774360a95827ff8a Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 8 Aug 2023 12:36:05 +0100 Subject: [PATCH 587/703] remove beta file --- website/docs/faqs/Environments/beta-release.md | 7 ------- website/static/_redirects | 2 ++ 2 files changed, 2 insertions(+), 7 deletions(-) delete mode 100644 website/docs/faqs/Environments/beta-release.md diff --git a/website/docs/faqs/Environments/beta-release.md b/website/docs/faqs/Environments/beta-release.md deleted file mode 100644 index 5eef07d3510..00000000000 --- a/website/docs/faqs/Environments/beta-release.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: What is a beta release? -description: "How to try out beta features" -sidebar_label: 'What is a beta release?' -id: beta-release ---- -This is a chance to try out brand-new functionality. You get to start planning for use cases that the next minor version will unlock. We get to hear from you about unexpected behavior and nasty bugs, so that the release candidate has more polish and fewer surprises. diff --git a/website/static/_redirects b/website/static/_redirects index ba9d00d37f6..cc72cfc8d47 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,3 +1,5 @@ +/faqs/environments/beta-release /docs/dbt-versions/product-lifecycles 301 + /docs/deploy/slim-ci-jobs /docs/deploy/ci-jobs 301 ## semantic layer From 34b1d173909e533fe14b3f17e74f5fbfb92bf4cd Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 8 Aug 2023 12:37:58 +0100 Subject: [PATCH 588/703] Revert "remove beta file" This reverts commit 576de30a0d91cee417a35766774360a95827ff8a. --- website/docs/faqs/Environments/beta-release.md | 7 +++++++ website/static/_redirects | 2 -- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 website/docs/faqs/Environments/beta-release.md diff --git a/website/docs/faqs/Environments/beta-release.md b/website/docs/faqs/Environments/beta-release.md new file mode 100644 index 00000000000..5eef07d3510 --- /dev/null +++ b/website/docs/faqs/Environments/beta-release.md @@ -0,0 +1,7 @@ +--- +title: What is a beta release? +description: "How to try out beta features" +sidebar_label: 'What is a beta release?' +id: beta-release +--- +This is a chance to try out brand-new functionality. You get to start planning for use cases that the next minor version will unlock. We get to hear from you about unexpected behavior and nasty bugs, so that the release candidate has more polish and fewer surprises. diff --git a/website/static/_redirects b/website/static/_redirects index cc72cfc8d47..ba9d00d37f6 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,5 +1,3 @@ -/faqs/environments/beta-release /docs/dbt-versions/product-lifecycles 301 - /docs/deploy/slim-ci-jobs /docs/deploy/ci-jobs 301 ## semantic layer From c30dbe28d64fa3107b4656110e1a84a420e66720 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 8 Aug 2023 12:40:31 +0100 Subject: [PATCH 589/703] rmove beta file --- website/docs/faqs/Environments/beta-release.md | 7 ------- website/static/_redirects | 5 ++++- 2 files changed, 4 insertions(+), 8 deletions(-) delete mode 100644 website/docs/faqs/Environments/beta-release.md diff --git a/website/docs/faqs/Environments/beta-release.md b/website/docs/faqs/Environments/beta-release.md deleted file mode 100644 index 5eef07d3510..00000000000 --- a/website/docs/faqs/Environments/beta-release.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: What is a beta release? -description: "How to try out beta features" -sidebar_label: 'What is a beta release?' -id: beta-release ---- -This is a chance to try out brand-new functionality. You get to start planning for use cases that the next minor version will unlock. We get to hear from you about unexpected behavior and nasty bugs, so that the release candidate has more polish and fewer surprises. diff --git a/website/static/_redirects b/website/static/_redirects index ba9d00d37f6..8e203b6a70a 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,3 +1,5 @@ +/faqs/environments/beta-release /docs/dbt-versions/product-lifecycles 301 + /docs/deploy/slim-ci-jobs /docs/deploy/ci-jobs 301 ## semantic layer @@ -23,7 +25,8 @@ https://docs.getdbt.com/blog/how-to-design-and-structure-metrics /docs/use-dbt- /docs/quickstarts/dbt-cloud/bigquery /quickstarts/bigquery 301 /docs/quickstarts/dbt-cloud/databricks /quickstarts/databricks 301 /docs/quickstarts/dbt-cloud/redshift /quickstarts/redshift 301 -/docs/quickstarts/dbt-cloud/snowflake /quickstarts/snowflake 301 +/docs/quickstarts/dbt-cloud/snowflake / +quickstarts/snowflake 301 /docs/quickstarts/dbt-cloud/starburst-galaxy /quickstarts/starburst-galaxy 301 /docs/quickstarts/dbt-core/codespace /quickstarts/codespace 301 /docs/quickstarts/dbt-core/manual-install /quickstarts/manual-install 301 From 13af9c2a77801dc77ea5e4e1571e72caff9dc32c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 8 Aug 2023 12:58:04 +0100 Subject: [PATCH 590/703] Update _redirects --- website/static/_redirects | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/static/_redirects b/website/static/_redirects index 8e203b6a70a..30271898aff 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -26,7 +26,7 @@ https://docs.getdbt.com/blog/how-to-design-and-structure-metrics /docs/use-dbt- /docs/quickstarts/dbt-cloud/databricks /quickstarts/databricks 301 /docs/quickstarts/dbt-cloud/redshift /quickstarts/redshift 301 /docs/quickstarts/dbt-cloud/snowflake / -quickstarts/snowflake 301 +/quickstarts/snowflake 301 /docs/quickstarts/dbt-cloud/starburst-galaxy /quickstarts/starburst-galaxy 301 /docs/quickstarts/dbt-core/codespace /quickstarts/codespace 301 /docs/quickstarts/dbt-core/manual-install /quickstarts/manual-install 301 From 96f345ff3838349b361c9e898d8a6384117fcb12 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 8 Aug 2023 12:58:22 +0100 Subject: [PATCH 591/703] Update _redirects --- website/static/_redirects | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/website/static/_redirects b/website/static/_redirects index 30271898aff..cc72cfc8d47 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -25,8 +25,7 @@ https://docs.getdbt.com/blog/how-to-design-and-structure-metrics /docs/use-dbt- /docs/quickstarts/dbt-cloud/bigquery /quickstarts/bigquery 301 /docs/quickstarts/dbt-cloud/databricks /quickstarts/databricks 301 /docs/quickstarts/dbt-cloud/redshift /quickstarts/redshift 301 -/docs/quickstarts/dbt-cloud/snowflake / -/quickstarts/snowflake 301 +/docs/quickstarts/dbt-cloud/snowflake /quickstarts/snowflake 301 /docs/quickstarts/dbt-cloud/starburst-galaxy /quickstarts/starburst-galaxy 301 /docs/quickstarts/dbt-core/codespace /quickstarts/codespace 301 /docs/quickstarts/dbt-core/manual-install /quickstarts/manual-install 301 From 62fd02d4ae5c58dd1b99f69f9d80626172a7feda Mon Sep 17 00:00:00 2001 From: winnie <91998347+gwenwindflower@users.noreply.github.com> Date: Tue, 8 Aug 2023 08:19:48 -0500 Subject: [PATCH 592/703] Update language to be more mf-clear (#3883) ## What are you changing in this pull request and why? Want to make sure we're really explicit when we're talking about MetricFlow (as we are in most of this guide) vs the full-on Semantic Layer. This clears that up! --- .../semantic-layer-1-intro.md | 19 ++++++++++++------- .../semantic-layer-2-setup.md | 7 +++---- .../semantic-layer-3-build-semantic-models.md | 7 +++---- .../semantic-layer-4-build-metrics.md | 7 +++---- .../semantic-layer-5-refactor-a-mart.md | 5 ++--- .../semantic-layer-6-advanced-metrics.md | 5 ++--- .../semantic-layer-7-conclusion.md | 5 ++--- 7 files changed, 27 insertions(+), 28 deletions(-) diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md index 1d63431a73e..19c6717063c 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-1-intro.md @@ -1,8 +1,7 @@ --- -title: "Intro to the Semantic Layer" -description: Getting started with the dbt Semantic Layer -displayText: "dbt Cloud Semantic Layer best practices" -hoverSnippet: Learn how to get started with the dbt Semantic Layer +title: "Intro to MetricFlow" +description: Getting started with the dbt and MetricFlow +hoverSnippet: Learn how to get started with the dbt and MetricFlow --- :::tip @@ -13,10 +12,10 @@ Flying cars, hoverboards, and true self-service analytics: this is the future we ## Learning goals -- ❓ Understand the **purpose and capabilities** of the **dbt Semantic Layer**. -- 🧱 Familiarity with the core components of the dbt Semantic Layer — **semantic models and metrics** — and how they work together. +- ❓ Understand the **purpose and capabilities** of the **dbt Semantic Layer**, particularly MetricFlow as the engine that powers it. +- 🧱 Familiarity with the core components of MetricFlow — **semantic models and metrics** — and how they work together. - 🛠️ Hands-on **experience building** semantic models and metrics in dbt Cloud. -- 🔁 Know how to **refactor** models into the Semantic Layer. +- 🔁 Know how to **refactor** models for MetricFlow. - 🏅 Aware of new **best practices** to take maximum advantage of the Semantic Layer. ## Guide structure overview @@ -31,3 +30,9 @@ We'll work through our learning goals via an [example project](https://github.co 6. Review **best practices**. If you're ready to ship your users more power with less code, let's dive in! + +:::info +MetricFlow is a new way to define metrics in dbt and one of the key components of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl). It handles SQL query construction and defines the specification for dbt semantic models and metrics. + +To fully experience the dbt Semantic Layer, including the ability to query dbt metrics via external integrations, you'll need a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). +::: diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md index ef67082e73f..7861767e25d 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-2-setup.md @@ -1,8 +1,7 @@ --- -title: "Setup the Semantic Layer" -description: Getting started with the dbt Semantic Layer -displayText: "dbt Cloud Semantic Layer best practices" -hoverSnippet: Learn how to get started with the dbt Semantic Layer +title: "Set up MetricFlow" +description: Getting started with the dbt and MetricFlow +hoverSnippet: Learn how to get started with the dbt and MetricFlow --- ## Getting started diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md index ba4d0cab726..2c2122572b8 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-3-build-semantic-models.md @@ -1,13 +1,12 @@ --- title: "Building semantic models" -description: Getting started with the dbt Semantic Layer -displayText: "dbt Cloud Semantic Layer best practices" -hoverSnippet: Learn how to get started with the dbt Semantic Layer +description: Getting started with the dbt and MetricFlow +hoverSnippet: Learn how to get started with the dbt and MetricFlow --- ## How to build a semantic model -A semantic model is the Semantic Layer equivalent to a logical layer model (what historically has just been called a 'model' in dbt land). Just as configurations for models are defined on the `models:` YAML key, configurations for semantic models are housed under `semantic models:`. A key difference is that while a logical model consists of configuration and SQL or Python code, a **semantic model is defined purely via YAML**. Rather than encoding a specific dataset, a **semantic model describes relationships** that let your end users select and refine their own datasets reliably. +A semantic model is the MetricFlow equivalent to a logical layer model (what historically has just been called a 'model' in dbt land). Just as configurations for models are defined on the `models:` YAML key, configurations for semantic models are housed under `semantic models:`. A key difference is that while a logical model consists of configuration and SQL or Python code, a **semantic model is defined purely via YAML**. Rather than encoding a specific dataset, a **semantic model describes relationships** that let your end users select and refine their own datasets reliably. - ⚙️ Semantic models are **comprised of three components**: - 🫂 **entities**: these describe the **relationships** between various semantic models (think ids) diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md index 1a572cc03e4..cd0efdc9e64 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-4-build-metrics.md @@ -1,8 +1,7 @@ --- title: "Building metrics" -description: Getting started with the dbt Semantic Layer -displayText: "dbt Cloud Semantic Layer best practices" -hoverSnippet: Learn how to get started with the dbt Semantic Layer +description: Getting started with the dbt and MetricFlow +hoverSnippet: Learn how to get started with the dbt and MetricFlow --- ## How to build metrics @@ -37,6 +36,6 @@ metrics: - It's best practice any time we're updating our semantic layer code to run a `dbt parse && mf validate-configs`. - If everything passes, we can start querying this metric with `mf query`! -- `mf query` is not how you would use the tool in production, that's handled by the dbt Semantic Layer's cloud features. It's available for testing results of various metric queries in development, exactly as we're using it now. +- `mf query` is not how you would use the tool in production, that's handled by the dbt Cloud Semantic Layer's features. It's available for testing results of various metric queries in development, exactly as we're using it now. - Try `mf query --metrics revenue --group-by metric_time__day` and see a preview of the data come back. - Note the structure of the above query. We select the metric(s) we want and the dimensions to group them by — we use dunders (double underscores e.g.`metric_time__[time bucket]`) to designate time dimensions or other non-unique dimensions that need a specified entity path to resolve (e.g. if you have a orders location dimension and a employee location dimension both named 'location' you would need dunders to specify `orders__location` or `employee__location`). diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md index cc519e1b718..b2efb39e9fc 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-5-refactor-a-mart.md @@ -1,8 +1,7 @@ --- title: "Refactor an existing mart" -description: Getting started with the dbt Semantic Layer -displayText: "dbt Cloud Semantic Layer best practices" -hoverSnippet: Learn how to get started with the dbt Semantic Layer +description: Getting started with the dbt and MetricFlow +hoverSnippet: Learn how to get started with the dbt and MetricFlow --- ## A new approach diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md index cfac469ed7c..fe7438b5800 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-6-advanced-metrics.md @@ -1,8 +1,7 @@ --- title: "More advanced metrics" -description: Getting started with the dbt Semantic Layer -displayText: "dbt Cloud Semantic Layer best practices" -hoverSnippet: Learn how to get started with the dbt Semantic Layer +description: Getting started with the dbt and MetricFlow +hoverSnippet: Learn how to get started with the dbt and MetricFlow --- ## More advanced metric types diff --git a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md index 915ab2d9bfe..a1062721177 100644 --- a/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md +++ b/website/docs/guides/best-practices/how-we-build-our-metrics/semantic-layer-7-conclusion.md @@ -1,8 +1,7 @@ --- title: "Best practices" -description: Getting started with the dbt Semantic Layer -displayText: "dbt Cloud Semantic Layer best practices" -hoverSnippet: Learn how to get started with the dbt Semantic Layer +description: Getting started with the dbt and MetricFlow +hoverSnippet: Learn how to get started with the dbt and MetricFlow --- ## Putting it all together From 96845378223a4848223c6437db64e70881fc0466 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 8 Aug 2023 16:02:44 +0100 Subject: [PATCH 593/703] Update enterprise-permissions.md fix typo and change title to sentence case --- .../docs/docs/cloud/manage-access/enterprise-permissions.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/cloud/manage-access/enterprise-permissions.md b/website/docs/docs/cloud/manage-access/enterprise-permissions.md index cb338b3dc39..5bf3623b105 100644 --- a/website/docs/docs/cloud/manage-access/enterprise-permissions.md +++ b/website/docs/docs/cloud/manage-access/enterprise-permissions.md @@ -21,11 +21,11 @@ The following roles and permission sets are available for assignment in dbt Clou -## Diagram of the Permission Sets +## Diagram of the permission sets -## How to Set Up RBAC Groups in dbt Cloud +## How to set up RBAC Groups in dbt Cloud Role-Based Access Control (RBAC) is helpful for automatically assigning permissions to dbt admins based on their SSO provider group associations. @@ -34,7 +34,7 @@ Role-Based Access Control (RBAC) is helpful for automatically assigning permissi 1. Select an existing group or create a new group to add RBAC. Name the group (this can be any name you like, but it's recommended to keep it consistent with the SSO groups). If you have configured SSO with SAML 2.0, you may have to use the GroupID instead of the name of the group. -2. Configure the SSO provider groups you want to add RBAC by clicking **Add** in the **SSO** section. These fields are case sensitive and must match the source group formatting. +2. Configure the SSO provider groups you want to add RBAC by clicking **Add** in the **SSO** section. These fields are case-sensitive and must match the source group formatting. 3. Configure the permissions for users within those groups by clicking **Add** in the **Access** section of the window. From 8fa9f17f9bee6399345066c24283970c00c4ed21 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 8 Aug 2023 16:06:06 +0100 Subject: [PATCH 594/703] Update _enterprise-permissions-table.md --- website/snippets/_enterprise-permissions-table.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/snippets/_enterprise-permissions-table.md b/website/snippets/_enterprise-permissions-table.md index 75ced50dc2b..779c5bcb479 100644 --- a/website/snippets/_enterprise-permissions-table.md +++ b/website/snippets/_enterprise-permissions-table.md @@ -56,7 +56,7 @@ The project roles enable you to work within the projects in various capacities. #### Account permissions for project roles -| Account-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | +| Account-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webhook | |--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| | Account settings | R | | R | | R | | | | | | R | | | Auth provider | | | | | | | | | | | | | @@ -70,7 +70,7 @@ The project roles enable you to work within the projects in various capacities. #### Project permissions for project roles -|Project-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webook | +|Project-level permission | Admin | Analyst | Database admin | Developer | Git Admin | Job admin | Job viewer | Metadata | Semantic Layer | Stakeholder | Team admin | Webhook | |--------------------------|:-----:|:-------:|:--------------:|:---------:|:---------:|:---------:|:-----------:|:--------:|:--------------:|:-----------:|:----------:|:------:| | Connections | W | R | W | R | R | R | | | | R | R | | | Credentials | W | W | W | W | R | W | | | | R | R | | @@ -87,4 +87,4 @@ The project roles enable you to work within the projects in various capacities. | Projects | W | W | W | W | W | R | R | | | R | W | | | Repositories | W | | R | R | W | | | | | R | R | | | Runs | W | R | R | W | R | W | R | | | R | R | | -| Semantic Layer Config | W | R | W | R | R | R | | | W | R | R | | \ No newline at end of file +| Semantic Layer Config | W | R | W | R | R | R | | | W | R | R | | From fa215b424a995f4f8516e71e13181c7cdc6d40a2 Mon Sep 17 00:00:00 2001 From: Josh Devlin Date: Wed, 9 Aug 2023 01:31:43 +1000 Subject: [PATCH 595/703] Fix error in predicates (#3846) ## What are you changing in this pull request and why? As pointed out by [this community member](https://getdbt.slack.com/archives/CJN7XRF1B/p1690926396734599) the syntax for incremental predicates uses datediff instead of dateadd ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [x] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Co-authored-by: winnie <91998347+gwenwindflower@users.noreply.github.com> --- website/docs/docs/build/incremental-models.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/build/incremental-models.md b/website/docs/docs/build/incremental-models.md index dd20ca36a53..89115652a9c 100644 --- a/website/docs/docs/build/incremental-models.md +++ b/website/docs/docs/build/incremental-models.md @@ -395,7 +395,7 @@ models: cluster_by: ['session_start'] incremental_strategy: merge # this limits the scan of the existing table to the last 7 days of data - incremental_predicates: ["DBT_INTERNAL_DEST.session_start > datediff(day, -7, current_date)"] + incremental_predicates: ["DBT_INTERNAL_DEST.session_start > dateadd(day, -7, current_date)"] # `incremental_predicates` accepts a list of SQL statements. # `DBT_INTERNAL_DEST` and `DBT_INTERNAL_SOURCE` are the standard aliases for the target table and temporary table, respectively, during an incremental run using the merge strategy. ``` @@ -412,7 +412,7 @@ Alternatively, here are the same same configurations configured within a model f cluster_by = ['session_start'], incremental_strategy = 'merge', incremental_predicates = [ - "DBT_INTERNAL_DEST.session_start > datediff(day, -7, current_date)" + "DBT_INTERNAL_DEST.session_start > dateadd(day, -7, current_date)" ] ) }} @@ -430,7 +430,7 @@ merge into DBT_INTERNAL_DEST DBT_INTERNAL_DEST.id = DBT_INTERNAL_SOURCE.id and -- custom predicate: limits data scan in the "old" data / existing table - DBT_INTERNAL_DEST.session_start > datediff(day, -7, current_date) + DBT_INTERNAL_DEST.session_start > dateadd(day, -7, current_date) when matched then update ... when not matched then insert ... ``` From 25c8ce0b1b512867ec624fe7bc4649c3df1fedf3 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 8 Aug 2023 14:17:08 -0400 Subject: [PATCH 596/703] Adding billing page --- website/docs/docs/cloud/billing.md | 105 +++++++++++++++++++++++++++++ website/sidebars.js | 1 + 2 files changed, 106 insertions(+) create mode 100644 website/docs/docs/cloud/billing.md diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md new file mode 100644 index 00000000000..086802d3737 --- /dev/null +++ b/website/docs/docs/cloud/billing.md @@ -0,0 +1,105 @@ +--- +title: "Billing" +id: billing +description: "dbt Cloud billing information." +sidebar_label: Billing +--- + +dbt Cloud offers a variety of [plans and pricing](https://www.getdbt.com/pricing/) to fit your organization’s needs. With flexible billing options that appeal to large enterprises and small businesses and [server availability](/docs/cloud/about-cloud/regions-ip-addresses) worldwide, dbt Cloud is the fastest and easiest way to begin transforming your data. + +## How does dbt Cloud pricing work? + +As a customer, you pay for the number of seats you have and the amount of usage consumed each month. Usage is based on the number of Successful Models Built, and seats are billed primarily on the amount of Developer licenses purchased. All billing computations are conducted in Coordinated Universal Time (UTC). + +### What counts as a Successful Model Built? + +dbt Cloud considers a Successful Model Built as any model that is successfully built via a run through dbt Cloud’s orchestration functionality in a dbt Cloud deployment environment. Models are counted when built and run. This includes any jobs run via dbt Cloud's scheduler, CI builds (jobs triggered by pull requests), runs kicked off via the dbt Cloud API, and any successor dbt Cloud tools with similar functionality. This also includes models that are successfully built even when a run may fail to complete. For example, you may have a job that contains 100 models and on one of its runs, 51 models are successfully built and then the job fails. In this situation, only 51 models would be counted. + +Any models built in a dbt Cloud development environment (for example, via the IDE) do not count towards your usage. Tests, seeds, and snapshots also do not count. + + +### What counts as a seat license? + +There are three types of possible seat licenses: + +* **Developer** — for roles and permissions that require interaction with the dbt Cloud environment day-to-day. +* **Read-Only** — for access to view certain documents and reports. +* **IT** — for access to specific features related to account management (for example, configuring git integration). + +### Viewing usage in the product + +Viewing usage in the product is restricted to specific roles: + +* Team plan — Owner group +* Enterprise plan — Account and billing admin roles + +For an account-level view of usage, if you have access to the **Billing** and **Usage** pages, you can see an estimate of the usage for the month. In the Billing page of the **Account Settings**, you can see how your account tracks against its usage. You can also see which projects are building the most models. + +As a Team and Developer plan user, you can see how the account is tracking against the included models built. As an Enterprise plan user, you can see how much you have drawn down from your annual commit and how much remains. + +On each Project Home page, any user with access to that project can see how many models are built each month. From there, additional details on top jobs by models built can be found on each Environment page. + +In addition, you can look at the Job Details page's Insights tab to show how many models are being built per month for that particular job and which models are taking the longest to build. + +Any usage data is only an estimate of your usage, and there may be a delay in showing usage data in the product — your final usage for the month will be visible on your monthly statements (statements applicable to Team and Enterprise plans). + + +## Plans and Billing + +dbt Cloud offers several [plans](https://www.getdbt.com/pricing) with different features that meet your needs. We may make changes to our plan details from time to time. We'll always let you know in advance, so you can be prepared. The following section explains how billing works in each plan. + +### Developer plan billing + +Developer plans are free and include one Developer license and 5,000 models each month. Models are refreshed at the beginning of each calendar month. If you exceed 5,000 models, any subsequent runs will be canceled until models are refreshed or until you upgrade to a paid plan. The rest of the dbt Cloud platform is still accessible, and no work will be lost. + +### Team plan billing + +Team customers pay monthly via credit card for seats and usage, and accounts include 20,000 models monthly. Seats are charged upfront at the beginning of the month. If you add seats during the month, seats will be prorated and charged on the same day. Seats removed during the month will be reflected on the next invoice and are not eligible for refunds. You can change the credit card information and the number of seats from the billings section anytime. Accounts will receive one monthly invoice that includes the upfront charge for the seats and the usage charged in arrears from the previous month. + +Usage is calculated and charged in arrears for the previous month. If you exceed 20,000 models in any month, you will be billed for additional usage on your next invoice. Additional use is billed at the rates on our [pricing page](https://www.getdbt.com/pricing). + + +Included models that are not consumed do not roll over to future months. You can estimate your bill with a simple formula: + +`($100 x number of developer seats) + ((models built - 20,000) x $0.01)` + +If you cancel your plan, the plan will remain active through the end of the current billing period and may continue to accrue usage. Please review the Managing usage section [#managing-usage] below to avoid further usage accruing. If your account has exceeded the 20,000 included successful models built during the month of cancellation, a usage invoice will be sent the following month. + +:::note Legacy pricing plans + +Customers who purchased the dbt Cloud Team plan before August 8, 2023, may be on a legacy pricing plan that only includes seat-based charges. Legacy plan pricing will be supported through at least July 2024, although we may not release all new features to legacy plan subscribers. Any changes to your current plan pricing will be communicated in advance according to our Terms of Use. To ensure you have access to new features for each plan, you can upgrade now or [contact us](mailto:support@getdbt.com) with questions. + +::: + +### Enterprise plan billing + +As an Enterprise customer, you pay annually via invoice, monthly in arrears for additional usage (if applicable), and may benefit from negotiated usage rates. Please refer to your order form or contract for your specific pricing details, or [contact the account team](https://www.getdbt.com/contact-demo) with any questions. + +## Managing usage + +From anywhere in the dbt Cloud account, click the **gear icon** and click **Account settings**. The **Billing** option will be on the left side menu under the **Account Settings** heading. Here, you can view individual available plans and the features provided for each. + +### Usage notifications + +Every plan automatically sends email alerts when 75%, 90%, and 100% of usage estimates have been reached. In the Team plan, all users within the Owner group will receive alerts. In Enterprise plans, all users with the Account Admin and Billing Admin permission sets will receive alerts. Users cannot opt out of these emails. If you would like additional users to receive these alert emails, please provide them with the applicable permissions mentioned above. Note that your usage may already be higher than the percentage indicated in the alert due to your usage pattern and minor latency times. + +### How do I stop usage from accruing? + +There are 2 options to disable models from being built and charged: + +1. Open the **Job Settings** of every job and navigate to the **Triggers** section. Disable the **Run on Schedule** and set the **Continuous Integration** feature **Run on Pull Requests?** to **No**. Check your workflows to ensure that you are not triggering any runs via the dbt Cloud API. This option will enable you to keep your dbt Cloud jobs without building more models. +2. Alternatively, you can delete some or all of your dbt Cloud jobs. This will ensure that no runs are kicked off, but you will permanently lose your job(s). + + +## FAQ +* What happens if I need more than 8 seats on the Team plan? +_If you need more than 8 developer seats, select the Contact Sales option from the billing settings to talk to our sales team about an Enterprise plan._ + +* What if I go significantly over my included free models on the Team or Developer plan? +_Consider upgrading to a Team or Enterprise plan. Team plans include more models and allow you to exceed the monthly usage limit. Enterprise accounts are supported by a dedicated account management team and offer annual plans, custom configurations, and negotiated usage rates. + +* I want to upgrade my plan. Will all of my work carry over? +_Yes. Your dbt Cloud account will be upgraded without impacting your existing projects and account settings._ + +* How do I determine the right plan for me? + _The best option is to consult with our sales team. They'll help you figure out what is right for your needs. We also offer a free two-week trial on the Team plan._ diff --git a/website/sidebars.js b/website/sidebars.js index 62262703055..1ffaea7af7f 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -137,6 +137,7 @@ const sidebarSettings = { "docs/cloud/secure/ip-restrictions", ], }, // PrivateLink + "docs/cloud/billing", ], }, { From 404c524317a30f8474b2057132275893da63dd27 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 8 Aug 2023 14:35:48 -0400 Subject: [PATCH 597/703] Update website/docs/docs/cloud/billing.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/cloud/billing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md index 086802d3737..d2f1596259b 100644 --- a/website/docs/docs/cloud/billing.md +++ b/website/docs/docs/cloud/billing.md @@ -91,7 +91,7 @@ There are 2 options to disable models from being built and charged: 2. Alternatively, you can delete some or all of your dbt Cloud jobs. This will ensure that no runs are kicked off, but you will permanently lose your job(s). -## FAQ +## FAQs * What happens if I need more than 8 seats on the Team plan? _If you need more than 8 developer seats, select the Contact Sales option from the billing settings to talk to our sales team about an Enterprise plan._ From def6c173dd9dc2137246a75a09e8dcbf0747fa79 Mon Sep 17 00:00:00 2001 From: Joel Labes Date: Wed, 9 Aug 2023 08:14:05 +1200 Subject: [PATCH 598/703] Remove dbt updates tag from devblog (#3884) ## What are you changing in this pull request and why? We experimented with product updates in the dev blog for a lil while, but it's now better implemented elsewhere. So that it doesn't look like we just stopped improving the product 18 months ago, we're going to remove this tag but keep the articles around so they don't 404. NB that a handful of new product feature articles were incorrectly tagged (using the label not its ID) so I've just removed those tags altogether as well. Before and after: ![Screenshot 2023-08-08 at 4 12 03 PM](https://github.com/dbt-labs/docs.getdbt.com/assets/7335046/868daa42-8982-497e-a48e-056207e023a3) ![Screenshot 2023-08-08 at 4 12 43 PM](https://github.com/dbt-labs/docs.getdbt.com/assets/7335046/d29c2e4c-b97d-4de7-b3ac-dbc2629cc124) --------- Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/blog/2021-09-15-september-21-product-email.md | 1 - website/blog/2021-10-15-october-21-product-update-email.md | 1 - website/blog/2021-11-15-november-21-product-email.md | 1 - website/blog/2022-08-31-august-product-update.md | 1 - .../blog/2022-10-19-polyglot-dbt-python-dataframes-and-sql.md | 3 +-- website/blog/2023-04-26-deprecating-dbt-metrics.md | 1 - website/blog/2023-05-01-evolving-data-engineer-craft.md | 1 - website/blog/categories.yml | 4 ---- 8 files changed, 1 insertion(+), 12 deletions(-) diff --git a/website/blog/2021-09-15-september-21-product-email.md b/website/blog/2021-09-15-september-21-product-email.md index c18f59a9be5..a3c9993befa 100644 --- a/website/blog/2021-09-15-september-21-product-email.md +++ b/website/blog/2021-09-15-september-21-product-email.md @@ -4,7 +4,6 @@ description: "dbt v1.0 is coming up! Don't forget to update your projects to the slug: dbt-product-update-2021-september authors: [lauren_craigie] -tags: [dbt updates] hide_table_of_contents: false date: 2021-09-15 diff --git a/website/blog/2021-10-15-october-21-product-update-email.md b/website/blog/2021-10-15-october-21-product-update-email.md index 9e58514c50e..c235e43bf43 100644 --- a/website/blog/2021-10-15-october-21-product-update-email.md +++ b/website/blog/2021-10-15-october-21-product-update-email.md @@ -4,7 +4,6 @@ description: "Stay up-to-date with the latest features in dbt. Read about our Oc slug: dbt-product-update-2021-october authors: [lauren_craigie] -tags: [dbt updates] hide_table_of_contents: false date: 2021-10-15 diff --git a/website/blog/2021-11-15-november-21-product-email.md b/website/blog/2021-11-15-november-21-product-email.md index d38685aad53..dd5d2b63956 100644 --- a/website/blog/2021-11-15-november-21-product-email.md +++ b/website/blog/2021-11-15-november-21-product-email.md @@ -4,7 +4,6 @@ description: "Stay up-to-date with the latest features in dbt. Read about our No slug: dbt-product-update-2021-november authors: [lauren_craigie] -tags: [dbt updates] hide_table_of_contents: false date: 2021-11-15 diff --git a/website/blog/2022-08-31-august-product-update.md b/website/blog/2022-08-31-august-product-update.md index 143d46a37d3..cb4077f3a06 100644 --- a/website/blog/2022-08-31-august-product-update.md +++ b/website/blog/2022-08-31-august-product-update.md @@ -4,7 +4,6 @@ description: "Coalesce is less than 2 months away!" slug: dbt-product-update-2022-august authors: [lauren_craigie] -tags: [dbt updates] hide_table_of_contents: false date: 2022-08-31 diff --git a/website/blog/2022-10-19-polyglot-dbt-python-dataframes-and-sql.md b/website/blog/2022-10-19-polyglot-dbt-python-dataframes-and-sql.md index 95988e75f04..bab92000a16 100644 --- a/website/blog/2022-10-19-polyglot-dbt-python-dataframes-and-sql.md +++ b/website/blog/2022-10-19-polyglot-dbt-python-dataframes-and-sql.md @@ -4,8 +4,7 @@ description: "Going polyglot is a major next step in the journey of dbt Core. It slug: polyglot-dbt-python-dataframes-sql authors: [doug_beatty] - -tags: [dbt product updates] +tags: [dbt tutorials] hide_table_of_contents: false date: 2022-10-18 diff --git a/website/blog/2023-04-26-deprecating-dbt-metrics.md b/website/blog/2023-04-26-deprecating-dbt-metrics.md index 1041f75eb2b..bf23bb992ad 100644 --- a/website/blog/2023-04-26-deprecating-dbt-metrics.md +++ b/website/blog/2023-04-26-deprecating-dbt-metrics.md @@ -5,7 +5,6 @@ slug: deprecating-dbt-metrics authors: [callum_mccann] -tags: [dbt product updates] hide_table_of_contents: false date: 2023-04-26 diff --git a/website/blog/2023-05-01-evolving-data-engineer-craft.md b/website/blog/2023-05-01-evolving-data-engineer-craft.md index 339d0ac380e..a3113240227 100644 --- a/website/blog/2023-05-01-evolving-data-engineer-craft.md +++ b/website/blog/2023-05-01-evolving-data-engineer-craft.md @@ -5,7 +5,6 @@ slug: evolving-data-engineer-craft authors: [sung_chung, kira_furuichi] -tags: [dbt product updates] hide_table_of_contents: false date: 2023-05-01 diff --git a/website/blog/categories.yml b/website/blog/categories.yml index 2a45e6529e2..8103f58cc33 100644 --- a/website/blog/categories.yml +++ b/website/blog/categories.yml @@ -15,10 +15,6 @@ display_title: dbt tutorials description: Best practices in the usage of our favorite data transformation tool. is_featured: true -- name: dbt updates - display_title: dbt product updates - description: An archive of monthly product updates from the dbt Labs team. - is_featured: true - name: SQL magic display_title: SQL magic description: Stories of dbt developers making SQL sing across warehouses. From b82a98b8937c936958cbf1b12d9a19689b714623 Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 8 Aug 2023 16:36:21 -0400 Subject: [PATCH 599/703] Fixing italics on Billing FAQ --- website/docs/docs/cloud/billing.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md index d2f1596259b..76b37560be3 100644 --- a/website/docs/docs/cloud/billing.md +++ b/website/docs/docs/cloud/billing.md @@ -92,11 +92,12 @@ There are 2 options to disable models from being built and charged: ## FAQs + * What happens if I need more than 8 seats on the Team plan? _If you need more than 8 developer seats, select the Contact Sales option from the billing settings to talk to our sales team about an Enterprise plan._ * What if I go significantly over my included free models on the Team or Developer plan? -_Consider upgrading to a Team or Enterprise plan. Team plans include more models and allow you to exceed the monthly usage limit. Enterprise accounts are supported by a dedicated account management team and offer annual plans, custom configurations, and negotiated usage rates. +_Consider upgrading to a Team or Enterprise plan. Team plans include more models and allow you to exceed the monthly usage limit. Enterprise accounts are supported by a dedicated account management team and offer annual plans, custom configurations, and negotiated usage rates._ * I want to upgrade my plan. Will all of my work carry over? _Yes. Your dbt Cloud account will be upgraded without impacting your existing projects and account settings._ From 2a6ec18763cc1bb71ab8b8c89454e4307553583a Mon Sep 17 00:00:00 2001 From: Adam Tworkiewicz Date: Tue, 8 Aug 2023 16:42:22 -0500 Subject: [PATCH 600/703] Update docs to reflect Teradata as a verified adapter (#3873) ## What are you changing in this pull request and why? Teradata has achieved the Verified Connector status. This PR changes `docs/supported-data-platforms` page to reflect that. ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. - [x] Add a checklist item for anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch." Co-authored-by: Adam Tworkiewicz --- website/docs/docs/supported-data-platforms.md | 5 +++++ website/static/img/icons/teradata.svg | 1 + website/static/img/icons/white/teradata.svg | 1 + 3 files changed, 7 insertions(+) create mode 100644 website/static/img/icons/teradata.svg create mode 100644 website/static/img/icons/white/teradata.svg diff --git a/website/docs/docs/supported-data-platforms.md b/website/docs/docs/supported-data-platforms.md index a8ae33a7e0c..d1f88536693 100644 --- a/website/docs/docs/supported-data-platforms.md +++ b/website/docs/docs/supported-data-platforms.md @@ -72,6 +72,11 @@ The following are **Verified adapters** ✓ you can connect to either in dbt Clo body="
        Install using the CLI


        🚧 Verification in progress" icon="rocket"/> + +
        diff --git a/website/static/img/icons/teradata.svg b/website/static/img/icons/teradata.svg new file mode 100644 index 00000000000..cbbfab92d66 --- /dev/null +++ b/website/static/img/icons/teradata.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/website/static/img/icons/white/teradata.svg b/website/static/img/icons/white/teradata.svg new file mode 100644 index 00000000000..cbbfab92d66 --- /dev/null +++ b/website/static/img/icons/white/teradata.svg @@ -0,0 +1 @@ + \ No newline at end of file From b7901a484cdfe0c5c0149e93063319c6e4dee9f4 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Tue, 8 Aug 2023 17:16:52 -0700 Subject: [PATCH 601/703] fix dropbox feedback --- website/docs/docs/build/cumulative-metrics.md | 5 ++--- website/docs/docs/build/derived-metrics.md | 2 +- website/docs/docs/build/metrics-overview.md | 20 ++++++++++--------- website/docs/docs/build/ratio-metrics.md | 3 ++- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 2 +- website/snippets/_sl-define-metrics.md | 2 +- 6 files changed, 18 insertions(+), 16 deletions(-) diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index 08e2c6f0adf..e9c0dc6126e 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -19,9 +19,8 @@ metrics: label: The value that will be displayed in downstream tools # Required type_params: # Required measure: the measure you are referencing # Required - window: the accumulation window i.e 1 month, 7 days, 1 year. # Optional. Cannot be used with grain_to_date - grain_to_date: sets the accumulation grain, such as month will accumulate data for one month, then restart at the beginning of the next. - # Optional. Can not be used with window. + window: the accumulation window i.e 1 month, 7 days, 1 year. # Optional. Can not be used with window. + grain_to_date: sets the accumulation grain, such as month will accumulate data for one month, then restart at the beginning of the next. # Optional. Cannot be used with grain_to_date ``` diff --git a/website/docs/docs/build/derived-metrics.md b/website/docs/docs/build/derived-metrics.md index acfd6935208..bf1d267c96e 100644 --- a/website/docs/docs/build/derived-metrics.md +++ b/website/docs/docs/build/derived-metrics.md @@ -70,7 +70,7 @@ metrics: ## Derived metric offset -You may want to use an offset value of a metric in the definition of a derived metric. For example, you can model the retention rate by using a derived metric with an offset, which involves calculating (active customers at the end of the month/active customers at the beginning of the month) - 1. +You may want to use an offset value of a metric in the definition of a derived metric. For example, you can model the retention rate by using a derived metric with an offset, which involves calculating (active customers at the end of the month/active customers at the beginning of the month). ```yaml metrics: diff --git a/website/docs/docs/build/metrics-overview.md b/website/docs/docs/build/metrics-overview.md index 4a926589de2..9000af14fc2 100644 --- a/website/docs/docs/build/metrics-overview.md +++ b/website/docs/docs/build/metrics-overview.md @@ -13,7 +13,7 @@ The keys for metrics definitions are: | Component | Description | Type | | --------- | ----------- | ---- | | `name` | Provide the reference name for the metric. This name must be unique amongst all metrics. | Required | -| `type` | Define the type of metric, which can be a measure (`simple`) or ratio (`ratio`)). | Required | +| `type` | Define the type of metric, which can be `simple`, `ratio`, `cumulative` or `derived`. | Required | | `type_params` | Additional parameters used to configure metrics. `type_params` are different for each metric type. | Required | | `filter` | For any type of metric, you may optionally include a filter string, which applies a filter for a dimension, entity, or time dimension when computing the metric. You can think of this as your WHERE clause. | Optional | | `meta` | Additional metadata you want to add to your metric. | @@ -68,15 +68,17 @@ metrics: ```yaml metrics: - - name: net_sales_per_user + - name: order_gross_profit + description: Gross profit from each order. type: derived - type_params: null - metrics: - - name: gross_sales # these are all metrics (can be a derived metric, meaning building a derived metric with derived metrics) - - name: cogs - - name: users - filter: {{ Dimension('is_active')}} # Optional additional constraint - alias: active_users # Optional alias to use in the expr + label: Order Gross Profit + type_params: + expr: revenue - cost + metrics: + - name: order_total + alias: revenue + - name: order_cost + alias: cost ``` import AvailIntegrations from '/snippets/_sl-partner-links.md'; @@ -29,6 +28,7 @@ import AvailIntegrations from '/snippets/_sl-partner-links.md'; ## Related docs -
        {frontMatter.meta.api_name} to learn how to integrate with the JDBC to query your metrics in downstream tools. +- [dbt Semantic Layer API query syntax](/docs/dbt-cloud-apis/sl-jdbc#querying-the-api-for-metric-metadata) diff --git a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md index 97fc1700634..c10feded83a 100644 --- a/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/dbt-sl.md @@ -53,7 +53,7 @@ instance="hosted in North America" icon="dbt-bit"/> diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index f70433cd10a..13b7b99d350 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -29,7 +29,7 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. - [Create a semantic model](#create-a-semantic-model) with MetricFlow - [Define metrics](#define-metrics) with MetricFlow -- [Test metrics](#test-metrics) with MetricFlow +- [Test and query metrics locally](#test-and-query-metrics) with MetricFlow - [Run a production job](#run-a-production-job) in dbt Cloud - [Set up dbt Semantic Layer](#setup) in dbt Cloud - [Connect and query API](#connect-and-query-api) with dbt Cloud @@ -88,24 +88,15 @@ import SlSetUp from '/snippets/_new-sl-setup.md'; ## Connect and query API -To connect and query your metrics using the dbt Semantic Layer and its API, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/deploy/regions) deployment, hosted in North America. +You can query your metrics in a JDBC-enabled tool or use existing first-class integrations with the dbt Semantic Layer. In order to do so, you must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. -You can query your metrics in a JDBC-enabled tool or use existing first-class integrations with the dbt Semantic Layer. +- To learn how to use the JDBC API and what tools you can query it with, refer to the {frontMatter.meta.api_name}.
        -1. Refer to the {frontMatter.meta.api_name} to learn how to use the JDBC API and what tools you can query it with. + * To authenticate, you need to [generate a service token](/docs/dbt-cloud-apis/service-tokens) with Semantic Layer Only and Metadata Only permissions. + * Refer to the [SQL query syntax](/docs/dbt-cloud-apis/sl-jdbc#querying-the-api-for-metric-metadata) to query metrics using the API. - * **Note** To authenticate, you need to [generate a service token](/docs/dbt-cloud-apis/service-tokens) with Semantic Layer Only and Metadata Only permissions. +- To learn more about the sophisticated integrations that connect to the dbt Semantic Layer, refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. -2. Refer to [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) for more info. - -## Next steps - -Ready to define your own metrics and bring consistency to data consumers? Review the following documents to get started: - -- [Set up dbt Semantic Layer](docs/use-dbt-semantic-layer/setup-dbt-sl) -- [Build your metrics](/docs/build/build-metrics-intro) -- [About MetricFlow](/docs/build/about-metricflow) -- [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) ## FAQs @@ -126,6 +117,14 @@ User data passes through the Semantic Layer on its way back from the warehouse. The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

        The universal dbt Semantic Layer is available to all Team and Enterprise Plans during public beta. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally.

hzkS}ZN z{Z{FuPN@MjZ~cve)jInoBwza#=Xl9EyX2$?NQ^$SHOUf*Ik9%yE`ob2T#@I~oUC6Y zQEZ|P9ntl5(ituY9m4p_7oL1Cd`NPsIx2Xo;FstHiMSEZlWcIge0I#-OZ*wPq}>}o zI9B#Cnco;4;3ILtJuiZ17E`(Iq1ypQl0nyMMAe?vy5&ab%nhBCm5)D+C)Oot&TK3# z{>xeM&jZqmRH$Y{nfdn9dr_M^?VlL&G5+ds+NdVB+G0D6OKTd|fv5-MB%Swdtcrg-@wMl&%Db*LEUT{ z*yt=ILFuX#(9vD3?&|J_IC}m4i!ARq415?`K<$`v`{MZ4+{4M$PlXq9Ye0pphZTo_ zf~`p2VcmNxY_6k2|IZ{uC)JrL?1BB^VZw1u36;;Xu~l%%60oJxK}OnRs-8}luvdf6wo29d44=~^__y$0 z{~;-zjQbZ;jqS-%EF_A8UwV5zAM&W*e}J>=GPTMk{+3-KId0k&zfW&m9H*&WR)SYF z>+O-E9I%08xAG)e29}CpD(H5|<`ate1cl&EHxrFa?s)-R%R}dZEslvM={ky!_+SeC znwAeJ&|CC<#Q;=q52 zV$P&V3a7v~Vo^)G-6mCB>`~I!r^n0If1?FA*mhwwdF|V6BTUkAol7*L3i(p1^Ks?r zkW?)%Xn*Xh8`r36Pu`?dcAANWk~zNsYy2xMK|x@G{%DfwBuEu+N@*INLg-Svk}-0U zd&v~%ZbAZy*7LWyZdv>CN#p>QEq@oh`JV{#qiV9Iojqxbt6!g7qF>!Lw;*J`8zgLA zAr6^3X7o=ubg}8wPl?~6p2*$Ioy(iW=tJ<4riH;V^}&e->}goFJQa$MsPL3lv-Kbzixy zW`5rz03`2+3!NU%`t?Hm%4r+HLHRa1`~6c_`}-{IR?h)G@@2oA%xVTJp~dq;2U=m6 z%iqb4nTuhAJ;^ZZ^A2m|M1Yuag~O ze^WY;gJtY+T_D-<1|Hd;r-2D%l5x5XuZG*bG9P-$G07oqBPwQ?IvscQdJvDfa18u~ z&aAU<3=^`F_6~i@;<=6(EK?t+_^YFs+P(hQQ$yg_1v@A8IOy5qE|B}#KrH8}crz)R zQB>8R7pj2f$YSBRtXv^y$63kL@Y2o;u#2qY*C8&6zA4F27Ot+8_l@FCEhEP0&3UAD zi5^K!KM~`>_jto@X@oBKU?rQAdWr!!%(q_Ro&5O=s)#$Kk61t4a#c%xRRro3*!KQ9 zD(r9E_iFeiTrfuZd*?Ckq;b&Wy`sAd{3H8$TG2{T6SauXpxsh7*N=wlqN7h%6KrL;5U2W&0y$%vtNRV8d-M`pb*rB~Q#Y}Ni zO}5;^>^J#ZRF*AYGd##c4r_CVaYA{m|P`Y&q>Ha1_;8u*rx zfm^DR9Q4nu8x%N~2OF7zeH9j@6s-x>rH7>GCdL>tCjAPOHNi5{%uOu<^2M6sdLKC6 z(OF7p4ITb3jNuw#&o3nzW*9(|er`AYj?n*c6GI|CR({NjX$OCSL-YML6_G&tpN1)S z%CnQJE}&!PsdPPM3H6&aWIp?A>Urnu?zLa3Nl?W!KIoN4OuuelaNiLVoMr4!AbYqq zcRhmk!`v>b8NWV>No~)Oluk}doP+d*y=iBTu}uV3iBSMF{?N~D9b2C1o3ba)amNwI zzxycHQEi|iWpJ&3Wwsm6;ff_5Q^n_kxth^9(nYw(QS*qcE_;{0Fe?5q>ZQa6P-{ee z=1|Om^qc2oZ;XU>uG_aOy@tNrtK;72)E%%`OJ1!h*E&&_-&O-7BD|1C>k~TlX7T~& z?ju>AiG&(g`KW5rr%_2-v&P#g-Gd8`ToMDP<3)Qc{wMTy=J(kXt?v9$GCKXv|#en~Qt0Xa9e3~7UDa>C) zYeSk+qvcvSi(NiN5Z%dJ?7-(}>7E=iO%30S6UHj~bo7T%#^}i9>kT2I<3I@dgy~SL zZpu?!`WH%TyDgCW_x)x_CaVo!%dR+hiur$)kUi5Fi9ht;Q6K2MO66X*Rh9{9{sx^2 z2mPX9-;rmZp{Kyi>bf5@21~_2;y!|S~Zg<5=m!MIV?-$ti%A(AK02Pv6$*) zK$W~D!~7HnKUK&qz!Hx{H}p2v z3aIq+MlGj~z=TE`-($pwTN#Knb*RkRc|gM{p`Lx%->zeYitAak?pGzq3$p0?o!T4JsT1!ooHi;Hc>mCr1Yr% z1!@gvBIa^2Yc6cvSa_fUhbkhwW24j_WUo!(lG%H6mvuhgLAig2cs)fxx zD1YJrGKB1puNhsCBTHDrLvD4Sq50fZMUZ~g2v;ON4 zFLJxt1=|>c8ZRidOVvOzoU1{yYF6P;(QdpsE6XKPSU>h2XY}=Z1}HOt#eX&8v!EXj zuCVj3AE1%{;x_Vj8`Kt;W?Em8nQmaan@dkyTp3+FY#{4%^PpY~%f=;AW+IhFE)uIN zYOkVAlm1F4jW3BmRtHXdaemfGACkF$Dimkz-w2zD%B97~#$(^qFikD%-;ZCaAzM*@rN8#bsh^is{JZ-G+=TL= z(QH6$a>PqS$UfKh2l?M;J?`kF+R<>}o0CT$X+z;W+r8gpQ`Rjy)DNkmct$kQ42$(u zQIBeq<`n{#HRnrUB1LyQx<~Z2sMcE3Uyct45$t6?bxCKa zlAA8lE;p8oRXP-0r%Dqo$G?lJ&stnv0jOI!PFb@97@V?jqd_~%cNx>Z=uhA&pve>Dhy)u$D z=HT|sVo}&{Uw9zT-7`T`rkY# z$pntyP`SBbo`1|y|AjP8(}D!qL|nPu{NN|a`FxQmcY*2Wruaq;FjD?CrW8@(Wf&2H zXoEpv=S{N~N8*=MTVU72WZ3AUcGNl8Ef{CQ<_J@kB<^{n0-vd1T4iNhMBZlEyvV4z zpSD`aVtpm&WX$uCfOd6D4*({>DSMr-yqfb*HLLHCBk;%%AHn@&2`}>sxDa+ z;4tr*i+55VKI5d-gMUq|4N;g^dM!QL-NTo-eaVl;_fbjr2-gDpTGZ&g@&4$wmWL3b zTzYx(?0+g}vB0G$4%l3T(vys?1Qtb2w-Xa)E~Up}y!xx&agX4w!Oe6Wzezg4Q$;y6 zg)v$11==2^bdMx4DSe4g& z*87Csrab^0Sk_{l0g|5LjjL(JjJ)(Mcu$Z1#-^{4;tQ6tlaUsqVC;!g7+=h|)C+?N zf<<|FoA)eFW)f^bxb^1~SyCu8{VGH}`gTt%@vYxOUih-sq_3_}@87Op3-OTyAD1Ki zWgowAhDi=i{7uym*7@6dpgQ1q$--!)J);`68@@0ew#z_js82J9e=9!k{d~RXFrd?TPKqt66e8TT#bvSNz21%`4W} z7*ZWhZkZet%&B|7th-8IZ2arH?F$A4HzWVF2<^!zeVqVhPniUK)c(cVbwn!RU#9?a z^8ryk0r=M9)!{|?JI^j@s^K(SQ$W)VVY4SKLY!8aI7t<0H+tVY0xyGhu3{$FkKaiz zCVx?dFCaJL;!S+w7;#qS0!`BRK7AWrMc?AYYk8Ny;4W}Vq)sQkFH_~c_6v5+%kBLX zfH{rWU?R^MiB2usrLRcRfB+7@VUyb-D6CJ}N@SngB}HSC`iB{82=R9&-Ge6gsudW; zob&=^J<%-vhRcDX>*(4?)i<}lLGf|rZ@#O0Wezr(oJ?1D!l&%-yrQ+~U*^gxXV@@a ziaxOT*QoSQyh1CT7+ki$11k7_ul#>nfconZ*0Yw=&6aU$QuIp20u&S#mmp*V*zLm$ zYZ^qi!Rd~1vmqhw0d&@=J+cv~4U7Rr>u9)-hU{PK4$oku)u;Ihw1&km33C(AEC#fr8Q0?&bULlb*$ zW*Il$bN6u3-i52!=#RM#X)npj(mrP8^7TE);^D7j&)R(g{6((G9>h*lY zj9H{eq2?f;zajdXN?Jw+$pC1yW~_3<`a{fn)pj$J!gl2TXj5IfOSxUkMa;xa^!(DA zap^jUau~Is8r7PI1aq! z_n_BK`1g}%#ivW9wP|HYOD=6pK5bE#4o(QiZ-Ra7qF7 zp4XiM>jmToxA}Du0%l< zlr9rWQtx;f@g?xCi+eEDvv-gG{d6w;n8~fE7<4aZnPE}$3L-Vh#U$Ay;^v*&glXvS zZI)xRV|)!tNK#AZxOL60t9!uXi4tmf9&KiLSx~?CyfoMoF!UK$n%&%aBc(#yDlDe7 zc%TJE5YBmDDQV#MdM4!$|H?ZSJTO66=m`BvP2rn;nJHhM)OfH_;=krLA%ogL6+h)+FzaDe%s<^moKR%5S*!= zuBDZWLauIpGy&N&VYp|Yl`@~3{&eV+c|QCfBO$iYFpUCV%*YxdPj}I&Ux^65K--c4 z$S=AX!u6lpOD)%eV3phcNIhEi{3b{wE9+}Q28WD%d{e)ih>0cGpoFMOn1cVr+@GQJ zU4_he_;!0-8B9D7NVcf~U{KtF={p09d#K|Z9a4CP34SF$pux#v5!@Ae0i3|$0aW(B zK`$TYPmY=hy?5YYAr~g=!*ND8+0|UnG%S5jkZn)Zplb6_-AR`Nx+0TluIiTO<(@+9 zMgf%)!|RNDDWjdchoAu2(L$EzPxb#I=K!h!`b%Bd$gKpvMHEzSt3FadO-i2@#&~_}56tjiXgyF`qoEV5_RAWHtD{9e0d_hO&mB9oZ2kRzZ*CwM z>j4DLMRc`HfcS`m#sMo4vnx%jNnD}%4b8zoK^lg|JF(HEsaD*<3uN*YM9?zXt5|}u zk}06YgGf!@B9J~_QGrfT?|d5AV-%fJDu$&5vv|m;UX!r!HIWufzsET0jQ9H9^u}&1 zl1s*DV~U~JfaJ0&_PJf^7e9v9SVJvt1cKwk$`hFJ&3(7?2ptNZB;A!UkSCzC9MyG6 zSlGxDggMH+3CI+y;z#H>$4YZ2ZxdzHZSeN9hMJ%`ZV4x#9dA^9Br^;jGXBA{1=sXd zwa$PDSMOQmYo5rxzB*QjdH(yPFwVexOe2b;mA!LSsZ+z6YD0}>Qfdh!>h~l{;FtDN zq)$s=l5=!9=}sKW)Zi+yf6u6~C3h8js5~m|0leO>!@2fcEt=APBsP+7#7Kp>Op0UcckQX=tpN3BJXY9gm?>X*r0h%JD&d5xC#DBu z)+ssXjfUqreNsDz6RFNaY2^D?c>0)X>snBENZ!gU-@xl>9eXQW_L%;UUJGH>7!-et zZlCK!h%;1Ss;)yw9Rtvi(P?%ce|KF%f}?yko}nC z=}S@~2^ z5kAszHHJE-CILNY3WURzuOr09+fmdJJBrn#eyDMc`WP>Y0P$LRG?z* z9f_X8Nck~Mi9iF<%8jvO{BVy%1syGx^AHHJo2OV=$|C2Yh)JYHa3#t9=HuV#Ln^-l zDuh*_flb^gWv8EH(OFP1nNzx7Y+bO*nlDtKh;Pm!bB#+J+wj3cDB&SkYbKmTF)qD>HW}_%#+FKgH@Xv3!tqoNd983c9Bk^CpvTJDEkq%VpcK zms6vq2qAw9$5>+hTY`OAJ4yd}UuWI_kG}_zg9)Vdk9jbN7xPd6DPOI3e~!Zz-li$V z9JEHkTC;YWBKeYiul<1vQzbQDi{^eEMvB=ax&?i-jZ}w^MjwqIlKIGo>o=F3iymJ0 zJa#~^LliuL7QM1GP5s;iKXZ^i8?s_Na{B>F6wbI4YmQku(?<=$_ir zwk#b-!%`DQP!4emR zTb^}=MjMexhwaSAS{jbK7MVFVWY)nbppsSo&v7b6=#c=-TwH+@7-x$$3qhCgrh*R)MjT! zU4s$&oaO&G7rSrM54J5Ib+5B~)OywS$vWE2Yv*RGde3|LUN6u@fOt5Mnm-_fP}Kx- zIM(!KL)|Tsgab7hwQ~$Gsj;3nb0(RpTGRi$$+8qNCRl5zKF;UH=X-9-q`SvU-KmDN%U?k7MIbd>S9S8qeEn|)9-!# zm9o;$5hzM#K?Qs%nGEZ<^}O=ECpT5GNN5uC8>72__491l?|9L=n0|LM|27YUb@wI{ zLS9eUFbrEk?7EF=YJ4zTSIP-Xb#Wv%??%_xJUv`;3piySAztX!0#-~_T-4s^e;N4& z+(SB*~7Piky)GYJe>la?e`q+05q2J`$@Bg%j21=sN2~oguF&8%B|Lc$7F|lem1%;c5lJ! zrz2}NrenXxPQilC)SgvdMMC3D>(tKa2QRE7(+9d{*Ut*+EE=d8%9yZVdtdfu<`n}l zV=49VJ6OFpd0{Wz1PR~IBhwD|7cWl7{FEYR>?gTb{`n-FuR-GiE zyJp`nDEo>$;{T1fXZiv1q*AHaK@!Q239jc)R3Rag$dO(Z$X-;ZW&%1#9g*c$MM$|f@mDAKI{PNK7mZ@#1UuGc_J85sv zKR!_8=EF45t`=R)JCn;u#tiK2=x#>z<`Hat%O43;2xeM=qOokydrgH14kSgvQ^+Dr zIn))UTVhhhO#lHrp8d@X^KTWmt6tcI&6z?ITLuMZzx5@kXgm>$iHD_aKW^LpdLx^& ztB-}P&5vfIZTS(&iYg>XUy^2xcYc>6Pz*j;jPw`B-+$qHolN{hm|pm!yGf^A^xvKW z6<7RiIy);d9XeywE^Gb^fhw*>mV94>w^4)bn^!0W_y|8-n{{3hLVvltlWSn7r&w#t z5dX_9KJvw%+sVGM2!yD3~h6BXV#bI5Nr_;22&wVI@wvf{B4>rKB<}66X zx~OC(01IcLq^Z#-p>C@3yw#7iOi7k+<5RjHme)NW^KpgBgY9Mm%MU~TI=R# z{YhUwPxM;|HDd2GKpny7-dA}N!7abT*Q&f+h~ecUtpJYuWelN4{~QFZ)^DOaD&wRwW+`7t&M{kh2OA(Rvt`24U7YqJ(@`!#43PoG^0(yI@`KgX zu6?2;0oNHE_v8-~zs{3L4=43+vXr8~CnEuD4`|_{PMApS7VcXD%s6iTfuM13kH(t& zpia_73-;~3Ak_n4d}Nwk$b9~fxA#wTdDr{}JEZ!l(aJ1M5~{P^$Oo^x^xxm z=5YIA8L)w3r58(p{sk5xi@b}0%VzDW@q5c`$xsU{s3G_HpZG{6a+Y13rw^ii85dCQP zZ$29Ax!cfC{exCHt)?g0{La?L`I`=ZP-z3~!=W{!pILs%l(@B^5k*h!pVI`jF8>J- zjD2n>)Mn8GzU>R?;zQ85vQm)0_%%hUb18yO_xfVnQPrSUTPp8p%+`f7_C*7rMLr0T zz!Dil$rd4J&rnKHsG?L=M=)qVoL*niz3e6ZpJI{YU(qiSS za^|RXU5k6-X$iJGQNiR4%67UGtxuK4#JY6is_F0-j*arg*U$=NYlX7Uf!ud%XhG!)v-}ya(XRpzUm`q_og*8whHd_iX+Jy zXTV%>Kzzb2V>abdrTj&R6TyH8lA+2Lq^fA~*{3(s~vr9)-a_85HEb~;0{5YhFa;H+x0sE;OO zNH?Y~Yx@bUN@i`pXSz*nn$YRuhU=}FVd!jGt`KYfl(6nz8yty}Uf=ccy-~3gy{^|S z&E>B;PM*J+`JVJ{yes-}+cif2_83tV6Z`1f12#g(i_a_ zeIOlu3)XKs`J5S!tdZvucl*$3zUtOfcF_Rx90K$_^UO15uNAqiSXo5x;{JpOi2VaW$|M$ zZtsD2VH{6pZnnYd|3lbU$3@w$-7>=fgR~%Bii#**QbUPgfuPbU-8I4hLkytOr6|%U z3P^XyAe}>ZDKX^GL&JI4``h1s-@VW8oImFebl|z~=UUfV>snVz;OcT$v!TfTgZcy57%;rgKmp|VE&%FDJI8@Am}<~9a+IsJc0L$){AslS z5Z_DskJ&5lg1?00`Qx8Ln|EyAwh21cDuf`?~**Nf|&{KVEn40+9%MyX^Z+F6Vi`1N zic!VWo`<`M-)&^8N-ep)(%1NhQs_d}$;t5#tz5db*j(PdwZ}NN8Oe_9#@pC$!O#13 z#6uD*NZOMQj!BPc{d0E!V_|s8k9J}^?~Q{8F>s-%A1=MCU>V14%F5LNGX2?_H-WN7 zZl5%DJum5`&sT|{L%|oRfc73YN`vA$S2G8;V|-LfZ7bTV`BW;Qa6Rq=_4ma8sB@?s zd5A~LYXp5(3_Y-4?lanj^;=dQzoZu7^*wp>iPJ-0(kIHOGC+Z+enOU{1(x(G?0{P5 zDI?hLg*O5btxAb})|LR3j2!^t5P+IXz_a2w{>1D?p?pea?PpwKev@#&Q?0W%&vQG1 zx86RTcHZ@n>z~9_)~tmVo#lG84E$aLmA}#fGRCvp3${`Q{)xk!&)i>1CLV6@oPL(v z0M1nHu+tMU(_t7OWdVEGV$OP}MH$k89Cm~7fKM6!C2=jo!8#_*8QE_n5 zj>$_vV#9}%bj^G1cru7j#f&^aesfm9%m5zhQjotB{am=bd4E!|_YUW$Vtr4yxAPXV z9+D3+9t7wQd{?0zWnsBpK(*HVbtNx_7G&3Xnwdf$(x45G<+4^Oz3&BR&~tivO#ySA zI-P(OWNWTO)ajkg@g6MRMZe$`9ImL}{TTk~+|0TBx} zjhFjvSnuXx;Pv16_ATDVDq{~y9l(mfJ{rA-#iG{AePY~l<6$j8p2;1LXaim*ODD)w z%qVTEQq4D5X2#|p9iWf)NgchuIld#)e)7s(ZKGCWph-G?Ct(ovODn=!2%7TssbCvK z#w#fLAIb6t{_c$&+f-&;G9OH$#kN#RftUr_^DmMKfAjGdir%FL8PQPZL&RefXzU#T zvKzt6X%4sqD)|iuEk9ike={49Z6j%7g9gFlF7n7L(mkI7(*r4hr5-C+LG;zy!-ha? zz-?GTw(SF8BxP{^2!%PJU4UFy_~T`aK>`it7Kw3BLa<7sGsa zv4X@Q{Fo1!Ed~hC!@vw`-KgAAZNqUBoAdftu9}$y8PDR8ow(ow+O0~Zw?fJP7thS! zR@`KPnSp^;HWyi0dOsU#P~;oHOq0RVPBYuaai{BGkt!arO0cG2{abJBx^iBf&?gjZ z+GhS9J`+U{$J=g5`eCt$X*&_C%m>&3A^_=&Q+Gv{B*BFRro+zBh21aZyO4#zZxa{*b*5zX5*m{mTbFNcQk*$*Xxi6bOC;cIGi9j$SEE$;++r><6F0b%4P+ z?S8$W0yWh29SClv^M~5&kkb>z-^mOT-xOJ0Uoz{9k9%z zEn*IB_Q&+C(}-mG#3YTL#(3jVCZ)tABA#_BL(_FsXJkNNg+SS@i{BGmuc!Be5CP;* z>y+`7PG>JtJTM+-n7~sTSTQ|2y}xv4g#o^zt=SC=8$^c z=|aQ3-df#<$3Id6?2uUQpQ%_{n|Bu#rX6AtDPf68F*lIHi#7}Pp_2d875rl5 zR_!O=2u%q)I=a=zwOP5Z$LQI&OwSnMTfhT~idp(#c8RsW5d?|;v4cqb(Ij*FUIsna zktVqm!bnl!N&;nUn0bsQ`A#F-qH#l$alldoqlD{1 z`-s5ZNM^BYBDe3xu}c?OcfUqgYS9$~UzDDj0=tLy^(F^>2B0#f;Dg{#Z)05KUqdRJ zu^*$w$Z%Ol9NUT9JmW0>-Wo~YoZCLgmb#PTEmj^9@KLSml08sDenas&Idoc3@M_so z4j55pG;QzH6RG6_r*TZDu;!7PXY`X5>4-L&kyW*&2c;#$qK5_8*M9;lQZXCe6Yaw)TH?EmYJ$}42qgn-O5~>gPGtC7 z{yLRu0Q~ARCBnC&An3LyUodS1mjs!w190_&!u`e_Zy zWIztX%^X$Ty9v9T^#{U5wKpzKHg{zuE)vPk=k!L=FAVIwI6%cRiLiDK9h|b>Jqng#chLp257S!C zTo%0gS19=?z#Rwio&x;!HFGi6PJHqoF3bN|91W)G?~T{-3lQ0s4miuETnXiKs!Mir z6atu5sc%s8feE?vCy5Y4rKKo4z*Y2X?%R2~F<>QqyY?{6*?T6qo_(t)ka)*nK;9cD zqJ*56-F7a9FuJq$03EJYo|Gqzt6{9|BUci)^trAsBGbhdkh`EQu9h7ZtlA z8Q%PKDVUh)QytaDNZQvFoL-6!^}r(xPfyt9>w-ImbkB!G23Twx6JjKJjByQ?(GDn{>n<9vaQvxx`q^<#+t^HTp8I_(Pr=5gAtj>U9yqPTqdfO(tq;0Eeo z<3UEUEkG{#lK@c-lMlbKt1NFK17VNNhp3g<16ok~t?Q1=sBZ9fj4}AqY~4v6Nd;APh7BI{=@4YWSRa@dXtxJ!u*hLq%u{qw_r7fSbJPWnh}(d97~I@Q1P z69{g65fQr{yY+OOUD6s8=sr;LgE?zoW#V_^qsLAZjCUNu_N2XTgB8CEF}|e8?|>_I z{dnQjJOk_(-aGzG)W`<}ojlIjw%&l(ShJCSjs=iCc+LMtl|T&Rwv0j#S6%!8oA-u- zUAnx|4h1%Ly8<8hV$+6Xs%U{F>QhB`3iHdW>w z>IEJ>W>kaF(J?i_pV-dow|^l~%kj7JoV(fSOfh7=&qhfyU-nJG=ZSpr2Q4jC6?tjq zwBA4pmlM%19Dt3V*F`6D__?)FfpS*lomp6Fc(wHDR@3X#!)@EQPW4BYI(B(w^ixjY zUfVNjrzZ##-1<-P@146LZ571)A?301`g(Oc2Y~QBZuSK8coLY^Du9tCXeWfN`n%q{ zLOy@gIvQ^MylN9@A8ct0bIJhU8ke&?l_L{q;jy$And#6DxtUIYsLJ*5+WUJ%Q#1~{ zu1fg27d}_*^#jXYeA>CG+;i3nWvZTqqO8pIZVQjuU6w1haGlq zOT}9p6ulAd+WYBmkiJjtA1fNyN7Vp%r$ROHC*hhpA#)f?;BC-#6Y{SP6W8{GQYz%l zRM%tiWrVm#zVikt7X~8UdH(&CP6w)^{wM?Nomh(0?YT(NR>JFlBknC{^K$Zqc+v1PccE{YQfd1BFLWw zLEVCbhqhU<+@IxSo>NW9aX*^6mUs!cUKZxTYK?*F(4iYk)8X8jj0 z^q(l6UXn<(kc*ian8t5)L8qU-E++PfC6Ioa+d_(aG$%@S!=mv9FzKj7!R1`TEO_Z! zNqfZ{t41hk8{K%vM5EVEVMT`E*5X$z8Af~H4jA_fD+9E)9B)yd<&A}nOHWtGfbJ$J z*Cro!oIV`fO+sa_M`-bJdvWW@&*X~yrPR+CtmrI%YR}7gQCql5TKQF+^*E2ir!>9% zDB|UCln#K$^BV1dbp?9ju1Kz;&|gqMzcv77euK|VQs!=fVuj@-Mf(6Ajqfm=$fNAd z4!W-Roaa6JY3UoSEqo~yRgn?3mBNuXI8hgbhYuMWK|Ew!Q_X(EgIF0R4j8HkZJ1;K z_RudQkHg-9BQE!mQa3)OmjB~VO-g+gK;ev3TJKkpY4=!P5^kgiD=)Pa0TWLoE=6^%0wMGM zfmE_O(;Sg<=N=Nc%6X|x0f5ycng8SNQPzFdHmdjh0G&QIzy0Sd&D@G&EGj3mFI!8s zpx-9_GfOeX2BqW_^$`|3vbPh`bQ88wSND@1=#<5u)+ym_sc&QIFg?P0&omty z249DkX92K0iD3f#jkAo>Sq;8VJEi5aJdVt@F{L-v^QS&0jwERj0xa5#b2~A^n$#_$ zrN(=t!5v7_4W}4*U^$nP?My&m+)~+GsHiNsqopV&h1a2Q#L1QakGqcB#=c5?su=bU zFkF%Py0#vJsn$#GJYUMxT}!*ao_JHZ9qKqyCX8R;oaYC5pgn{$jy@#glE!}%MD!Ztd8#Z^z=f$8UHej79e z9SM6x-Td5P3cuneoes*#zCrPf%~ME1W~#zYd`*V&60KIlpN{+&mgwdr9Z`p zP-58qSwa)|DKLuH?@}CvJZgLW7Fe6Q9_Dkk;E^%#Er3MdrzcD{k$7F_g%{l(usH9q z!xw}N_NI0p;o;Y~rQp}6wwpyFG4oD;JsVU+&Bp6DMmDDsF~@{a)ahUShT zZKavH(M}kFDKIPEaJH_pzCxvwYxd^Ob{jpD2!IM1yq>o|a2>8Cc zjw9cN3$Kpm_5ZxR$))~M_vnX}?eEYRIZ(jPCbxk1D!fjr+H58HD7>kX_b>yPtjqm4 z34}_SpTbhDWhQd0@yBZgO~CLm)pOYXtD*wGIYJIp7k^EzP}I{;tyTF%5C=Rt7|VFgQ&?QD z5=0@kjwAKDpeZC}bw3%PGwb%nfSGwg0Yu)Q4~2mMSbhmcVr&OkUnds2+b}N7GNTjH zPrM$kN=@XX!!loG#xO_h`ON5xwP&w4%*gU%i0DmXymx!EW)2u%q(3sKlj7h1aCE|b z7Nd7w^Yq6-?uY*w4(GMKLcLsce@kVLv@xO#DA$qy+#FLk{JDzZ)GXMBxS}wZ99y3@=z>o+k1a8<+bNMz)nSf833N z60PBUtEU4Lz%C;K_6}2=$#nx*q}T`0wLufNWr0z)hH`@MGO0IYFYTv1K~E%GH*OVL z^T-1I-e=ChvRy!WBJ$4-arl|B4I>MEB=*OjmTUWivjPQF@1yo5;glK}pv|Xle8&HOXmiw06tR1A5YQr? z1&HuD4{K^)ySOXjGgcuATxF%XtG~jCYpYUikQ8)0;LZ6h0jh-H_Yc$Fur@FD*z^FI z7kr!s%}!Uxfm>`c1iqx)j2qd0oF{0}5ZpT2JW`xbK-J42k9^2*I)nkS=N?-?a9QyA z{T^f~OTkr0(TG|xA-0qNRowCDLS{LmqQ%4KE|`3wDyV=9Ez7C`*XL}84r$?)$;KX) z-w>omR{m%p`Z%32|eM^#+JQ zULnEMte-8~D^BuVtMd>h4@$)BVc_!5YhP@ z*{FJv^P-Zfk~07FrS(?5P`x7Owv{Qf-rBs)d#h*W6CPjeoIJaV>F8H-+ zu6|v12c%k5vw9C%IW`BW!N9Nz!pqWQrl43Q48nQ32Sd?4eJB6*CJs9l#$9Pv+a!pU z2*~y7X`6Xat?f23{Am3r&ilruRKZkPrnLVFjUB<+Gp%MW^n9$k&u!olon^@r`ISnX zo$*+b+@DAw_nVps-cmt|Pt3JYC7M_0`zPK0dX&gF)_*J% zpwlW4`>-bnw2c18Go`{x@>He5$AsEO%R4$$Ebt4)${%elD2Yw_%Jidd6upDth}?q* z(pf3k0a5QiLgaQ+@`t8;Lg-#qj(7+9trf}5z3wszn`>sSe)rDO^C{;Zxa%^`Y518@ zsv8SMH!=EYXYx+<@0m811Mc<#80P)s#O#ck@wTNwht^Y0>P5>GZFsHJrcQGHxoG_< z8^oj5Th&72e@^7zj_1EV_>VsJ2NtfNBXRi;-mafe;=WvuF2|4L=@%#&fY_NNsYUrF zOgMvRb}Wpa_bHY1pxH#|D8}E6=@Jp=$Xi33+nP6|48^AU@$n`mc+a=TZbc6ZZ-V0- zUI#-HEM%pq$v5iy2jPYO($xajJPPE1SD4dZ)Mxe7xTBy8lb z(S@ybSbH{Wi*jTmyCEZcRRp* z|J%Ejt^hB*Dka&yYf%I1Z8XAu1w#5O#Iq1F9y#}MVJ;=C=3zo ztTrN^iUHlw^qN50d(%Su*LmlZ8ul(uM>7k~4=&nQs<3`5k^Se!-kTf}b=ZpYVl(G9 z18(TCs88h1P!B26FF;zWPk3{l@>u&QUI7k0UE6K-GV446Gcj&nz;B#96Gw`8!JcJ;5Tp$D?8D)D^-=$g@0;C5yS-u{V;84f$pQBZFJYZly=QII-G!CwS(LVWXX345 z8hVgLdfL<7FTn-8>ll3=Bv|ErVJ|%zYgxxfE^M^3ktTP@ChBf^#D&R>=Hhi7`Z1Qv zR^hAmibyAd)CfPY%(t*$**NfvIfWOTitHO}m(y8q{UGPon4?`4dnJPJb5T?;uHDu8 z%lnvBd+yGh3*is5xk%y(5tA{9cIln_)W0amyRV6!;9VsQUx~NA=2V7+bpa;1t8h*Z zv(Z!69(DYEXB85AVfkkjVIy8s#>dOK8_yfIS};Bikq+S7T3g-uDW(o%%ybXB?`LZq zcoHH?t*EDZN1Brl7xy=E^CwZr{YxPqQh$-1?(zNk^k*#te^WoMCEOwWXz6Ijl!EW3KR@(cd1Im?;tat_z-X^WTh96(^_oNva|mNG)hO1`W`ZNe_DO(g z^;H#AK1l*)wjADA=$(lIGHr0yg+hV8ngtQc>`|~L>(w+#Vy}1d-ow~95MoMx#rO9| z0S%XQ9T_T`2~7}Vj`wv&3*s78^=iiF#B{B7aG6290-KzwpUU4-!;KKMQ$-2a^mQzT z7#b&UJS!n2u7*Koy2U;@XiJ(c85zvOzkyk_O4hT1td%bFNgz0WYF~m35sqJvr(|rG zXE8Gz8=WS{xCqYu?y--AMWp$=1E-ofd(PpDU4f^bOx;WM1=jm6uBcq>A)hzwq@IWs5KnwPGjot^zXF3h zrnu&P8=oC!P1qiWtNe}}A;g=a{3WgMb*Y+Jet$|dpBGoHpyGz(CzB(XmV&(zv(oY4A1JkZ3=xI zFWPMQrq}b!%A|g8F0Bnd7iD=gQD#>VAUAdRNBla9Yv+r&a+%${Z8{76QaGOXU>QOPF!wwVPD_hhvpyGI(;r zqX~j$R^d_5PjP3JQ5UjLN_w6$8oRbig{V5NGyzC@x0J=0+1`D^A*r+p;OW)*#^8)5 z@y0nd`6|V1Bm7{EC04FVt`euxm9>q!EAJUL;tOb@v3aoB)FME-@rtA_99ruf8NU}` zJKf;O&ly4Usv^{H2f3PlH|}#Azqb8s+qixCZJpa6)0Z>XCWZ~Pce|&e%B9iwvTM|w zAP6PuZd)ViFGZm}W<{7U^=4n&)|nD8hLC3#yUccLh>P=CPZvy$@7Xa?X-%ika3a;# zzRuUD|8sBu1+AUcK~SL2`CchNR`7sYu_6R*ENKa8l?1yK!2q@4#BLTrAaug3Xs~`l zUb#MJ3{7i7X-}1JO!_B%%Lh__j^6IfF*Djj8$+rS6r+nsUs$B760l*a@?O6&oqH{` zM5;VA{KnT3Kq|0suY?X`?R0X{KC}#*j3b$yIqH$dOZuC1?_In%{^bP#RutDua8b+i z4tLI8ocLYr0UOS@_IBkib~6i3stcrjc1QhIR#H9pjH|pVxe{(ccjDIQKx#D!p}vJ_ zW6)B?vfB6_7K!YheA3l8D{C1lb(jV9A5ktE`J4cMRXE3n51nlI&bn8T)f)rs*?kZ{ zpD{jR#N04L<||yN&1@H0O>4g@n(~~SU})qyBA;9#S2Xl!*T`~B?${2&25B@0|;uoD($S-sptyS{#}ZST&&s@Y9?Pj%AqZnYKPcFhB%iw`n!j^>+) zvgKWx;nf(V5ctK?Q6q}6e_Hf_eSoczxg=xRN@U53ydne#ISNUoa54L$wMe?C4m11N&#+`8Hx9Z^0r7j<6kxx3U7r_TbI(hk$JU;YK4 zQbmIG(dmKZf`=#@|YPQ)|CafH=>u$YF!RZQ_T#am}W!d;)+oZtN{QA!XsX)wYZ z6_5SJCT(rD$I$Y*tTVbLsYK@Rk8|#&`+T^rs}a+ z)hIlt+UT#8pYqAD2(BpIF(XG1x|d>48Iq@!iN%#CJspUgr@-ufmvxp?k=}K=uaH!j!OZp1r@FY; z;drCBn&SuLQ~m3V)~mvEk@ei*BF|^E(0dg`WI82S>R87BFHQ8lgOC2NAF@fKzpj~I z)B$Yq^YBJ@ANyD}?T&uFAk$J3ZcCC3csS}Zx`(=Lb{vo7+C-d*+2H=aL9z1T~Jm+XktxAoH8-UQk+ z@Sv91rU(Uyeq&c9rPfgUC5QX2&_PgY$uck8p{5R#T(d+Hpf8+Ow%%qA2X|GeX&Sto z6%wB=PwgNdimQ8Iet5T&~tKSDCe^uA>`94|%-TmO~KbcP`EE>+XrSn(-)ZurfP;J@FIvuZJ?F zg$6~O&vMNvCw5T5_WItz{A4GT^`w_Iwp6~yUIO#~4?FaK44+I_=~9^K|oN zxRa?kF2*PAqU$J|wf!Y)WB`RYHB64kM8i{-^ zNQFHh%$}4}F&#}A1≶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 z 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

i_X4#faOp8|d>kj9Np?-| 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 W*xbU-L=Q&i+>|w4`X&&@uhN8j4`h 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 literal 0 HcmV?d00001 From 0c2ac12e893505adc49c30cd1ed2cb0235e86df7 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 24 Jul 2023 16:52:25 -0700 Subject: [PATCH 269/703] Update sl-partner-integration-guide.md More changes to best practices --- .../sl-partner-integration-guide.md | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index 968afc1947c..21eb4bb660f 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -62,9 +62,9 @@ Users shouldn't generally be allowed to modify aggregations unless they are perf **Time series alignment and using metric_time**
Make sure users view metrics across the correct time series. When displaying metric graphs, using a non-default time aggregation dimension might lead to misleading interpretations. While users can still group by other time dimensions, they should be careful not to create trend lines with incorrect time axes. -When looking at one or multiple metrics, users should use `metric_time` as the main time dimension to guarantee they are looking at the right time series for the metric(s). As such, when building an application, we recommend exposing `metric_time` as a special time dimension on its own. This dimension is always going to align with all metrics and be common across them. Other time dimensions can still be looked at and grouped by, but having a clear delineation between the `metric_time` dimension and the rest is clarifying as a way to separate out the primary one. +When looking at one or multiple metrics, users should use `metric_time` as the main time dimension to guarantee they are looking at the right time series for the metric(s). As such, when building an application, we recommend exposing `metric_time` as a separate, "special" time dimension on its own. This dimension is always going to align with all metrics and be common across them. Other time dimensions can still be looked at and grouped by, but having a clear delineation between the `metric_time` dimension and the rest is clarifying as a way to separate out the primary one so that people do not confuse how metrics should be plotted. -Also, when a user requests a time granularity change for the main time series, the query should use `metric_time`. Note that when looking at a single metric, the primary time dimension and `metric_time` are equivalent. +Also, when a user requests a time granularity change for the main time series, the query that your application runs should use `metric_time` as this will always give you the correct slice. Note that when looking at a single metric, the primary time dimension and `metric_time` are equivalent. **Units consistency**
If units are supported, it's vital to avoid plotting data incorrectly with different units. Ensuring consistency in unit representation will prevent confusion and misinterpretation of the data. @@ -72,18 +72,16 @@ If units are supported, it's vital to avoid plotting data incorrectly with diffe **Traceability of metric and dimension changes**
When users change names of metrics and dimensions for reports, it's crucial to have a traceability mechanism in place to link back to the original source metric name. -### Discoverability - -1. Consider treating [metrics](/docs/build/metrics-overview) as first-class objects rather than measures. Metrics offer a higher-level and more contextual way to interact with data, reducing the burden on end-users to manually aggregate data. -2. Easy metric interactions: Provide users with an intuitive approach to: +### Discoverability +- Consider treating [metrics](/docs/build/metrics-overview) as first-class objects rather than measures. Metrics offer a higher-level and more contextual way to interact with data, reducing the burden on end-users to manually aggregate data. +- Easy metric interactions: Provide users with an intuitive approach to: * Search for Metrics — Users should be able to easily search and find relevant metrics. Metrics can serve as the starting point to lead users into exploring dimensions. * Search for Dimensions — Users should be able to query metrics with associated dimensions, allowing them to gain deeper insights into the data. * Filter by Dimension Values — Expose and enable users to filter metrics based on dimension values, encouraging data analysis and exploration. * Filter additional metadata — Allow users to filter metrics based on other available metadata, such as metric type and default time granularity. - -3. Suggested Metrics: Ideally, the system should intelligently suggest relevant metrics to users based on their team's activities. This approach encourages user exposure, facilitates learning, and supports collaboration among team members. +- Suggested Metrics: Ideally, the system should intelligently suggest relevant metrics to users based on their team's activities. This approach encourages user exposure, facilitates learning, and supports collaboration among team members. By implementing these recommendations, the data interaction process becomes more user-friendly, empowering users to gain valuable insights without the need for extensive data manipulation. @@ -103,6 +101,18 @@ The goal is to organize metrics into a hierarchy in our configurations, instead This hierarchy helps you organize metrics based on a specific criteria, such as business unit or team. By providing this structured organization, users can find and navigate metrics more efficiently, enhancing their overall data analysis experience. +### Query flexibility + +Allow users to query either one metric alone without dimensions or multiple metrics with dimensions + +- Allow toggling between metrics / dimensions seamlessly +- Be clear on exposing what dimensions are queryable with what metrics and hide things that don’t apply, and vice versa. +- Only expose time granularities (monthly, daily, yearly) that match the available metrics. + * For example, if a dbt model and its resulting semantic model have a monthly granularity, make sure querying data with a 'daily' granularity isn't available to the user. Our APIs have functionality that will help you surface the correct granularities +- We recommend that time granularity is treated as a general time dimension-specific concept and that it can be applied to more than just the primary aggregation (or `metric_time`). Consider a situation where a user wants to look at `sales` over time by `customer signup month`; in this situation, having the ability able to apply granularities to both time dimensions is crucial. Note: initially, as a starting point, it makes sense to only support `metric_time` or the primary time dimension, but we recommend expanding that as your solution evolves. +- You should allow users to filter on date ranges and expose a calendar and nice presets for filtering these + * For example: last 30 days, last week etc. + ### Context and interpretation For better analysis, it's best to have the context of the metrics close to where the analysis is happening. We recommend the following: @@ -114,20 +124,10 @@ For better analysis, it's best to have the context of the metrics close to where * Include lineage information to understand the metric's origin. - Allow for creating other metadata that’s useful for the metric. We can provide some of this information in our configuration (Display name, Default Granularity for View, Default Time range), but there may be other metadata that your tool wants to provide to make the metric richer. -### Query flexibility - -Allow users to query either one metric alone without dimensions or multiple metrics with dimensions - -- Allow toggling between metrics / dimensions seamlessly -- Be clear on exposing what dimensions are queryable with what metrics and hide things that don’t apply, and vice versa. -- Include Presets for filtering date ranges and calendar for filtering time dimensions - * For example, last 30 days, last week etc. -- Only expose time granularities (monthly, daily, yearly) that match the available metrics. - * For example, if a dbt model and its resulting semantic model have a monthly granularity, make sure querying data with a 'daily' granularity" isn't available to the user. -- We recommend that granularity is a dimension-specific concept and can be applied to more than just the primary aggregation or `metric_time`. Initially, as a starting point, it makes sense to only support `metric_time` or the primary time dimension, but we recommend expanding that as the solution evolves. - ### Example stages of an integration +These are recommendations on how to evolve a Semantic Layer integration and not a strict runbook. + **Stage 1 - The basic** * Supporting and using the new [JDBC](/docs/dbt-cloud-apis/sl-jdbc) is the first step. Refer to the [dbt Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) for more technical details. From 099d2b923445cc863eb9b305acc487f1c0e021e6 Mon Sep 17 00:00:00 2001 From: rpourzand Date: Mon, 24 Jul 2023 16:57:58 -0700 Subject: [PATCH 270/703] Update sl-partner-integration-guide.md A couple more updates! --- .../guides/dbt-ecosystem/sl-partner-integration-guide.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md index 21eb4bb660f..b431091ffe6 100644 --- a/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md +++ b/website/docs/guides/dbt-ecosystem/sl-partner-integration-guide.md @@ -61,8 +61,10 @@ Users shouldn't generally be allowed to modify aggregations unless they are perf **Time series alignment and using metric_time**
Make sure users view metrics across the correct time series. When displaying metric graphs, using a non-default time aggregation dimension might lead to misleading interpretations. While users can still group by other time dimensions, they should be careful not to create trend lines with incorrect time axes. - -When looking at one or multiple metrics, users should use `metric_time` as the main time dimension to guarantee they are looking at the right time series for the metric(s). As such, when building an application, we recommend exposing `metric_time` as a separate, "special" time dimension on its own. This dimension is always going to align with all metrics and be common across them. Other time dimensions can still be looked at and grouped by, but having a clear delineation between the `metric_time` dimension and the rest is clarifying as a way to separate out the primary one so that people do not confuse how metrics should be plotted. + +When looking at one or multiple metrics, users should use `metric_time` as the main time dimension to guarantee they are looking at the right time series for the metric(s). + +As such, when building an application, we recommend exposing `metric_time` as a separate, "special" time dimension on its own. This dimension is always going to align with all metrics and be common across them. Other time dimensions can still be looked at and grouped by, but having a clear delineation between the `metric_time` dimension and the other time dimensions is clarifying so that people do not confuse how metrics should be plotted. Also, when a user requests a time granularity change for the main time series, the query that your application runs should use `metric_time` as this will always give you the correct slice. Note that when looking at a single metric, the primary time dimension and `metric_time` are equivalent. @@ -110,7 +112,7 @@ Allow users to query either one metric alone without dimensions or multiple metr - Only expose time granularities (monthly, daily, yearly) that match the available metrics. * For example, if a dbt model and its resulting semantic model have a monthly granularity, make sure querying data with a 'daily' granularity isn't available to the user. Our APIs have functionality that will help you surface the correct granularities - We recommend that time granularity is treated as a general time dimension-specific concept and that it can be applied to more than just the primary aggregation (or `metric_time`). Consider a situation where a user wants to look at `sales` over time by `customer signup month`; in this situation, having the ability able to apply granularities to both time dimensions is crucial. Note: initially, as a starting point, it makes sense to only support `metric_time` or the primary time dimension, but we recommend expanding that as your solution evolves. -- You should allow users to filter on date ranges and expose a calendar and nice presets for filtering these +- You should allow users to filter on date ranges and expose a calendar and nice presets for filtering these. * For example: last 30 days, last week etc. ### Context and interpretation From e47fc4ee074fa42ae83404993354f7aeff699957 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Mon, 24 Jul 2023 19:04:52 -0700 Subject: [PATCH 271/703] update getting started guide --- website/docs/docs/build/about-metricflow.md | 185 ++-- website/docs/docs/build/cumulative-metrics.md | 114 ++- website/docs/docs/build/derived-metrics.md | 63 +- .../docs/docs/build/metricflow-time-spine.md | 12 +- website/docs/docs/build/ratio-metrics.md | 50 +- website/docs/docs/build/simple.md | 35 +- website/docs/docs/build/sl-getting-started.md | 134 ++- .../docs/docs/dbt-cloud-apis/sl-manifest.md | 866 +----------------- 8 files changed, 405 insertions(+), 1054 deletions(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index 67915af7f0a..eabf3b43fc2 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -70,23 +70,19 @@ MetricFlow supports different metric types: In the upcoming sections, we'll show how data practitioners currently calculate metrics and compare it to how MetricFlow makes defining metrics easier and more flexible. -The following example data schema image shows a number of different types of data tables: +The following example data is based off the Jaffle Shop repo. You can view the complete [dbt project here](https://github.com/dbt-labs/jaffle-sl-template). The tables we're using in our example model are: -- `transactions` is a production data platform export that has been cleaned up and organized for analytical consumption -- `visits` is a raw event log -- `stores` is a cleaned-up and fully normalized dimensional table from a daily production database export -- `products` is a dimensional table that came from an external source such as a wholesale vendor of the goods this store sells. -- `customers` is a partially denormalized table in this case with a column derived from the transactions table through some upstream process +- `orders` is a production data platform export that has been cleaned up and organized for analytical consumption +- `customers` is a partially denormalized table in this case with a column derived from the orders table through some upstream process -![MetricFlow-SchemaExample](/img/docs/building-a-dbt-project/MetricFlow-SchemaExample.jpeg) + -To make this more concrete, consider the metric `revenue`, which is defined using the SQL expression: +To make this more concrete, consider the metric `order_total`, which is defined using the SQL expression: -`select sum(price * quantity) as revenue from transactions` - -This expression calculates the total revenue by multiplying the price and quantity for each transaction and then adding up all the results. In business settings, the metric `revenue` is often calculated according to different categories, such as: -- Time, for example `date_trunc(created_at, 'day')` -- Product, using `product_category` from the `product` table. +`select sum(order_total) as order_total from orders` +This expression caclulates the revenue from each order by summing the order_total column in the orders table. In a business setting, the metric order_total is often calcualted according to different categoris, such as" +- Time, for example `date_trunc(ordered_at, 'day')` +- Order Type, using `is_food_order` dimension from the `orders` table. ### Calculate metrics @@ -95,21 +91,21 @@ Next, we'll compare how data practitioners currently calculate metrics with mult -The following example displays how data practitioners typically would calculate the revenue metric aggregated. It's also likely that analysts are asked for more details on a metric, like how much revenue came from bulk purchases. +The following example displays how data practitioners typically would calculate the order_total metric aggregated. It's also likely that analysts are asked for more details on a metric, like how much revenue came from new customers. Using the following query creates a situation where multiple analysts working on the same data, each using their own query method — this can lead to confusion, inconsistencies, and a headache for data management. ```sql select - date_trunc(transactions.created_at, 'day') as day - , products.category as product_category - , sum(transactions.price * transactions.quantity) as revenue + date_trunc('day',orders.ordered_at) as day, + case when customers.first_ordered_at is not null then true else false end as is_new_customer, + sum(orders.order_total) as order_total from - transactions + orders left join - products + customers on - transactions.product_id = products.product_id + orders.customer_id = customers.customer_id group by 1, 2 ``` @@ -118,126 +114,139 @@ group by 1, 2 > Introducing MetricFlow, a key component of the dbt Semantic Layer 🤩 - simplifying data collaboration and governance. -In the following three example tabs, use MetricFlow to define a semantic model that uses revenue as a metric and a sample schema to create consistent and accurate results — eliminating confusion, code duplication, and streamlining your workflow. +In the following three example tabs, use MetricFlow to define a semantic model that uses order_total as a metric and a sample schema to create consistent and accurate results — eliminating confusion, code duplication, and streamlining your workflow. -In this example, a measure named revenue is defined based on two columns in the `schema.transactions` table. The time dimension `ds` provides daily granularity and can be aggregated to weekly or monthly time periods. Additionally, a categorical dimension called `is_bulk_transaction` is specified using a case statement to capture bulk purchases. +In this example, a measure named `order_total` is defined based on the order_total column in the `orders` table. The time dimension `metric_time` provides daily granularity and can be aggregated to weekly or monthly time periods. Additionally, a categorical dimension called `is_new_customer` is specified in the `customers` semantic model. ```yaml semantic_models: - - name: transactions - description: "A record for every transaction that takes place. Carts are considered multiple transactions for each SKU." - owners: support@getdbt.com - model: (ref('transactions')) + #The name of the semantic model. + - name: orders + description: | + Model containting order data. The grain of the table is the order id. + + #The name of the dbt model and schema + model: ref('orders') defaults: - agg_time_dimension: metric_time - - # --- entities --- + agg_time_dimension: metric_time + #Entities. These usually corespond to keys in the table.table. entities: - - name: transaction_id + - name: order_id type: primary - - name: customer_id - type: foreign - - name: store_id - type: foreign - - name: product_id + - name: customer type: foreign + expr: customer_id - # --- measures --- + #Measures. These are the aggregations on the columns in the table. measures: - - name: revenue - description: - expr: price * quantity - agg: sum - - name: quantity - description: Quantity of products sold - expr: quantity + - name: order_total agg: sum - - name: active_customers - description: A count of distinct customers completing transactions - expr: customer_id - agg: count_distinct - - # --- dimensions --- + #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - name: metric_time + expr: cast(ordered_at as date) type: time - expr: date_trunc('day', ts) type_params: time_granularity: day - - name: is_bulk_transaction + - name: customers + defaults: + agg_time_dimension: first_ordered_at + description: | + Customer dimension table. The grain of the table is one row per customer. + #The name of the dbt model and schema + model: ref('customers') + #Entities. These usually corespond to keys in the table. + entities: + - name: customer + type: primary + expr: customer_id + dimensions: + - name: is_new_customer type: categorical - expr: case when quantity > 10 then true else false end + expr: case when first_ordered_at is not null then true else false end + - name: first_ordered_at + type: time + type_params: + time_granularity: day + ``` - + -Similarly, you could then add a `products` semantic model on top of the `products` model to incorporate even more dimensions to slice and dice your revenue metric. - -Notice the identifiers present in the semantic models `products` and `transactions`. MetricFlow does the heavy-lifting for you by traversing the appropriate join keys to identify the available dimensions to slice and dice your `revenue` metric. +Similarly, you could then add additonal dimensions like `is_food_order` to your semantic models to incorporate even more dimensions to slice and dice your revenue order_total. ```yaml semantic_models: - - name: products - description: A record for every product available through our retail stores. - owners: support@getdbt.com - model: ref('products') - - # --- identifiers --- +- name: orders + description: | + Model containting order data. The grain of the table is the order id. + + #The name of the dbt model and schema + model: ref('orders') + defaults: + agg_time_dimension: metric_time + #Entities. These usually corespond to keys in the table.table. entities: - - name: product_id + - name: order_id type: primary + - name: customer + type: foreign + expr: customer_id - # --- dimensions --- + #Measures. These are the aggregations on the columns in the table. + measures: + - name: order_total + agg: sum + #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - - name: category - type: categorical - - name: brand - type: categorical - - name: is_perishable - type: categorical - expr: | - category in ("vegetables", "fruits", "dairy", "deli") + - name: metric_time + expr: cast(ordered_at as date) + type: time + type_params: + time_granularity: day + - name: is_food_order + type: categorical ``` -Imagine an even more difficult metric is needed, like the amount of money earned each day by selling perishable goods per active customer. Without MetricFlow the data practitioner's original SQL might look like this: +Imagine an even more complex metric is needed, like the amount of money earned each day from food orders from returning customers. Without MetricFlow the data practitioner's original SQL might look like this: ```sql select - date_trunc(transactions.created_at, 'day') as day - , products.category as product_category - , sum(transactions.price * transactions.quantity) as revenue - , count(distinct customer_id) as active_customers - , sum(transactions.price * transactions.quantity)/count(distinct customer_id) as perishable_revenues_per_active_customer + date_trunc('day',orders.ordered_at) as day, + sum(case when is_food_order = true then order_total else null end) as food_order, + sum(orders.order_total) as sum_order_total, + food_order/sum_order_total from - transactions + orders left join - products + customers on - transactions.product_id = products.product_id -where - products.category in ("vegetables", "fruits", "dairy", "deli") -group by 1, 2 + orders.customer_id = customers.customer_id +where + case when customers.first_ordered_at is not null then true else false end = true +group by 1 ``` MetricFlow simplifies the SQL process via metric YAML configurations as seen below. You can also commit them to your git repository to ensure everyone on the data and business teams can see and approve them as the true and only source of information. ```yaml metrics: - - name: perishables_revenue_per_active_customer - description: Revenue from perishable goods (vegetables, fruits, dairy, deli) for each active store. + - name: food_order_pct_of_order_total + description: Revenue from food orders in each store + label: "Food % of Order Total" type: ratio type_params: - numerator: revenue + numerator: food_order denominator: active_customers filter: | - {{dimension('perishable_goods')}} in ('vegetables',' fruits', 'dairy', 'deli') + {{dimension('is_new_customer')}} = true ``` diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index efdde600635..518b538300a 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -6,7 +6,22 @@ sidebar_label: Cumulative tags: [Metrics, Semantic Layer] --- -Cumulative metrics aggregate a measure over a given window. If no window is specified, the window is considered infinite and accumulates values over all time. +Cumulative metrics aggregate a measure over a given accumulation window. If no window is specified, the window is considered infinite and accumulates values over all time. This metric is common for calculating things like weekly active users, or month to date revenue. The full metrics spec, as well as examples of cumulative metric are given below. + +# Cumulative Metrics Spec +```yaml +metrics: + - name: the metric name # Required + description: the metric description # Optinal + type: simple # Required + label: The value that will be displayed in downstream tools # Required + type_params: # Required + measure: the measure you are refrencing # Required + window: the accumulation window i.e 1 month, 7 days, 1 year. # Optional. Can not be used with window + grain_to_date: sets the accumulation grain i.e month will accumulated data for one month, then restart at the beggining of the next. # Optional. Can not be used with grain_to_date. + + +``` :::info MetricFlow time spine required @@ -14,18 +29,31 @@ You will need to create the [time spine model](/docs/build/metricflow-time-spine ::: +# Cumulative Metrics Example + ```yaml # Cumulative metrics aggregate a measure over a given window. The window is considered infinite if no window parameter is passed (accumulate the measure over all time) metrics: -- name: wau_rolling_7 - owners: - - support@getdbt.com - type: cumulative - type_params: - measures: - - distinct_users - #Omitting window will accumulate the measure over all time - window: 7 days + - name: cumulative_order_total + label: Cumulative Order total (All Time) + description: The cumulative value of all orders + type: cumulative + type_params: + measure: order_total + - name: cumulative_order_total_l1m + label: Cumulative Order total (L1M) + description: Trailing 1 month cumulative order amount + type: cumulative + type_params: + measure: order_total + window: 1 month + - name: cumulative_order_total_mtd + label: Cumulative Order total (MTD) + description: The month to date value of all orders + type: cumulative + type_params: + measure: order_total + grain_to_date: month ``` ### Window options @@ -38,27 +66,25 @@ This section details examples of when you specify and don't specify window optio If a window option is specified, the MetricFlow framework applies a sliding window to the underlying measure. -Suppose the underlying measure `distinct_users` is configured as such to reflect a count of distinct users by user_id and user_status. +Suppose the underlying measure `customers` which is configured to count the unique customers making orders at the Jaffle shop. ```yaml measures: - - name: distinct_users - description: The number of distinct users creating mql queries - expr: case when user_status in ('PENDING','ACTIVE') then user_id else null end - agg: count_distinct + - name: customers + expr: customer_id + agg: count_distinct ``` -We can write a cumulative metric `wau_rolling_7` as such: +We can write a cumulative metric `weekly_customers` as such: ``` yaml metrics: - name: wau_rolling_7 + - name: weekly_customers # Define the measure and the window. type: cumulative type_params: - measures: - - distinct_users - # the default window is infinity - omitting window will accumulate the measure over all time + measure: customers + # Setting the window to 7 days since we want to track weekly active window: 7 days ``` @@ -67,7 +93,7 @@ From the sample YAML above, note the following: * `type`: Specify cumulative to indicate the type of metric. * `type_params`: Specify the measure you want to aggregate as a cumulative metric. You have the option of specifying a `window`, or a `grain to date`. -For example, in the `wau_rolling_7` cumulative metric, MetricFlow takes a sliding 7-day window of relevant users and applies a count distinct function. +For example, in the `weekly_customers` cumulative metric, MetricFlow takes a sliding 7-day window of relevant customers and applies a count distinct function. If you omit the `window`, the measure will accumulate over all time. Otherwise, you can choose from granularities like day, week, quarter, or month, and describe the window using phrases like "7 days" or "1 month." @@ -102,12 +128,14 @@ measures: metrics: - name: current_revenue description: Current revenue + label: Current Revenue type: cumulative type_params: measures: - revenue - name: active_subscriptions description: Count of active subscriptions + label: Active Subscriptions type: cumulative type_params: measures: @@ -122,38 +150,32 @@ metrics: You can choose to specify a grain to date in your cumulative metric configuration to accumulate a metric from the start of a grain (such as week, month, or year). When using a window, such as a month, MetricFlow will go back one full calendar month. However, grain to date will always start accumulating from the beginning of the grain, regardless of the latest date of data. -For example, let's consider an underlying measure of `total_revenue.` +For example, let's consider an underlying measure of `order_total.` ```yaml -measures: - - name: total_revenue - description: Total revenue (summed) - agg: sum - expr: revenue + measures: + - name: order_total + agg: sum ``` We can compare the difference between a 1-month window and a monthly grain to date. The cumulative metric in a window approach applies a sliding window of 1 month, whereas the grain to date by month resets at the beginning of each month. ```yaml -metrics: - name: revenue_monthly_window #For this metric, we use a window of 1 month - description: Monthly revenue using a window of 1 month (think of this as a sliding window of 30 days) - type: cumulative - type_params: - measures: - - total_revenue - window: 1 month -``` - -```yaml -metrics: - name: revenue_monthly_grain_to_date #For this metric, we use a monthly grain to date - description: Monthly revenue using grain to date of 1 month (think of this as a monthly resetting point) - type: cumulative - type_params: - measures: - - total_revenue - grain_to_date: month +metrics: + - name: cumulative_order_total_l1m #For this metric, we use a window of 1 month + label: Cumulative Order total (L1M) + description: Trailing 1 month cumulative order amount + type: cumulative + type_params: + measure: order_total + window: 1 month + - name: cumulative_order_total_mtd #For this metric, we use a monthly grain to date + label: Cumulative Order total (MTD) + description: The month to date value of all orders + type: cumulative + type_params: + measure: order_total + grain_to_date: month ``` ### Implementation diff --git a/website/docs/docs/build/derived-metrics.md b/website/docs/docs/build/derived-metrics.md index 0ca14d1c6f2..64c3e8c33e2 100644 --- a/website/docs/docs/build/derived-metrics.md +++ b/website/docs/docs/build/derived-metrics.md @@ -6,21 +6,66 @@ sidebar_label: Derived tags: [Metrics, Semantic Layer] --- -Derived metrics in MetricFlow refer to metrics that are created by defining an expression using other metrics. Derived metrics allow for calculations on top of metrics. For example, you can define a metric called "Net Sales Per User" by using other metrics in the calculation. +Derived metrics in MetricFlow refer to metrics that are created by defining an expression using other metrics. Derived metrics allow for calculations on top of metrics. This is useful when you want to combine metrics and perform arthematic fucntions ontop of aggregated columns. For example, defining a profit metric. Below, we'll show the full spec for derived metrics as well as an example. +# Derived Metrics Spec ```yaml metrics: - - name: net_sales_per_user + - name: the metric name # Required + description: the metric description # Optinal + type: derived # Required + label: The value that will be displayed in downstream tools #Required + type_params: # Required + expr: the derived expression # Required + metrics: # The list of metrics used in the derived metrics # Required + - name: the name of the metrics. must refrence a metric you have already defined # Required + alias: optional alias for the metric that you can use in the expr # Optional + filter: optional filter to apply to the metric # Optional + offset_window: set the period for the offset window i.e 1 month. This will retrun the value of the metric one month from the metric time. # Required. + + + +``` + +```yaml +metrics: + - name: order_gross_profit + description: Gross profit from each order. + type: derived + label: Order Gross Profit + type_params: + expr: revenue - cost + metrics: + - name: order_total + alias: revenue + - name: order_cost + alias: cost + - name: food_order_gross_profit + label: Food Order Gross Profit + description: "The gross profit for each food order." type: derived type_params: - expr: gross_sales - cogs / active_users + expr: revenue - cost metrics: - - name: gross_sales # these are all metrics (can be a derived metric, meaning building a derived metric with derived metrics) - - name: cogs - - name: users - filter: | # Optional additional constraint - {{dimension('filter')}} is_active - alias: active_users # Optional alias to use in the expr + - name: order_total + alias: revenue + filter: | + {{dimension('is_food_order')}} = True + - name: order_cost + alias: cost + filter: | + {{dimension('is_food_order')}} = True + - name: order_total_growth_mom + description: "Percentage growth of orders total compated to 1 month ago" + type: derived + label: Order Total Growth % M/M + type_params: + expr: (order_total - order_total_prev_month)*100/order_total_prev_month + metrics: + - name: order_total + - name: order_total + offset_window: 1 month + alias: order_total_prev_month ``` ## Derived metric offset diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 0f258e30d8d..a04c8702280 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -11,7 +11,7 @@ MetricFlow uses a timespine table to construct cumulative metrics. By default, M To create this table, you need to create a model in your dbt project called `metricflow_time_spine` and add the following code: ```sql -filename: metricflow_time_spine.sql +--filename: metricflow_time_spine.sql {{ config( materialized = 'table', @@ -38,12 +38,14 @@ final as ( select * from final ``` ```sql ---- BigQuery supports DATE() instead of TO_DATE(). Use this model if you're using BigQuery +-- filename: metricflow_time_spine.sql +-- BigQuery supports DATE() instead of TO_DATE(). Use this model if you're using BigQuery {{config(materialized='table')}} with days as ( - {{dbt_utils.date_spine('day' - , "DATE(2000,01,01)" - , "DATE(2030,01,01)" + {{dbt_utils.date_spine( + 'day', + "DATE(2000,01,01)", + "DATE(2030,01,01)" ) }} ), diff --git a/website/docs/docs/build/ratio-metrics.md b/website/docs/docs/build/ratio-metrics.md index d70815f140d..44aa9a52c4e 100644 --- a/website/docs/docs/build/ratio-metrics.md +++ b/website/docs/docs/build/ratio-metrics.md @@ -6,35 +6,37 @@ sidebar_label: Ratio tags: [Metrics, Semantic Layer] --- -Ratio allows you to create a ratio between two measures. You simply specify a numerator and a denominator measure. Additionally, you can apply a dimensional filter to both the numerator and denominator using a constraint string when computing the metric. +Ratio allows you to create a ratio between two measures. You simply specify a numerator and a denominator measure. Additionally, you can apply a dimensional filter to both the numerator and denominator using a constraint string when computing the metric. The full spec for ratio metrics, and examples are belwo: +# Ratio Metric Spec ```yaml -# Ratio Metric - metrics: - - name: cancellation_rate - owners: - - support@getdbt.com - type: ratio # Ratio metrics create a ratio out of two measures. Define the measures from the semantic model as numerator or denominator - type_params: - numerator: cancellations_usd - denominator: transaction_amount_usd - filter: | # add optional constraint string. This applies to both the numerator and denominator - {{ dimension('country', entity_path=['customer']) }} = 'MX' +metrics: + - name: the metric name # Required + description: the metric description # Optinal + type: ratio # Required + label: The value that will be displayed in downstream tools #Required + type_params: # Required + numerator: the measure used for the numerator # Required + filter: filter for the numerator# Optional + alias: alias for the numerator # Optional + denominator: the meausure used for the denominator # Required + filter: filter for the denominator # Optional + alias: alias for the denominator # Optional +``` - - name: enterprise_cancellation_rate - owners: - - support@getdbt.com - type: ratio # Ratio metrics create a ratio out of two measures. Define the measures from the semantic model as numerator or denominator - type_params: - numerator: - name: cancellations_usd - filter: tier = 'enterprise' #constraint only applies to the numerator - denominator: transaction_amount_usd - filter: | # add optional constraint string. This applies to both the numerator and denominator - {{ dimension('country', entity_path=['customer']) }} = 'MX' +```yaml +# Ratio Metric +metrics: + - name: food_order_total_pct + description: "The food order total as the % of the total order" + label: Food Order Total % + type: ratio + type_params: + numerator: food_order_total + denominator: order_total ``` -### Different semantic models +### Ratio metrics using different semantic models If the numerator and denominator in a ratio metric come from different semantic models, the system will compute their values in subqueries and then join the result set based on common dimensions to calculate the final ratio. Here's an example of the generated SQL for such a ratio metric. diff --git a/website/docs/docs/build/simple.md b/website/docs/docs/build/simple.md index 0092427699d..68b796b14ce 100644 --- a/website/docs/docs/build/simple.md +++ b/website/docs/docs/build/simple.md @@ -6,7 +6,20 @@ sidebar_label: Simple tags: [Metrics, Semantic Layer] --- -Simple metrics are metrics that directly reference a single measure, without any additional measures involved. +Simple metrics are metrics that directly reference a single measure, without any additional measures involved. They are aggregations over a column in your warhouse, and can be filtered by one or multiple dimensions. The full spec for simple metric as well as an example is below: + +# Simple Metrics Spec +```yaml +metrics: + - name: the metric name # Required + description: the metric description # Optinal + type: simple # Required + label: The value that will be displayed in downstream tools #Required + type_params: # Required + measure: the measure you're refrencing # Required + +``` + +# Simple Metrics Example ``` yaml metrics: - - name: cancellations - type: simple # Pointers to a measure you created in a data source + - name: customers + description: Count of customers + type: simple # Pointers to a measure you created in a semantic model + label: Count of customers + type_params: + measure: customers # The measure you're creating a proxy of. + - name: large_orders + description: "Order with order values over 20." + type: SIMPLE + label: Large Orders type_params: - measure: cancellations_usd # The measure you're creating a proxy of. - # For any metric optionally include a filter string which applies a dimensional filter when computing the metric - filter: | - {{dimension('value')}} > 100 and {{dimension('acquisition', entity_path=['user'])}} + measure: orders + filter: | # For any metric you can optionally include a filter on dimension values + {{dimension('order_total_dim')}} >= 20 ``` diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 8d12d9715d6..1eec1ab1d68 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -8,7 +8,7 @@ meta: api_name: dbt Semantic Layer API --- -This getting started page recommends a workflow to help you get started creating your first metrics. Here are the following steps you'll take: +This getting started page recommends a workflow to help you get started creating your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you would like to use a sandbox project to follow the guide, you can clone the repo here. Otherwise, you can create semantic models and metrics for your own dbt project. Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: @@ -25,7 +25,6 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. - Have both your production and development environments running dbt version 1.6 or higher - Use Snowflake, BigQuery, Databricks, and Redshift data platform - A successful run in the environment where your Semantic Layer is configured - * Note — Deployment environment is currently supported (_development experience coming soon_) - To query with dbt Cloud: * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America * Set up the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and the [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) in the integrated tool to import metric definitions. @@ -43,7 +42,7 @@ Before you begin, install the [MetricFlow CLI](/docs/build/metricflow-cli) as an Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platforms): -- Create or activate your virtual environment. `python -m venv venv` +- Create or activate your virtual environment. `python -m venv venv` or `source your-venv/bin/activate` - `pip install "dbt-metricflow[your_adapter_name]"` * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. @@ -51,41 +50,89 @@ Currently, the supported adapters are Snowflake and Postgres (BigQuery, Databric ## Create a semantic model -This step will guide you through setting up your semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). +This part of the guide will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). It is reccomended that you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the yaml extension so it's ignored during parsing. We'll be rebuidling it step by step in this example. If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. -1. Name your semantic model, fill in appropriate metadata, and map it to a model in your dbt project. +1. Create a new semantic model file i.e orders.yaml. We recomending creating semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name, appropriate metadata, map it to a model in your dbt project and specify model defaults for now only `default_agg_time_dimension` is supported. ```yaml semantic_models: - - name: transactions + #The name of the semantic model. + - name: orders description: | - This table captures every transaction starting July 02, 2014. Each row represents one transaction - model: ref('fact_transactions') + Model containting order data. The grain of the table is the order id. + #The name of the dbt model and schema + model: ref('orders') + defaults: + agg_time_dimension: ordered_at ``` -2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `transaction_id`, and so on. +2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `order_id`, and so on. ```yaml -entities: - - name: transaction - type: primary - expr: id_transaction - - name: customer - type: foreign - expr: id_customer + #Entities. These usually corespond to keys in the table. + entities: + - name: order_id + type: primary + - name: location + type: foreign + expr: location_id + - name: customer + type: foreign + expr: customer_id ``` -3. Define your dimensions and measures. dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. +3. Define your dimensions and measures. Dimensions are properties of the records in your table that are non-aggregatable. They provide categorical or time-based context to enrich metrics. Measures are the building block for creating metrics. They are numerical columns that MetricFlow aggregates to create metrics. ```yaml -measures: - - name: transaction_amount_usd - description: The total USD value of the transaction. - agg: sum -dimensions: - - name: is_large - type: categorical - expr: case when transaction_amount_usd >= 30 then true else false end + #Measures. These are the aggregations on the columns in the table. + measures: + - name: order_total + agg: sum + #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: + - name: location_name + type: categorical + - name: ordered_at + expr: cast(ordered_at as date) + type: time + type_params: + time_granularity: day +``` + +Putting it all together, a complete semantic model configurations based on the order model would look like the example below. You can view this semantic model in the example repo. +```yaml +semantic_models: + #The name of the semantic model. + - name: orders + description: | + Model containting order data. The grain of the table is the order id. + #The name of the dbt model and schema + model: ref('orders') + defaults: + agg_time_dimension: ordered_at + #Entities. These usually corespond to keys in the table. + entities: + - name: order_id + type: primary + - name: location + type: foreign + expr: location_id + - name: customer + type: foreign + expr: customer_id + #Measures. These are the aggregations on the columns in the table. + measures: + - name: order_total + agg: sum + #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. + dimensions: + - name: location_name + type: categorical + - name: ordered_at + expr: cast(ordered_at as date) + type: time + type_params: + time_granularity: day ``` :::tip @@ -103,44 +150,47 @@ group by metric_time_day, country -- dimensions ## Define metrics -Now that you've created your first semantic model, it's time to define your first metric. MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). +Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](https://docs.getdbt.com/docs/build/metrics-overview) before getting started. -1. You can define metrics in the same YAML files as your semantic models, or create a new file. +1. You can define metrics in the same YAML files as your semantic models, or create a new file. If you want to create your metrics in a new file, we recomend creating another directory called `/models/metrics`. The file structure for metrics can become more complex from if you need to further organize your metrics, for example by data source or business line. -2. The example metric we'll create is a simple metric that refers directly to a measure, based on the `transaction_amount_usd` measure, which will be implemented as a `sum()` function in SQL. +2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recomend deleteing the `example_metrics` file, or removing the .yaml extension so it's ignored during parsing. We'll be rebuidling the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. ```yaml metrics: - - name: transaction_amount_usd + - name: order_total + description: "Sum of orders value" type: simple - type_params: null - measure: transaction_amount_usd + label: "Order Total" + type_params: + measure: order_total ``` -3. Save your code and make sure you test your metrics before committing them to your repository. +3. Save your code and validate your configs (we'll do this in the next step of the guide 😀) before committing them to your repository. To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. +## Configure the MetricFlow timespine +MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article walks thorough how to add the `metricflow_time_spine` model to your project.](/docs/build/metricflow-time-spine) + ## Test and query metrics :::note -For public beta, testing and querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). However, install the [MetricFlow CLI](/docs/build/metricflow-cli) to test and query metrics locally. +For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. However, you can install the [MetricFlow CLI](/docs/build/metricflow-cli) to test and query metrics locally. * dbt Core or Developer plan users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. ::: -Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for more detailed MetricFlow commands. +Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on how to install the CLI, and a refrence for the CLI commands. -**Test using the CLI:** +**Query and commit your metrics using the CLI:** +Metricflow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working in off off the example Jaffle shop example, run `dbt seed && dbt build` before preceding to ensure the data exists in your warehouse. 1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. -3. Run `mf validate-configs` to validate the changes before committing them - -**Query using the CLI:** - -1. Run `mf query --metrics --group-by ` to manually query the metrics and dimensions. -2. Verify that the metric values are what you expect. You can view the generated SQL if you type `--explain` in the CLI. -3. Commit and merge the code changes that contain the metric definitions. +3. Run `mf query --metrics --group-by ` to query the metrics and dimensions. i.e `mf query --metrics order_total --group-by metric_time` +4. Verify that the metric values are what you expect. To futher understand how the metric is being generated, you can view the generated SQL if you type `--explain` in the CLI. +5. Run `mf validate-configs` to run validation on your semantic models and metrics. +6. Commit and merge the code changes that contain the metric definitions. ## Run a production job diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index cde72760f8c..08bfe416c4e 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -14,11 +14,13 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; -The dbt Semantic Layer creates an [artifact](/reference/artifacts/dbt-artifacts) file called the "Semantic Manifest" (`semantic_manifest.json`). This artifact contains comprehensive information about your Semantic Layer. You can use it as a valuable reference to understand the structure and details of your data models. +dbt creates an [artifact](/reference/artifacts/dbt-artifacts) file called the "Semantic Manifest" (`semantic_manifest.json`) that MetricFlow needs to build properly, and that the Semantic Layer needs to run metric queries. This artifact contains comprehensive information about your Semantic Layer. It is an internal file, that acts as the integration point with MetricFlow. MetricFlow will use the semantic manifest produced by core to instantiate a data flow plan, and ultimatley generate SQL from Semantic Layer query requests. You can use it as a valuable reference to understand the structure and details of your data models. -Similar to the `manifest.json` file, the Semantic Manifest also lives in the `/target` directory of your dbt project. This is where dbt stores various artifacts (such as compiled models and tests) generated during the execution of your project. +Similar to the `manifest.json` file, the `semantic_manifest.json` also lives in the `/target` directory of your dbt project. This is where dbt stores various artifacts (such as compiled models and tests) generated during the execution of your project. + +# How is it Produced +The `semantic_manifest.json` is produced whenever your dbt project is parsed. The easiest way to generate the file yourself is to run `dbt parse`. Since `dbt run`, `dbt build`, and `dbt compile` all parse your dbt project, these commands will generate a semantic manifest as well. -The Semantic Manifest allows you to gain insights into the entities and relationships defined in your Semantic Layer, making it easier to understand your data models and their dependencies. QUESTIONS: - WHAT IS IT PRODUCED BY? @@ -32,850 +34,48 @@ QUESTIONS: { "semantic_models": [ { - "name": "orders", - "defaults": { - "agg_time_dimension": "ds" - }, - "description": "Model containing order data. The grain of the table is the order id.\n", - "node_relation": { - "alias": "orders", - "schema_name": "dbt_sl_test", - "database": "ANALYTICS", - "relation_name": "ANALYTICS.dbt_sl_test.orders" - }, - "entities": [ - { - "name": "order", - "description": null, - "type": "primary", - "role": null, - "expr": "order_id", - "metadata": null - }, - { - "name": "location", - "description": null, - "type": "foreign", - "role": null, - "expr": "location_id", - "metadata": null - }, - { - "name": "customer", - "description": null, - "type": "foreign", - "role": null, - "expr": "customer_id", - "metadata": null - } - ], - "measures": [ - { - "name": "order_total", - "agg": "sum", - "description": null, - "create_metric": true, - "expr": null, - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "food_orders", - "agg": "sum", - "description": null, - "create_metric": false, - "expr": "case when is_food_order then order_total else 0 end", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "orders", - "agg": "sum", - "description": null, - "create_metric": false, - "expr": "1", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "max_order_value", - "agg": "max", - "description": null, - "create_metric": false, - "expr": "order_total", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "min_order_value", - "agg": "min", - "description": null, - "create_metric": false, - "expr": "order_total", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "customers", - "agg": "count_distinct", - "description": null, - "create_metric": false, - "expr": "customer_id", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "average_order_value", - "agg": "average", - "description": null, - "create_metric": false, - "expr": "order_total", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "order_cost", - "agg": "sum", - "description": null, - "create_metric": false, - "expr": null, - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "locations_with_orders", - "agg": "count_distinct", - "description": null, - "create_metric": true, - "expr": "location_id", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "median_order_value", - "agg": "median", - "description": null, - "create_metric": true, - "expr": "order_total", - "agg_params": null, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "order_value_p99", - "agg": "percentile", - "description": null, - "create_metric": true, - "expr": "order_total", - "agg_params": { - "percentile": 0.99, - "use_discrete_percentile": true, - "use_approximate_percentile": false - }, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - }, - { - "name": "discrete_order_value_p99", - "agg": "percentile", - "description": null, - "create_metric": true, - "expr": "order_total", - "agg_params": { - "percentile": 0.99, - "use_discrete_percentile": true, - "use_approximate_percentile": false - }, - "metadata": null, - "non_additive_dimension": null, - "agg_time_dimension": "ds" - } - ], - "dimensions": [ - { - "name": "location_name", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "ds", - "description": null, - "type": "time", - "is_partition": false, - "type_params": { - "time_granularity": "day", - "validity_params": null - }, - "expr": "ordered_at", - "metadata": null - }, - { - "name": "is_food_order", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "is_drink_order", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "order_total_dim", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": "order_total", - "metadata": null - } - ], - "metadata": null - }, - { - "name": "customers", - "defaults": { - "agg_time_dimension": "first_ordered_at" - }, - "description": "Customer dimension table. The grain of the table is one row per customer.\n", + "name": "semantic model name", + "defaults": null, + "description": "semantic model description", "node_relation": { - "alias": "customers", - "schema_name": "dbt_sl_test", - "database": "ANALYTICS", - "relation_name": "ANALYTICS.dbt_sl_test.customers" - }, - "entities": [ - { - "name": "customer", - "description": null, - "type": "primary", - "role": null, - "expr": "customer_id", - "metadata": null - } - ], - "measures": [], - "dimensions": [ - { - "name": "customer_name", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "count_lifetime_orders", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "lifetime_spend_pre_tax", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "lifetime_spend", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "customer_type", - "description": null, - "type": "categorical", - "is_partition": false, - "type_params": null, - "expr": null, - "metadata": null - }, - { - "name": "first_ordered_at", - "description": null, - "type": "time", - "is_partition": false, - "type_params": { - "time_granularity": "day", - "validity_params": null - }, - "expr": null, - "metadata": null - }, - { - "name": "last_ordered_at", - "description": null, - "type": "time", - "is_partition": false, - "type_params": { - "time_granularity": "day", - "validity_params": null - }, - "expr": null, - "metadata": null - } - ], - "metadata": null - } - ], + "alias": "model alias", + "schema_name": "model schema", + "database": "model db", + "relation_name": "Fully qualified relation name" + }, + "entities": ["entities in the semantic model"], + "measures": ["measures in the semantic model"], + "dimensions": ["dimensions in the semantic model" ], "metrics": [ { - "name": "east_coast_order_amount", - "description": "Sum of orders from the east coast.", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "orders", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": { - "where_sql_template": "dimension('location_name') in ('Philadelphia')\"" - }, - "metadata": null - }, - { - "name": "large_order", - "description": "Sum of orders from the east coast.", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "orders", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": { - "where_sql_template": "dimension('order_total_dim')\" >= 20" - }, - "metadata": null - }, - { - "name": "food_order_amount", - "description": "Sum order amount for food orders.", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "food_orders", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "food_order_pct", - "description": "The food cost as the % of the total order", - "type": "ratio", - "type_params": { - "measure": null, - "measures": [], - "numerator": { - "name": "food_orders", - "filter": null, - "alias": null - }, - "denominator": { - "name": "order_total", - "filter": null, - "alias": null - }, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "new_customer_order_pct", - "description": "The food cost as the % of the total order", - "type": "ratio", - "type_params": { - "measure": null, - "measures": [], - "numerator": { - "name": "customers", - "filter": { - "where_sql_template": "dimension('customer_type', entity_path=['customer'])\" = 'new'" - }, - "alias": "customer_numerator" - }, - "denominator": { - "name": "customers", - "filter": null, - "alias": null - }, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "order_gross_profit", - "description": "Gross profit from each order.", - "type": "derived", - "type_params": { - "measure": null, - "measures": [], - "numerator": null, - "denominator": null, - "expr": "revenue - cost", - "window": null, - "grain_to_date": null, - "metrics": [ - { - "name": "food_order_amount", - "filter": null, - "alias": "revenue", - "offset_window": null, - "offset_to_grain": null - }, - { - "name": "order_amount", - "filter": null, - "alias": "cost", - "offset_window": null, - "offset_to_grain": null - } - ] - }, - "filter": null, - "metadata": null - }, - { - "name": "food_order_pct_cumulative", - "description": "Example to show a ratio referenced in a derived ", - "type": "derived", - "type_params": { - "measure": null, - "measures": [], - "numerator": null, - "denominator": null, - "expr": "food_order_pct * 100", - "window": null, - "grain_to_date": null, - "metrics": [ - { - "name": "food_order_pct", - "filter": null, - "alias": null, - "offset_window": null, - "offset_to_grain": null - } - ] - }, - "filter": null, - "metadata": null - }, - { - "name": "cumulative_growth_mom", - "description": "Example to show a ratio referenced in a derived ", - "type": "derived", - "type_params": { - "measure": null, - "measures": [], - "numerator": null, - "denominator": null, - "expr": "cumulative_order_amount/cumulative_order_amount_lm", - "window": null, - "grain_to_date": null, - "metrics": [ - { - "name": "cumulative_order_amount", - "filter": null, - "alias": null, - "offset_window": null, - "offset_to_grain": null - }, - { - "name": "cumulative_order_amount", - "filter": null, - "alias": "cumulative_order_amount_lm", - "offset_window": { - "count": 1, - "granularity": "month" - }, - "offset_to_grain": null - } - ] - }, - "filter": null, - "metadata": null - }, - { - "name": "food_order_gross_profit", - "description": "The gross profit for each order", - "type": "derived", - "type_params": { - "measure": null, - "measures": [], - "numerator": null, - "denominator": null, - "expr": "revenue - cost", - "window": null, - "grain_to_date": null, - "metrics": [ - { - "name": "order_total", - "filter": { - "where_sql_template": "dimension('is_food_order')\" = True" - }, - "alias": "revenue", - "offset_window": null, - "offset_to_grain": null - }, - { - "name": "order_amount", - "filter": { - "where_sql_template": "dimension('is_food_order')\" = True" - }, - "alias": "cost", - "offset_window": null, - "offset_to_grain": null - } - ] - }, - "filter": null, - "metadata": null - }, - { - "name": "cumulative_order_amount", - "description": "The cumulative value of all orders", - "type": "cumulative", - "type_params": { - "measure": null, - "measures": [ - { - "name": "order_total", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "cumulative_order_amount_l1m", - "description": "The cumulative value of all orders", - "type": "cumulative", - "type_params": { - "measure": null, - "measures": [ - { - "name": "order_total", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": { - "count": 1, - "granularity": "month" - }, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "cumulative_order_amount_mtd", - "description": "The cumulative value of all orders", - "type": "cumulative", - "type_params": { - "measure": null, - "measures": [ - { - "name": "order_total", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": "month", - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "order_count", - "description": "The number of orders placed", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "orders", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "max_order_amount", - "description": "The highest order value for a given period", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "max_order_value", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "min_order_amount", - "description": "The lowest order value for a given period", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "min_order_value", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "customers_with_orders", - "description": "Unique count of customers placing orders", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "customers", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "returning_customers_with_orders", - "description": "Unique count of customers placing orders", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "customers", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": { - "where_sql_template": "dimension('customer_type', entity_path=['customer']) \" = 'returning'" - }, - "metadata": null - }, - { - "name": "new_customer_with_orders", - "description": "Unique count of customers placing orders", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "customers", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": { - "where_sql_template": "dimension('customer_type', entity_path=['customer']) \" = 'new'" - }, - "metadata": null - }, - { - "name": "average_order_amount", - "description": "The average order value", - "type": "simple", - "type_params": { - "measure": null, - "measures": [ - { - "name": "average_order_value", - "filter": null, - "alias": null - } - ], - "numerator": null, - "denominator": null, - "expr": null, - "window": null, - "grain_to_date": null, - "metrics": [] - }, - "filter": null, - "metadata": null - }, - { - "name": "order_amount", - "description": "The cost of fulfilling each order", - "type": "simple", + "name": "name of the metric", + "description": "metric description", + "type": "metric type", "type_params": { - "measure": null, - "measures": [ - { - "name": "order_cost", - "filter": null, - "alias": null - } - ], + "measure": {"measures for the metric"}, "numerator": null, "denominator": null, "expr": null, "window": null, "grain_to_date": null, - "metrics": [] + "metrics": ["metrics used in defining the metric. this is used in derived metrics"], + "input_measures": [] }, "filter": null, "metadata": null } ], - "interfaces_version": "0.1.0.dev3" + "project_configuration": { + "time_spine_table_configurations": [ + { + "location": "fully qualified table name for timespine", + "column_name": "date column", + "grain": "day" + } + ], + "metadata": null, + "dsi_package_version": {} + } } ``` From 377606e3fcd8deccdbeef4a27a2b229d0558b712 Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Mon, 24 Jul 2023 19:23:08 -0700 Subject: [PATCH 272/703] update typos --- website/docs/docs/build/sl-getting-started.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 1eec1ab1d68..de60034bc56 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -8,7 +8,7 @@ meta: api_name: dbt Semantic Layer API --- -This getting started page recommends a workflow to help you get started creating your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you would like to use a sandbox project to follow the guide, you can clone the repo here. Otherwise, you can create semantic models and metrics for your own dbt project. +This getting started page recommends a workflow to help you get started creating your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you would like to use a sandbox project to follow the guide, you can clone the repo from GitHub. Otherwise, you can create semantic models and metrics for your own dbt project. Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: @@ -46,13 +46,13 @@ Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platfor - `pip install "dbt-metricflow[your_adapter_name]"` * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. -Currently, the supported adapters are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). +Currently, the supported adapters for querying locally are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). If you use an adpater other then Snowflake you can still create metrics, but you will need to test querying them through the Semantic Layer. ## Create a semantic model This part of the guide will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). It is reccomended that you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the yaml extension so it's ignored during parsing. We'll be rebuidling it step by step in this example. If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. -1. Create a new semantic model file i.e orders.yaml. We recomending creating semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name, appropriate metadata, map it to a model in your dbt project and specify model defaults for now only `default_agg_time_dimension` is supported. +1. Create a new semantic model file i.e orders.yaml. We recomending creating semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name, appropriate metadata, map it to a model in your dbt project and specify model defaults. For now `default_agg_time_dimension` is the only supported default. ```yaml semantic_models: @@ -88,7 +88,7 @@ semantic_models: measures: - name: order_total agg: sum - #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. + #Dimensions, either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - name: location_name type: categorical @@ -99,7 +99,7 @@ semantic_models: time_granularity: day ``` -Putting it all together, a complete semantic model configurations based on the order model would look like the example below. You can view this semantic model in the example repo. +Putting it all together, a complete semantic model configurations based on the order model would look like the example below. ```yaml semantic_models: #The name of the semantic model. @@ -152,7 +152,7 @@ group by metric_time_day, country -- dimensions Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](https://docs.getdbt.com/docs/build/metrics-overview) before getting started. -1. You can define metrics in the same YAML files as your semantic models, or create a new file. If you want to create your metrics in a new file, we recomend creating another directory called `/models/metrics`. The file structure for metrics can become more complex from if you need to further organize your metrics, for example by data source or business line. +1. You can define metrics in the same YAML files as your semantic models, or create a new file. If you want to create your metrics in a new file, we recomend creating another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example by data source or business line. 2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recomend deleteing the `example_metrics` file, or removing the .yaml extension so it's ignored during parsing. We'll be rebuidling the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. @@ -170,7 +170,7 @@ metrics: To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. -## Configure the MetricFlow timespine +## Configure the MetricFlow time spine model MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article walks thorough how to add the `metricflow_time_spine` model to your project.](/docs/build/metricflow-time-spine) ## Test and query metrics @@ -183,7 +183,8 @@ For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Comi Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on how to install the CLI, and a refrence for the CLI commands. **Query and commit your metrics using the CLI:** -Metricflow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working in off off the example Jaffle shop example, run `dbt seed && dbt build` before preceding to ensure the data exists in your warehouse. + +Metricflow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt build` before preceding to ensure the data exists in your warehouse. 1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. From ee61767880b9885004f65af574e14d0ff9f5423a Mon Sep 17 00:00:00 2001 From: Jordan Stein Date: Mon, 24 Jul 2023 20:41:16 -0700 Subject: [PATCH 273/703] update migration guide --- website/docs/guides/migration/sl-migration.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index f9b34ebd35d..5868f358a2e 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -48,11 +48,11 @@ To help ensure a smooth transition, you can use our [custom-built migration tool For detailed instructions on how to configure semantic models and metrics, refer to our [getting started guide](/docs/use-dbt-semantic-layer/quickstart-sl). -THIS IS INCORRECT BUT TO BE CONFIRMED- Please be aware that developing Metrics and Semantic Models in the IDE is not supported in the Beta release. +Please be aware that you will need to upgrade your development environment to dbt>1.6 if you're developing Metrics and Semantic Models in the IDE. This will upgrade the version for other analysts on your team who are using the IDE for that project, and may cause errors if they still have metrics defined using the spec in dbt 1.5 or below. #### Test your metrics -Once you’ve created your semantic models and created or updated your metrics, you can test your updated configs using the MetricFlow CLI tools: +Once you’ve created your semantic models and created or updated your metrics, you can test your updated configs using the MetricFlow CLI tools. Note this is only available to users developing metrics locally: 1. Install the CLI via `pip install "dbt-metricflow[your_adapter_name]`. 2. Run `dbt parse`. This will parse your project and create a `semantic_manifest.json` file in your target directory. @@ -60,6 +60,8 @@ Once you’ve created your semantic models and created or updated your metrics, 4. Run `mf validate-configs` to run semantic and warehouse validations. This ensures are configs are valid, and the underlying objects exist in your warehouse. 5. Test querying a metric by running `mf query --metrics --group-by ` +If you are migrating using the IDE in cloud, we will run semantic validations whenever we parse or compile your project. This will ensure that your metrics and semantic models are configured correctly. You will need to test querying metrics values in downstream tools. + Once you've thoroughly tested and verified the accuracy of your metrics, commit and push the change to your dbt repository. After you merge the new configurations, **the legacy Semantic Layer will no longer work**. To minimize downtime, we recommend you promptly complete step 2 and set up your environment on the new Semantic Layer. ### Step 2: Switch to the new Semantic Layer @@ -128,7 +130,7 @@ To help ensure a smooth transition, you can use our [custom-built migration tool For detailed instructions on how to configure semantic models and metrics, refer to our [getting started guide](/docs/use-dbt-semantic-layer/quickstart-sl). -THIS IS INCORRECT BUT TO BE CONFIRMED- Please be aware that developing Metrics and Semantic Models in the IDE is not supported in the Beta release. +Please be aware that you will need to upgrade your development environment to dbt>1.6 if you're developing Metrics and Semantic Models in the IDE. This will upgrade the version for other analysts on your team who are using the IDE, and may cause errors if they still have metrics defined using the spec in dbt 1.5 or below. #### Test your metrics @@ -140,6 +142,8 @@ Once you’ve created your semantic models and created or updated your metrics, 4. Run `mf validate-configs` to run semantic and warehouse validations. This ensures are configs are valid, and the underlying objects exist in your warehouse. 5. Test querying a metric by running `mf query --metrics --group-by ` +If you are migrating using the IDE in cloud, we will run semantic validations whenever we parse or compile your project. This will ensure that your metrics and semantic models are configured correctly. You will need to test querying metrics values in downstream tools. + Once you've thoroughly tested and verified the accuracy of your metrics, commit and push the changes to your dbt repository. After you merge the new configurations, **the legacy Semantic Layer will no longer work**. ### Step 3: Update connection in downstream integrations From 37c25246be6dfad26932f4a9fd7f09dc24fcbabe Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:09:38 +0100 Subject: [PATCH 274/703] Update website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- .../docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index ac6317a9c9d..ac5e9f1d542 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -18,7 +18,7 @@ import NewSLChanges from '/snippets/_new-sl-changes.md'; Discover the diverse range of data applications that seamlessly integrate with the powerful dbt Semantic Layer, powered by MetricFlow — from business intelligence tools to notebooks, spreadsheets, data catalogs, and more. These integrations allow you to query and unlock valuable insights from your data ecosystem. -Query dbt metrics via external integrations using the sophisticated
{frontMatter.meta.api_name}. Use the API to query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. +Query dbt metrics with external integrations using the sophisticated {frontMatter.meta.api_name}. Use the API to query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. The dbt Semantic Layer integrations are capable of querying dbt metrics, importing definitions, surfacing the underlying data in partner tools, and more. Here are some of the integrations you can query from: From 8c896ba86a5396f4cdafb48c2fc27531c3050af8 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:09:56 +0100 Subject: [PATCH 275/703] Update website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- .../docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index ac5e9f1d542..271397a00b9 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -29,7 +29,7 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi * Supports a generic JDBC driver option (such as DataGrip) or * Supports Dremio and uses ArrowFlightSQL driver version 12.0.0 or higher. -For information on the partner integrations, their documentation, and more — refer to the [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) page. +Refer to [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) for information on the partner integrations, their documentation, and more. From fa8fd42d2c1f8bbf5975a78b05f4cad6e59efb44 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:10:07 +0100 Subject: [PATCH 276/703] Update website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- .../docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 271397a00b9..00ab879af31 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -31,7 +31,7 @@ The dbt Semantic Layer integrations are capable of querying dbt metrics, importi Refer to [dbt Semantic Layer integrations](https://www.getdbt.com/product/semantic-layer-integrations) for information on the partner integrations, their documentation, and more. - + ## Related docs From 8a5ab7afc40c6770483817eec6863c8dfd3116b6 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:10:15 +0100 Subject: [PATCH 277/703] Update website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- .../docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index 00ab879af31..d976262f563 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -56,6 +56,6 @@ For information on the partner integrations, their documentation, and more &mdas ## Related docs -- [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) to learn more about the dbt Semantic Layer. +- [About the dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) From 6b58e55ec5dff94b4d281904241aed126ec5d7db Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:10:46 +0100 Subject: [PATCH 278/703] Update website/docs/docs/dbt-cloud-apis/sl-api-overview.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/dbt-cloud-apis/sl-api-overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index 89429c18d55..34ffcbf8b3a 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -16,7 +16,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; The rapid growth of different tools in the modern data stack has helped data professionals address the diverse needs of different teams. The downside of this growth is the fragmentation of business logic across teams, tools, and workloads. -The [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) allows users to define metrics in code (with [MetricFlow](/docs/build/about-metricflow)) and dynamically generate and query datasets in downstream tools based on their dbt governed assets, such as metrics and models. Integrating with the dbt Semantic Layer will help the organizations that uses your product make more efficient and trustworthy decisions with their data. It also helps avoid duplicative coding, optimizes development workflow, ensures data governance, and guarantee consistency for data consumers. +The [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) allows you to define metrics in code (with [MetricFlow](/docs/build/about-metricflow)) and dynamically generate and query datasets in downstream tools based on their dbt governed assets, such as metrics and models. Integrating with the dbt Semantic Layer will help organizations that use your product make more efficient and trustworthy decisions with their data. It also helps you to avoid duplicative coding, optimize development workflow, ensure data governance, and guarantee consistency for data consumers. You can use the dbt Semantic Layer for a variety of tools and applications of data. Here are some common use cases: From 691a9f28997e5bda170640a2ee2bdd8e2691c0ef Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:11:03 +0100 Subject: [PATCH 279/703] Update website/docs/docs/dbt-cloud-apis/sl-api-overview.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- website/docs/docs/dbt-cloud-apis/sl-api-overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index 34ffcbf8b3a..a05f7fc5d16 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -18,7 +18,7 @@ The rapid growth of different tools in the modern data stack has helped data pro The [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) allows you to define metrics in code (with [MetricFlow](/docs/build/about-metricflow)) and dynamically generate and query datasets in downstream tools based on their dbt governed assets, such as metrics and models. Integrating with the dbt Semantic Layer will help organizations that use your product make more efficient and trustworthy decisions with their data. It also helps you to avoid duplicative coding, optimize development workflow, ensure data governance, and guarantee consistency for data consumers. -You can use the dbt Semantic Layer for a variety of tools and applications of data. Here are some common use cases: +You can use the dbt Semantic Layer for a variety of tools and applications of data. Some common use cases are: * Business intelligence (BI), reporting, and analytics * Data quality and monitoring From 3428c7dd0e31ab8548cbca29f8730f655882b847 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 25 Jul 2023 11:23:46 +0100 Subject: [PATCH 280/703] tweaks --- website/docs/docs/dbt-cloud-apis/sl-api-overview.md | 2 -- website/docs/docs/dbt-cloud-apis/sl-graphql.md | 4 ++-- website/docs/docs/dbt-cloud-apis/sl-jdbc.md | 6 ++++-- website/static/_redirects | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md index 89429c18d55..8742cd35f8d 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-api-overview.md +++ b/website/docs/docs/dbt-cloud-apis/sl-api-overview.md @@ -63,6 +63,4 @@ commenting out until it's available -## Authentication -dbt Cloud authorizes requests to the dbt Semantic Layer API. You need to provide an environment ID, host, and [service account tokens](/docs/dbt-cloud-apis/service-tokens). diff --git a/website/docs/docs/dbt-cloud-apis/sl-graphql.md b/website/docs/docs/dbt-cloud-apis/sl-graphql.md index e834346d016..43c43b68441 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-graphql.md +++ b/website/docs/docs/dbt-cloud-apis/sl-graphql.md @@ -19,6 +19,7 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; With GraphQL, users can request specific data using a single query, reducing the need for many server round trips. This improves performance and minimizes network overhead. GraphQL has several advantages, such as self-documenting, having a strong typing system, supporting versioning and evolution, enabling rapid development, and having a robust ecosystem. These features make GraphQL a powerful choice for APIs that prioritize flexibility, performance, and developer productivity. + ## dbt Semantic Layer GraphQL API The dbt Semantic Layer GraphQL API allows you to explore and query metrics and dimensions. Due to it's self-documenting nature, you can explore the calls conveniently through the [schema explorer](https://cloud.getdbt.com/semantic-layer/api/graphql). @@ -33,7 +34,7 @@ Refer to [Get started with the dbt Semantic Layer](docs/use-dbt-semantic-layer/q ### Authentication -Authentication uses a dbt Cloud Service token passed through a header as follows. To explore the schema, you can enter this information in the "header" section. +Authentication uses a dbt Cloud [service account tokens](/docs/dbt-cloud-apis/service-tokens) passed through a header as follows. To explore the schema, you can enter this information in the "header" section. ``` {"Authorization": "Bearer "} @@ -41,7 +42,6 @@ Authentication uses a dbt Cloud Service token passed through a header as follows Each GQL request also comes with a dbt Cloud environmentId. The API uses both the service token in the header and environmentId for authentication. - ### Metric metadata calls Use the following example calls to provide you with an idea of the types of commands you can use: diff --git a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md index 88bc2d9818c..d383ae3f12c 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-jdbc.md +++ b/website/docs/docs/dbt-cloud-apis/sl-jdbc.md @@ -26,13 +26,16 @@ A JDBC driver is a software component enabling a Java application to interact wi dbt Labs partners can use the JDBC API to build integrations in their tools with the dbt Semantic Layer - ## Using the JDBC API If you are a dbt user or partner with access to dbt Cloud and the[dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), you can [setup](/docs/use-dbt-semantic-layer/setup-sl) and test this API with data from your own instance by configuring the Semantic Layer and obtaining the right JDBC connection parameters described in this document. Refer to [Get started with the dbt Semantic Layer](docs/use-dbt-semantic-layer/quickstart-sl) for more info. +## Authentication + +dbt Cloud authorizes requests to the dbt Semantic Layer API. You need to provide an environment ID, host, and [service account tokens](/docs/dbt-cloud-apis/service-tokens). + ## Connection parameters The JDBC connection requires a few different connection parameters. @@ -52,7 +55,6 @@ jdbc:arrow-flight-sql://semantic-layer.cloud.getdbt.com:443?&environmentId=20233 *Note — If you're testing locally on a tool like DataGrip, you may also have to provide the following variable at the end or beginning of the JDBC URL `&disableCertificateVerification=true`. - ## Querying the API for metric metadata The Semantic Layer JDBC API has built-in metadata calls which can provide a user with information about their metrics and dimensions. Here are some metadata commands and examples: diff --git a/website/static/_redirects b/website/static/_redirects index 1b77d12b841..f72df13a7f0 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -2,8 +2,8 @@ https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer https://www.getdbt.com/blog/new-dbt-semantic-layer-spec-dna/ 301 https://docs.getdbt.com/blog/how-to-design-and-structure-metrics https://www.getdbt.com/blog/new-dbt-semantic-layer-spec-dna/ 301 + /guides/dbt-ecosystem/sl-partner-integration-guide /docs/use-dbt-semantic-layer/avail-sl-integrations 301 -/docs/build/sl-getting-started /docs/use-dbt-semantic-layer/quickstart-semantic-layer 301 /docs/use-dbt-semantic-layer/dbt-semantic-layer /docs/use-dbt-semantic-layer/dbt-sl 301 /docs/use-dbt-semantic-layer/set-up-semantic-layer /docs/use-dbt-semantic-layer/setup-sl 301 /docs/use-dbt-semantic-layer/quickstart-semantic-layer /docs/use-dbt-semantic-layer/quickstart-sl 301 From 7a6bcf64500d2b5356c6972999400ab10b3b3a56 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:24:08 +0100 Subject: [PATCH 281/703] Update website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- .../docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md index d976262f563..8f955986e07 100644 --- a/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md +++ b/website/docs/docs/use-dbt-semantic-layer/avail-sl-integrations.md @@ -16,7 +16,7 @@ import NewSLChanges from '/snippets/_new-sl-changes.md'; -Discover the diverse range of data applications that seamlessly integrate with the powerful dbt Semantic Layer, powered by MetricFlow — from business intelligence tools to notebooks, spreadsheets, data catalogs, and more. These integrations allow you to query and unlock valuable insights from your data ecosystem. +There are a number of data applications that seamlessly integrate with the dbt Semantic Layer, powered by MetricFlow, from business intelligence tools to notebooks, spreadsheets, data catalogs, and more. These integrations allow you to query and unlock valuable insights from your data ecosystem. Query dbt metrics with external integrations using the sophisticated {frontMatter.meta.api_name}. Use the API to query metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. From 168b91594710620ab43aeb6b898f2a9080b9044b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 25 Jul 2023 13:02:44 +0100 Subject: [PATCH 282/703] fix typos and language --- website/docs/docs/build/about-metricflow.md | 74 ++++++++----------- website/docs/docs/build/cumulative-metrics.md | 27 ++++--- website/docs/docs/build/derived-metrics.md | 21 +++--- website/docs/docs/build/ratio-metrics.md | 19 +++-- website/docs/docs/build/simple.md | 13 ++-- website/docs/docs/build/sl-getting-started.md | 43 ++++++----- .../docs/docs/dbt-cloud-apis/sl-manifest.md | 9 ++- website/docs/guides/migration/sl-migration.md | 19 ++--- 8 files changed, 118 insertions(+), 107 deletions(-) diff --git a/website/docs/docs/build/about-metricflow.md b/website/docs/docs/build/about-metricflow.md index eabf3b43fc2..38b64f492cb 100644 --- a/website/docs/docs/build/about-metricflow.md +++ b/website/docs/docs/build/about-metricflow.md @@ -55,7 +55,6 @@ For a semantic model, there are three main pieces of metadata: * [Dimensions](/docs/build/dimensions) — These are the ways you want to group or slice/dice your metrics. * [Measures](/docs/build/measures) — The aggregation functions that give you a numeric result and can be used to create your metrics. - ### Metrics Metrics, which is a key concept, are functions that combine measures, constraints, or other mathematical functions to define new quantitative indicators. MetricFlow uses measures and various aggregation types, such as average, sum, and count distinct, to create metrics. Dimensions add context to metrics and without them, a metric is simply a number for all time. You can define metrics in the same YAML files as your semantic models, or create a new file. @@ -66,11 +65,12 @@ MetricFlow supports different metric types: - [Derived](/docs/build/derived) — An expression of other metrics, which allows you to do calculations on top of metrics. - [Ratio](/docs/build/ratio) — Create a ratio out of two measures, like revenue per customer. - [Simple](/docs/build/simple) — Metrics that refer directly to one measure. + ## Use case In the upcoming sections, we'll show how data practitioners currently calculate metrics and compare it to how MetricFlow makes defining metrics easier and more flexible. -The following example data is based off the Jaffle Shop repo. You can view the complete [dbt project here](https://github.com/dbt-labs/jaffle-sl-template). The tables we're using in our example model are: +The following example data is based off the Jaffle Shop repo. You can view the complete [dbt project](https://github.com/dbt-labs/jaffle-sl-template). The tables we're using in our example model are: - `orders` is a production data platform export that has been cleaned up and organized for analytical consumption - `customers` is a partially denormalized table in this case with a column derived from the orders table through some upstream process @@ -80,7 +80,7 @@ The following example data is based off the Jaffle Shop repo. You can view the c To make this more concrete, consider the metric `order_total`, which is defined using the SQL expression: `select sum(order_total) as order_total from orders` -This expression caclulates the revenue from each order by summing the order_total column in the orders table. In a business setting, the metric order_total is often calcualted according to different categoris, such as" +This expression calculates the revenue from each order by summing the order_total column in the orders table. In a business setting, the metric order_total is often calculated according to different categories, such as" - Time, for example `date_trunc(ordered_at, 'day')` - Order Type, using `is_food_order` dimension from the `orders` table. @@ -119,49 +119,43 @@ In the following three example tabs, use MetricFlow to define a semantic model t -In this example, a measure named `order_total` is defined based on the order_total column in the `orders` table. The time dimension `metric_time` provides daily granularity and can be aggregated to weekly or monthly time periods. Additionally, a categorical dimension called `is_new_customer` is specified in the `customers` semantic model. +In this example, a measure named `order_total` is defined based on the order_total column in the `orders` table. + +The time dimension `metric_time` provides daily granularity and can be aggregated to weekly or monthly time periods. Additionally, a categorical dimension called `is_new_customer` is specified in the `customers` semantic model. ```yaml semantic_models: - #The name of the semantic model. - - name: orders + - name: orders #The name of the semantic model description: | - Model containting order data. The grain of the table is the order id. - - #The name of the dbt model and schema - model: ref('orders') + Model containing order data. The grain of the table is the order id. + model: ref('orders') #The name of the dbt model and schema defaults: agg_time_dimension: metric_time - #Entities. These usually corespond to keys in the table.table. - entities: + entities: #Entities. These usually correspond to keys in the table.table. - name: order_id type: primary - name: customer type: foreign expr: customer_id - - #Measures. These are the aggregations on the columns in the table. - measures: + measures: #Measures. These are the aggregations on the columns in the table. - name: order_total agg: sum - #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. - dimensions: + dimensions: #Dimensions,either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. - name: metric_time expr: cast(ordered_at as date) type: time type_params: time_granularity: day - - name: customers - defaults: - agg_time_dimension: first_ordered_at - description: | - Customer dimension table. The grain of the table is one row per customer. - #The name of the dbt model and schema - model: ref('customers') - #Entities. These usually corespond to keys in the table. - entities: - - name: customer + - name: customers + defaults: null + agg_time_dimension: first_ordered_at + description: > + Customer dimension table. The grain of the table is one row per + customer. + model: ref('customers') # The name of the dbt model and schema + entities: #Entities. These usually correspond to keys in the table. + - name: customer type: primary expr: customer_id dimensions: @@ -169,7 +163,7 @@ semantic_models: type: categorical expr: case when first_ordered_at is not null then true else false end - name: first_ordered_at - type: time + type: time type_params: time_granularity: day @@ -178,39 +172,33 @@ semantic_models: -Similarly, you could then add additonal dimensions like `is_food_order` to your semantic models to incorporate even more dimensions to slice and dice your revenue order_total. +Similarly, you could then add additional dimensions like `is_food_order` to your semantic models to incorporate even more dimensions to slice and dice your revenue order_total. ```yaml semantic_models: -- name: orders + - name: orders description: | - Model containting order data. The grain of the table is the order id. - - #The name of the dbt model and schema - model: ref('orders') + Model containing order data. The grain of the table is the order id. + model: ref('orders') #The name of the dbt model and schema defaults: agg_time_dimension: metric_time - #Entities. These usually corespond to keys in the table.table. - entities: + entities: #Entities. These usually correspond to keys in the table.table. - name: order_id type: primary - name: customer type: foreign expr: customer_id - - #Measures. These are the aggregations on the columns in the table. - measures: + measures: #Measures. These are the aggregations on the columns in the table. - name: order_total agg: sum - #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. - dimensions: + dimensions: #Dimensions,either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. - name: metric_time expr: cast(ordered_at as date) type: time type_params: time_granularity: day - - name: is_food_order - type: categorical + - name: is_food_order + type: categorical ``` diff --git a/website/docs/docs/build/cumulative-metrics.md b/website/docs/docs/build/cumulative-metrics.md index 518b538300a..aebe3fd7ecc 100644 --- a/website/docs/docs/build/cumulative-metrics.md +++ b/website/docs/docs/build/cumulative-metrics.md @@ -6,19 +6,22 @@ sidebar_label: Cumulative tags: [Metrics, Semantic Layer] --- -Cumulative metrics aggregate a measure over a given accumulation window. If no window is specified, the window is considered infinite and accumulates values over all time. This metric is common for calculating things like weekly active users, or month to date revenue. The full metrics spec, as well as examples of cumulative metric are given below. +Cumulative metrics aggregate a measure over a given accumulation window. If no window is specified, the window is considered infinite and accumulates values over all time. + +This metric is common for calculating things like weekly active users, or month to date revenue. The following displays the full metrics spec, along with an example: + -# Cumulative Metrics Spec ```yaml metrics: - name: the metric name # Required - description: the metric description # Optinal + description: the metric description # Optional type: simple # Required label: The value that will be displayed in downstream tools # Required type_params: # Required - measure: the measure you are refrencing # Required - window: the accumulation window i.e 1 month, 7 days, 1 year. # Optional. Can not be used with window - grain_to_date: sets the accumulation grain i.e month will accumulated data for one month, then restart at the beggining of the next. # Optional. Can not be used with grain_to_date. + measure: the measure you are referencing # Required + window: the accumulation window i.e 1 month, 7 days, 1 year. # Optional. Cannot be used with window + grain_to_date: sets the accumulation grain, such as month will accumulate data for one month, then restart at the beginning of the next. + # Optional. Can not be used with grain_to_date. ``` @@ -29,10 +32,12 @@ You will need to create the [time spine model](/docs/build/metricflow-time-spine ::: -# Cumulative Metrics Example +## Cumulative metrics example + +Cumulative metrics measure data over a given window and consider the window infinite when no window parameter is passed, accumulating the data over all time. ```yaml -# Cumulative metrics aggregate a measure over a given window. The window is considered infinite if no window parameter is passed (accumulate the measure over all time) + metrics: - name: cumulative_order_total label: Cumulative Order total (All Time) @@ -79,13 +84,11 @@ We can write a cumulative metric `weekly_customers` as such: ``` yaml metrics: - - name: weekly_customers - # Define the measure and the window. + - name: weekly_customers # Define the measure and the window. type: cumulative type_params: measure: customers - # Setting the window to 7 days since we want to track weekly active - window: 7 days + window: 7 days # Setting the window to 7 days since we want to track weekly active ``` From the sample YAML above, note the following: diff --git a/website/docs/docs/build/derived-metrics.md b/website/docs/docs/build/derived-metrics.md index 64c3e8c33e2..010c86c2c33 100644 --- a/website/docs/docs/build/derived-metrics.md +++ b/website/docs/docs/build/derived-metrics.md @@ -6,27 +6,27 @@ sidebar_label: Derived tags: [Metrics, Semantic Layer] --- -Derived metrics in MetricFlow refer to metrics that are created by defining an expression using other metrics. Derived metrics allow for calculations on top of metrics. This is useful when you want to combine metrics and perform arthematic fucntions ontop of aggregated columns. For example, defining a profit metric. Below, we'll show the full spec for derived metrics as well as an example. +In MetricFlow, derived metrics are metrics created by defining an expression using other metrics. They allow performing calculations on top of existing metrics. This proves useful for combining metrics and applying arithmetic functions to aggregated columns, such as, you can define a profit metric. + +The following example presents the complete specification for derived metrics, along with an example. -# Derived Metrics Spec ```yaml metrics: - name: the metric name # Required - description: the metric description # Optinal + description: the metric description # Optional type: derived # Required label: The value that will be displayed in downstream tools #Required type_params: # Required expr: the derived expression # Required metrics: # The list of metrics used in the derived metrics # Required - - name: the name of the metrics. must refrence a metric you have already defined # Required + - name: the name of the metrics. must reference a metric you have already defined # Required alias: optional alias for the metric that you can use in the expr # Optional filter: optional filter to apply to the metric # Optional - offset_window: set the period for the offset window i.e 1 month. This will retrun the value of the metric one month from the metric time. # Required. - - - + offset_window: set the period for the offset window i.e 1 month. This will return the value of the metric one month from the metric time. # Required ``` +## Derived metrics example + ```yaml metrics: - name: order_gross_profit @@ -56,7 +56,7 @@ metrics: filter: | {{dimension('is_food_order')}} = True - name: order_total_growth_mom - description: "Percentage growth of orders total compated to 1 month ago" + description: "Percentage growth of orders total completed to 1 month ago" type: derived label: Order Total Growth % M/M type_params: @@ -70,7 +70,7 @@ metrics: ## Derived metric offset -You may want to use an offset value of a metric in the definition of a derived metric. For example, if you define retention rate as (active customers at the end of the month/active customers at the beginning of the month)-1 you can model this using a derived metric with an offset. +You may want to use an offset value of a metric in the definition of a derived metric. For example, you can model the retention rate by using a derived metric with an offset, which involves calculating (active customers at the end of the month/active customers at the beginning of the month) - 1. ```yaml metrics: @@ -83,3 +83,4 @@ metrics: - name: active_customers offset_window: 1 month alias: active_customers_t1m +``` diff --git a/website/docs/docs/build/ratio-metrics.md b/website/docs/docs/build/ratio-metrics.md index 44aa9a52c4e..95ce22db5b6 100644 --- a/website/docs/docs/build/ratio-metrics.md +++ b/website/docs/docs/build/ratio-metrics.md @@ -6,24 +6,27 @@ sidebar_label: Ratio tags: [Metrics, Semantic Layer] --- -Ratio allows you to create a ratio between two measures. You simply specify a numerator and a denominator measure. Additionally, you can apply a dimensional filter to both the numerator and denominator using a constraint string when computing the metric. The full spec for ratio metrics, and examples are belwo: +Ratio allows you to create a ratio between two measures. You simply specify a numerator and a denominator measure. Additionally, you can apply a dimensional filter to both the numerator and denominator using a constraint string when computing the metric. + +The following displays the full spec for ratio metrics, along with an example: -# Ratio Metric Spec ```yaml metrics: - name: the metric name # Required - description: the metric description # Optinal + description: the metric description # Optional type: ratio # Required label: The value that will be displayed in downstream tools #Required type_params: # Required numerator: the measure used for the numerator # Required filter: filter for the numerator# Optional alias: alias for the numerator # Optional - denominator: the meausure used for the denominator # Required + denominator: the measure used for the denominator # Required filter: filter for the denominator # Optional alias: alias for the denominator # Optional ``` +## Ratio metrics example + ```yaml # Ratio Metric metrics: @@ -36,12 +39,12 @@ metrics: denominator: order_total ``` -### Ratio metrics using different semantic models +## Ratio metrics using different semantic models -If the numerator and denominator in a ratio metric come from different semantic models, the system will compute their values in subqueries and then join the result set based on common dimensions to calculate the final ratio. Here's an example of the generated SQL for such a ratio metric. +The system will simplify and turn the numerator and denominator in a ratio metric from different semantic models by computing their values in sub-queries. It will then join the result set based on common dimensions to calculate the final ratio. Here's an example of the SQL generated for such a ratio metric. -```SQL +```sql select subq_15577.metric_time as metric_time , cast(subq_15577.mql_queries_created_test as double) / cast(nullif(subq_15582.distinct_query_users, 0) as double) as mql_queries_per_active_user @@ -85,7 +88,7 @@ on ) ``` -### Add filter +## Add filter Users can define constraints on input measures for a metric by applying a filter directly to the measure, like so: diff --git a/website/docs/docs/build/simple.md b/website/docs/docs/build/simple.md index 68b796b14ce..29f70bb89e7 100644 --- a/website/docs/docs/build/simple.md +++ b/website/docs/docs/build/simple.md @@ -6,17 +6,18 @@ sidebar_label: Simple tags: [Metrics, Semantic Layer] --- -Simple metrics are metrics that directly reference a single measure, without any additional measures involved. They are aggregations over a column in your warhouse, and can be filtered by one or multiple dimensions. The full spec for simple metric as well as an example is below: +Simple metrics are metrics that directly reference a single measure, without any additional measures involved. They are aggregations over a column in your data platform, and can be filtered by one or multiple dimensions. + +The following displays the full spec for ratio metrics, along with an example: -# Simple Metrics Spec ```yaml metrics: - name: the metric name # Required - description: the metric description # Optinal + description: the metric description # Optional type: simple # Required label: The value that will be displayed in downstream tools #Required type_params: # Required - measure: the measure you're refrencing # Required + measure: the measure you're referencing # Required ``` @@ -27,7 +28,9 @@ If you've already defined the measure using the `create_metric: true` parameter, ::: --> -# Simple Metrics Example +## Simple metrics example + +```yaml ``` yaml metrics: - name: customers diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index de60034bc56..52979e5c077 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -8,7 +8,7 @@ meta: api_name: dbt Semantic Layer API --- -This getting started page recommends a workflow to help you get started creating your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you would like to use a sandbox project to follow the guide, you can clone the repo from GitHub. Otherwise, you can create semantic models and metrics for your own dbt project. +This getting started page recommends a workflow to help you create your first metrics. This guide uses the [Jaffle shop example project](https://github.com/dbt-labs/jaffle-sl-template). If you prefer using a sandbox project to follow the guide, you can clone the repo from GitHub. Otherwise, you can create semantic models and metrics for your own dbt project. Use this guide to fully experience the power of a universal dbt Semantic Layer. Here are the following steps you'll take: @@ -46,20 +46,26 @@ Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platfor - `pip install "dbt-metricflow[your_adapter_name]"` * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. -Currently, the supported adapters for querying locally are Snowflake and Postgres (BigQuery, Databricks, and Redshift coming soon). If you use an adpater other then Snowflake you can still create metrics, but you will need to test querying them through the Semantic Layer. +Currently, Snowflake and Postgres are the supported adapters for querying locally (BigQuery, Databricks, and Redshift will be available soon). If you use an adapter other than Snowflake, you can still create metrics, but you will need to test querying them through the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl). ## Create a semantic model -This part of the guide will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). It is reccomended that you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the yaml extension so it's ignored during parsing. We'll be rebuidling it step by step in this example. If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. +This part of the guide will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). -1. Create a new semantic model file i.e orders.yaml. We recomending creating semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name, appropriate metadata, map it to a model in your dbt project and specify model defaults. For now `default_agg_time_dimension` is the only supported default. +We highly recommend you read the overview of what a [semantic model](https://docs.getdbt.com/docs/build/semantic-models) is before getting started. If you're working in the Jaffle shop example, delete the `orders.yaml` semantic model or delete the yaml extension so it's ignored during parsing. We'll be rebuilding it step by step in this example. + +If you're following the guide in your own project, pick a model that you want to build a semantic manifest from and fill in the config values accordingly. + +1. Create a new semantic model file, such as `orders.yaml`. + +We recommending creating semantic models in the `/models/semantic_models` directory in your project. Semantic models are nested under the `semantic_models` key. First, fill in the name, appropriate metadata, map it to a model in your dbt project, and specify model defaults. For now `default_agg_time_dimension` is the only supported default. ```yaml semantic_models: #The name of the semantic model. - name: orders description: | - Model containting order data. The grain of the table is the order id. + Model containing order data. The grain of the table is the order id. #The name of the dbt model and schema model: ref('orders') defaults: @@ -69,7 +75,7 @@ semantic_models: 2. Define your entities. These are the keys in your table that MetricFlow will use to join other semantic models. These are usually columns like `customer_id`, `order_id`, and so on. ```yaml - #Entities. These usually corespond to keys in the table. + #Entities. These usually correspond to keys in the table. entities: - name: order_id type: primary @@ -88,7 +94,7 @@ semantic_models: measures: - name: order_total agg: sum - #Dimensions, either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. + #Dimensions, either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - name: location_name type: categorical @@ -99,18 +105,19 @@ semantic_models: time_granularity: day ``` -Putting it all together, a complete semantic model configurations based on the order model would look like the example below. +Putting it all together, a complete semantic model configurations based on the order model would look like the following example: + ```yaml semantic_models: #The name of the semantic model. - name: orders description: | - Model containting order data. The grain of the table is the order id. + Model containing order data. The grain of the table is the order id. #The name of the dbt model and schema model: ref('orders') defaults: agg_time_dimension: ordered_at - #Entities. These usually corespond to keys in the table. + #Entities. These usually correspond to keys in the table. entities: - name: order_id type: primary @@ -124,7 +131,7 @@ semantic_models: measures: - name: order_total agg: sum - #Dimensions,either categorical or time. These add additonal context to metrics. The typical querying pattern is Metric by Dimension. + #Dimensions, either categorical or time. These add additional context to metrics. The typical querying pattern is Metric by Dimension. dimensions: - name: location_name type: categorical @@ -137,6 +144,7 @@ semantic_models: :::tip If you're familiar with writing SQL, you can think of dimensions as the columns you would group by and measures as the columns you would aggregate. + ```sql select metric_time_day, -- time @@ -152,9 +160,9 @@ group by metric_time_day, country -- dimensions Now that you've created your first semantic model, it's time to define your first metric! MetricFlow supports different metric types like [simple](/docs/build/simple), [ratio](/docs/build/ratio), [cumulative](/docs/build/cumulative), and [derived](/docs/build/derived). It's recommended that you read the [metrics overview docs](https://docs.getdbt.com/docs/build/metrics-overview) before getting started. -1. You can define metrics in the same YAML files as your semantic models, or create a new file. If you want to create your metrics in a new file, we recomend creating another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example by data source or business line. +1. You can define metrics in the same YAML files as your semantic models, or create a new file. If you want to create your metrics in a new file, we recommend creating another directory called `/models/metrics`. The file structure for metrics can become more complex from here if you need to further organize your metrics, for example by data source or business line. -2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recomend deleteing the `example_metrics` file, or removing the .yaml extension so it's ignored during parsing. We'll be rebuidling the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. +2. The example metric we'll create is a simple metric that refers directly to the the `order_total` measure, which will be implemented as a `sum()` function in SQL. Again, if you're working in the Jaffle shop sandbox, we recommend deleting the `example_metrics` file, or removing the .yaml extension so it's ignored during parsing. We'll be rebuilding the `order_total` metric from scratch. If you're working in your own project, create a simple metric like the one below using one of the measures you created in the previous step. ```yaml metrics: @@ -171,7 +179,8 @@ metrics: To continue building out your metrics based on your organization's needs, refer to the [Build your metrics](/docs/build/build-metrics-intro) for detailed info on how to define different metric types and semantic models. ## Configure the MetricFlow time spine model -MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article walks thorough how to add the `metricflow_time_spine` model to your project.](/docs/build/metricflow-time-spine) + +MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article](/docs/build/metricflow-time-spine) walks thorough how to add the `metricflow_time_spine` model to your project. ## Test and query metrics @@ -180,16 +189,16 @@ For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Comi * dbt Core or Developer plan users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. ::: -Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on how to install the CLI, and a refrence for the CLI commands. +Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on how to install the CLI and a reference for the CLI commands. **Query and commit your metrics using the CLI:** -Metricflow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt build` before preceding to ensure the data exists in your warehouse. +MetricFlow needs a semantic_manifest.json in order to build a semantic graph. To generate a semantic_manifest.json artifact run `dbt parse`. This will create the file in your `/target` directory. If you're working from the Jaffle shop example, run `dbt seed && dbt build` before preceding to ensure the data exists in your warehouse. 1. Make sure you have the MetricFlow CLI installed and up to date. 2. Run `mf --help` to confirm you have MetricFlow installed and view the available commands. 3. Run `mf query --metrics --group-by ` to query the metrics and dimensions. i.e `mf query --metrics order_total --group-by metric_time` -4. Verify that the metric values are what you expect. To futher understand how the metric is being generated, you can view the generated SQL if you type `--explain` in the CLI. +4. Verify that the metric values are what you expect. To further understand how the metric is being generated, you can view the generated SQL if you type `--explain` in the CLI. 5. Run `mf validate-configs` to run validation on your semantic models and metrics. 6. Commit and merge the code changes that contain the metric definitions. diff --git a/website/docs/docs/dbt-cloud-apis/sl-manifest.md b/website/docs/docs/dbt-cloud-apis/sl-manifest.md index 08bfe416c4e..6d388c01e44 100644 --- a/website/docs/docs/dbt-cloud-apis/sl-manifest.md +++ b/website/docs/docs/dbt-cloud-apis/sl-manifest.md @@ -14,11 +14,14 @@ import LegacyInfo from '/snippets/_legacy-sl-callout.md'; -dbt creates an [artifact](/reference/artifacts/dbt-artifacts) file called the "Semantic Manifest" (`semantic_manifest.json`) that MetricFlow needs to build properly, and that the Semantic Layer needs to run metric queries. This artifact contains comprehensive information about your Semantic Layer. It is an internal file, that acts as the integration point with MetricFlow. MetricFlow will use the semantic manifest produced by core to instantiate a data flow plan, and ultimatley generate SQL from Semantic Layer query requests. You can use it as a valuable reference to understand the structure and details of your data models. +dbt creates an [artifact](/reference/artifacts/dbt-artifacts) file called the "Semantic Manifest" (`semantic_manifest.json`), which MetricFlow requires to build and run metric queries properly for the Semantic Layer. This artifact contains comprehensive information about your Semantic Layer. It is an internal file, that acts as the integration point with MetricFlow. -Similar to the `manifest.json` file, the `semantic_manifest.json` also lives in the `/target` directory of your dbt project. This is where dbt stores various artifacts (such as compiled models and tests) generated during the execution of your project. +By using the semantic manifest produced by dbt Core, MetricFlow will instantiate a data flow plan and generate SQL from Semantic Layer query requests. You can it as a valuable reference to understand the structure and details of your data models. + +Similar to the [`manifest.json` file](/reference/artifacts/manifest-json), the `semantic_manifest.json` also lives in the `/target` directory of your dbt project. This is where dbt stores various artifacts (such as compiled models and tests) generated during the execution of your project. + +## How it's produced -# How is it Produced The `semantic_manifest.json` is produced whenever your dbt project is parsed. The easiest way to generate the file yourself is to run `dbt parse`. Since `dbt run`, `dbt build`, and `dbt compile` all parse your dbt project, these commands will generate a semantic manifest as well. diff --git a/website/docs/guides/migration/sl-migration.md b/website/docs/guides/migration/sl-migration.md index 5868f358a2e..43facab9d50 100644 --- a/website/docs/guides/migration/sl-migration.md +++ b/website/docs/guides/migration/sl-migration.md @@ -6,7 +6,7 @@ description: "This migration guide will help you migrate from the legacy dbt Sem tags: [Semantic Layer] --- -The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. The new dbt Semantic Layer is in [public beta](docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and supported on dbt v1.6 or higher. It's available to all dbt Cloud plans (Developer, Team, and Enterprise) and introduces new semantic components, improved governance, enhanced efficiency, data accessibility, and new Semantic Layer APIs. +The dbt Semantic Layer has undergone a [significant revamp](https://www.getdbt.com/blog/dbt-semantic-layer-whats-next/), making it more efficient to define and query metrics. The new dbt Semantic Layer is in [public beta](/docs/dbt-versions/release-notes/July-2023/sl-revamp-beta#public-beta) and supported on dbt v1.6 or higher. It's available to all dbt Cloud plans (Developer, Team, and Enterprise) and introduces new semantic components, improved governance, enhanced efficiency, data accessibility, and new Semantic Layer APIs. This guide is for users who have the legacy dbt Semantic Layer set up and would like to migrate to the new and revamped [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl). The legacy dbt Semantic Layer is supported on dbt v1.5 or lower, uses the dbt_metrics package, and will be deprecated. @@ -40,19 +40,21 @@ Starting from dbt v1.6, the metrics specification dbt Core has been updated to s - [Metrics](/docs/build/metrics-overview) To migrate to the new specification, you'll need to: + - Create net new semantic model configs using YAML files in your dbt project - Upgrade your existing metrics configs to the new spec -To help ensure a smooth transition, you can use our [custom-built migration tool](https://github.com/dbt-labs/dbt-converter/blob/master/README.md) that automates this process. -**Note**, this tool doesn't support [derived metrics](/docs/build/derived) and you'll need to migrate them over manually. +To help ensure a smooth transition, use our [custom-built migration tool](https://github.com/dbt-labs/dbt-converter/blob/master/README.md) that automates this process. + +**Note**, this doesn't support [derived metrics](/docs/build/derived) and you'll need to migrate them over manually. For detailed instructions on how to configure semantic models and metrics, refer to our [getting started guide](/docs/use-dbt-semantic-layer/quickstart-sl). -Please be aware that you will need to upgrade your development environment to dbt>1.6 if you're developing Metrics and Semantic Models in the IDE. This will upgrade the version for other analysts on your team who are using the IDE for that project, and may cause errors if they still have metrics defined using the spec in dbt 1.5 or below. +* Note, if you're developing in metrics and semantic models in the dbt Cloud IDE, make sure to update your development environment to dbt version 1.6 or newer. This update will affect other analysts on your team who use the IDE for the same project. If they have metrics defined using dbt version 1.5 or older, it might cause errors. #### Test your metrics -Once you’ve created your semantic models and created or updated your metrics, you can test your updated configs using the MetricFlow CLI tools. Note this is only available to users developing metrics locally: +Once you’ve created your semantic models and created or updated your metrics, you can test your updated configs using the MetricFlow CLI tools. Note, this is only available to users developing metrics locally: 1. Install the CLI via `pip install "dbt-metricflow[your_adapter_name]`. 2. Run `dbt parse`. This will parse your project and create a `semantic_manifest.json` file in your target directory. @@ -60,7 +62,7 @@ Once you’ve created your semantic models and created or updated your metrics, 4. Run `mf validate-configs` to run semantic and warehouse validations. This ensures are configs are valid, and the underlying objects exist in your warehouse. 5. Test querying a metric by running `mf query --metrics --group-by ` -If you are migrating using the IDE in cloud, we will run semantic validations whenever we parse or compile your project. This will ensure that your metrics and semantic models are configured correctly. You will need to test querying metrics values in downstream tools. +If you migrate using the dbt Cloud IDE, we will perform semantic validations every time we parse or compile your project. This will ensure correct configuration of your metrics and semantic models. You will need to test querying metrics values in downstream tools. Once you've thoroughly tested and verified the accuracy of your metrics, commit and push the change to your dbt repository. After you merge the new configurations, **the legacy Semantic Layer will no longer work**. To minimize downtime, we recommend you promptly complete step 2 and set up your environment on the new Semantic Layer. @@ -130,7 +132,7 @@ To help ensure a smooth transition, you can use our [custom-built migration tool For detailed instructions on how to configure semantic models and metrics, refer to our [getting started guide](/docs/use-dbt-semantic-layer/quickstart-sl). -Please be aware that you will need to upgrade your development environment to dbt>1.6 if you're developing Metrics and Semantic Models in the IDE. This will upgrade the version for other analysts on your team who are using the IDE, and may cause errors if they still have metrics defined using the spec in dbt 1.5 or below. +* Note, if you're developing in metrics and semantic models in the dbt Cloud IDE, make sure to update your development environment to dbt version 1.6 or newer. This update will affect other analysts on your team who use the IDE for the same project. If they have metrics defined using dbt version 1.5 or older, it might cause errors. #### Test your metrics @@ -142,7 +144,7 @@ Once you’ve created your semantic models and created or updated your metrics, 4. Run `mf validate-configs` to run semantic and warehouse validations. This ensures are configs are valid, and the underlying objects exist in your warehouse. 5. Test querying a metric by running `mf query --metrics --group-by ` -If you are migrating using the IDE in cloud, we will run semantic validations whenever we parse or compile your project. This will ensure that your metrics and semantic models are configured correctly. You will need to test querying metrics values in downstream tools. +If you migrate using the dbt Cloud IDE, we will perform semantic validations every time we parse or compile your project. This will ensure correct configuration of your metrics and semantic models. You will need to test querying metrics values in downstream tools. Once you've thoroughly tested and verified the accuracy of your metrics, commit and push the changes to your dbt repository. After you merge the new configurations, **the legacy Semantic Layer will no longer work**. @@ -163,4 +165,3 @@ Now that your Semantic Layer is set up, you will need to update any downstream i - [Set up the dbt Semantic Layer](/docs/use-dbt-semantic-layer/setup-sl) - [Semantic Layer API](/docs/dbt-cloud-apis/sl-api-overview) - [dbt metrics converter](https://github.com/dbt-labs/dbt-converter) -- Developer workflow demo From 0c27848115cb1ab8dacc0e4ccf2df3ab8b22da7c Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 25 Jul 2023 13:32:19 +0100 Subject: [PATCH 283/703] update commands --- .../dbt-cloud-ide/develop-in-the-cloud.md | 1 + website/docs/reference/dbt-commands.md | 28 ++----------------- 2 files changed, 3 insertions(+), 26 deletions(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md index 3c33114ac26..fd7eefdb4c3 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md @@ -7,6 +7,7 @@ tags: [IDE] --- The dbt Cloud integrated development environment (IDE) is a single interface for building, testing, running, and version-controlling dbt projects from your browser. With the Cloud IDE, you can compile dbt code into SQL and run it against your database directly. The IDE leverages the dbt-server, making the IDE faster and more reliable. + ## Prerequisites To develop in the Cloud IDE, make sure you have the following: diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index b0adf00e212..ea5dbddef16 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -3,12 +3,11 @@ title: "dbt Command reference" --- dbt is typically run one of two ways: + * In [dbt Cloud](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) * On the [command line interface](/docs/core/about-the-cli) (CLI) -The following sections outline the commands supported by dbt and their relevant flags. Note that some commands are only supported when using the CLI. - -For information about selecting models on the command line, consult the docs on [Model selection syntax](/reference/node-selection/syntax). +The following sections outline the commands supported by dbt and their relevant flags. For information about selecting models on the command line, consult the docs on [Model selection syntax](/reference/node-selection/syntax). ### Available commands @@ -86,26 +85,3 @@ Use the following dbt commands in the [CLI](/docs/core/about-the-cli) and use th --> - - From 39464efbf9085b68d94a335acff039e08482253c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 14:44:34 +0100 Subject: [PATCH 284/703] Update dbt-commands.md --- website/docs/reference/dbt-commands.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index ea5dbddef16..a5d9fe39dc5 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -11,11 +11,13 @@ The following sections outline the commands supported by dbt and their relevant ### Available commands + + Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/develop-in-the-cloud) or [CLI](/docs/core/about-the-cli). Use the `dbt` prefix. For example, to run the `test` command, type `dbt test`. - [build](/reference/commands/build): build and test all selected resources (models, seeds, snapshots, tests) - [clean](/reference/commands/clean): deletes artifacts present in the dbt project -- [clone](/reference/commands/clone): clone selected models from specified state (requires dbt 1.6 or higher) +- [clone](/reference/commands/clone): clone selected models from the specified state (requires dbt 1.6 or higher) - [compile](/reference/commands/compile): compiles (but does not run) the models in a project - [debug](/reference/commands/debug): debugs dbt connections and projects - [deps](/reference/commands/deps): downloads dependencies for a project @@ -31,10 +33,12 @@ Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/ - [source](/reference/commands/source): provides tools for working with source data (including validating that sources are "fresh") - [test](/reference/commands/test): executes tests defined in a project - [init](/reference/commands/init): initializes a new dbt project (CLI only) -- [rpc](/reference/commands/rpc): runs an RPC server that clients can submit queries to (CLI only) - + From 1ecc9d24e9b87bcfadc461cfc25b580849c5b264 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Tue, 25 Jul 2023 14:55:59 +0100 Subject: [PATCH 285/703] fix version --- website/docs/reference/dbt-commands.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/dbt-commands.md b/website/docs/reference/dbt-commands.md index a5d9fe39dc5..22cac459f4b 100644 --- a/website/docs/reference/dbt-commands.md +++ b/website/docs/reference/dbt-commands.md @@ -36,7 +36,7 @@ Use the following dbt commands in the [dbt Cloud IDE](/docs/cloud/dbt-cloud-ide/ - + Select the tabs that are relevant to your development workflow. For example, if you develop in the dbt Cloud IDE, select **dbt Cloud**. From 41230c750b0ae2bdc8e157ff1917f5f3975b2980 Mon Sep 17 00:00:00 2001 From: Dave Haworth Date: Tue, 25 Jul 2023 09:26:59 -0500 Subject: [PATCH 286/703] fix indenting, add Snowflake SSO note --- .../docs/cloud/secure/redshift-privatelink.md | 16 ++++++++-------- .../docs/cloud/secure/snowflake-privatelink.md | 7 +++++++ 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/website/docs/docs/cloud/secure/redshift-privatelink.md b/website/docs/docs/cloud/secure/redshift-privatelink.md index 56d5dd13a36..fc0ceeea334 100644 --- a/website/docs/docs/cloud/secure/redshift-privatelink.md +++ b/website/docs/docs/cloud/secure/redshift-privatelink.md @@ -55,19 +55,19 @@ Creating an Interface VPC PrivateLink connection requires creating multiple AWS - Target Type: **IP** - _Standard Redshift_ + - **Standard Redshift** - - Use IP addresses from the Redshift cluster’s **Network Interfaces** whenever possible. While IPs listed in the **Node IP addresses** section will work, they are also more likely to change. - + - Use IP addresses from the Redshift cluster’s **Network Interfaces** whenever possible. While IPs listed in the **Node IP addresses** section will work, they are also more likely to change. + - - There will likely be only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will also be created for that AZ. The NI IP from the original AZ will still work, but the new NI IP can also be added to the Target Group. If adding additional IPs, note that the NLB will also need to add the corresponding AZ. Once created, the NI(s) should stay the same (This is our observation from testing, but AWS does not officially document it). + - There will likely be only one Network Interface (NI) to start, but if the cluster fails over to another availability zone (AZ), a new NI will also be created for that AZ. The NI IP from the original AZ will still work, but the new NI IP can also be added to the Target Group. If adding additional IPs, note that the NLB will also need to add the corresponding AZ. Once created, the NI(s) should stay the same (This is our observation from testing, but AWS does not officially document it). - _Redshift Serverless_ + - **Redshift Serverless** - - To find the IP addresses for Redshift Serverless instance locate and copy the endpoint (only the URL listed before the port) in the Workgroup configuration section of the AWS console for the instance. - + - To find the IP addresses for Redshift Serverless instance locate and copy the endpoint (only the URL listed before the port) in the Workgroup configuration section of the AWS console for the instance. + - - From a command line run the command `nslookup ` using the endpoint found in the previous step and use the associated IP(s) for the Target Group. + - From a command line run the command `nslookup ` using the endpoint found in the previous step and use the associated IP(s) for the Target Group. - Target Group protocol: **TCP** diff --git a/website/docs/docs/cloud/secure/snowflake-privatelink.md b/website/docs/docs/cloud/secure/snowflake-privatelink.md index 0cbd6e96aad..0a607529ffe 100644 --- a/website/docs/docs/cloud/secure/snowflake-privatelink.md +++ b/website/docs/docs/cloud/secure/snowflake-privatelink.md @@ -7,6 +7,13 @@ sidebar_label: "PrivateLink for Snowflake" The following steps will walk you through the setup of a Snowflake AWS PrivateLink endpoint in the dbt Cloud multi-tenant environment. +:::info Snowflake SSO with PrivateLink +Users connecting to Snowflake using SSO over a PrivateLink connection from dbt Cloud will also require access to a PrivateLink endpoint from their local workstation. + +>Currently, for any given Snowflake account, SSO works with only one account URL at a time: either the public account URL or the URL associated with the private connectivity service +- [Snowflake SSO with Private Connectivity](https://docs.snowflake.com/en/user-guide/admin-security-fed-auth-overview#label-sso-private-connectivity) +::: + ## Configure PrivateLink 1. Open a Support case with Snowflake to allow access from the dbt Cloud AWS account From d0b13b39fae57fb47028b36d7e050434f7c5aa4f Mon Sep 17 00:00:00 2001 From: Dave Haworth Date: Tue, 25 Jul 2023 09:37:34 -0500 Subject: [PATCH 287/703] fix Snowflake SSO note formatting --- website/docs/docs/cloud/secure/snowflake-privatelink.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/secure/snowflake-privatelink.md b/website/docs/docs/cloud/secure/snowflake-privatelink.md index 0a607529ffe..6e82550e8d8 100644 --- a/website/docs/docs/cloud/secure/snowflake-privatelink.md +++ b/website/docs/docs/cloud/secure/snowflake-privatelink.md @@ -7,10 +7,11 @@ sidebar_label: "PrivateLink for Snowflake" The following steps will walk you through the setup of a Snowflake AWS PrivateLink endpoint in the dbt Cloud multi-tenant environment. -:::info Snowflake SSO with PrivateLink +:::note Snowflake SSO with PrivateLink Users connecting to Snowflake using SSO over a PrivateLink connection from dbt Cloud will also require access to a PrivateLink endpoint from their local workstation. >Currently, for any given Snowflake account, SSO works with only one account URL at a time: either the public account URL or the URL associated with the private connectivity service + - [Snowflake SSO with Private Connectivity](https://docs.snowflake.com/en/user-guide/admin-security-fed-auth-overview#label-sso-private-connectivity) ::: From 737b59d37c6e089600bccd1395c96ded9be43862 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 15:49:03 +0100 Subject: [PATCH 288/703] Update metricflow-time-spine.md fix file name --- website/docs/docs/build/metricflow-time-spine.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 0f258e30d8d..39413014a67 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -9,9 +9,10 @@ tags: [Metrics, Semantic Layer] MetricFlow uses a timespine table to construct cumulative metrics. By default, MetricFlow expects the timespine table to be named `metricflow_time_spine` and doesn't support using a different name. To create this table, you need to create a model in your dbt project called `metricflow_time_spine` and add the following code: + ```sql -filename: metricflow_time_spine.sql + {{ config( materialized = 'table', @@ -37,6 +38,8 @@ final as ( select * from final ``` + + ```sql --- BigQuery supports DATE() instead of TO_DATE(). Use this model if you're using BigQuery {{config(materialized='table')}} From d2d4cfc74c800c8c6641b9d98e79dada4b462910 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 25 Jul 2023 15:58:43 +0100 Subject: [PATCH 289/703] Update metricflow-time-spine.md updating filename error --- website/docs/docs/build/metricflow-time-spine.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/metricflow-time-spine.md b/website/docs/docs/build/metricflow-time-spine.md index 39413014a67..bfab9c76bca 100644 --- a/website/docs/docs/build/metricflow-time-spine.md +++ b/website/docs/docs/build/metricflow-time-spine.md @@ -9,7 +9,7 @@ tags: [Metrics, Semantic Layer] MetricFlow uses a timespine table to construct cumulative metrics. By default, MetricFlow expects the timespine table to be named `metricflow_time_spine` and doesn't support using a different name. To create this table, you need to create a model in your dbt project called `metricflow_time_spine` and add the following code: - + ```sql From 129858df706de78632acb0d62af3625b354b7245 Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Tue, 25 Jul 2023 10:24:14 -0700 Subject: [PATCH 290/703] Update website/docs/docs/core/connect-data-platform/redshift-setup.md Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> --- website/docs/docs/core/connect-data-platform/redshift-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index d0978513bf0..96d73777137 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -130,7 +130,7 @@ company-name: -The following table lists the authentication parameters to use IAM autentication. +The following table lists the authentication parameters to use IAM authentication. To set up a Redshift profile using IAM Authentication, set the `method` parameter to `iam` as shown below. Note that a password is not required when using IAM Authentication. For more information on this type of authentication, consult the [Redshift Documentation](https://docs.aws.amazon.com/redshift/latest/mgmt/generating-user-credentials.html) From 4a3040a530f405874cdccfb6bbfc2788b5f2470f Mon Sep 17 00:00:00 2001 From: Jessie Chen <121250701+jiezhen-chen@users.noreply.github.com> Date: Tue, 25 Jul 2023 10:24:19 -0700 Subject: [PATCH 291/703] Update website/docs/docs/core/connect-data-platform/redshift-setup.md Co-authored-by: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> --- website/docs/docs/core/connect-data-platform/redshift-setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/core/connect-data-platform/redshift-setup.md b/website/docs/docs/core/connect-data-platform/redshift-setup.md index 96d73777137..344e1f51639 100644 --- a/website/docs/docs/core/connect-data-platform/redshift-setup.md +++ b/website/docs/docs/core/connect-data-platform/redshift-setup.md @@ -150,7 +150,7 @@ please refer to the official AWS documentation on [Configuration and credential | `iam_profile` | analyst | dbt will use the specified profile from your ~/.aws/config file | | `cluster_id` | CLUSTER_ID| Required for IAM | | `user` | username | Account user to log into your cluster | -| `region` | us-east-1 | Required for IAM autentication | +| `region` | us-east-1 | Required for IAM authentication |
From a02ea1655036baeae0a2111b8184411dbfd4a5b5 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Tue, 25 Jul 2023 11:47:24 -0600 Subject: [PATCH 292/703] Update number of indirect selection modes for Core 1.5+ (#3811) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [Preview](https://deploy-preview-3811--docs-getdbt-com.netlify.app/reference/node-selection/test-selection-examples?version=1.5&indirect-selection-mode=empty#indirect-selection) ## What are you changing in this pull request and why? The count is off by one [here](https://docs.getdbt.com/reference/node-selection/test-selection-examples?version=1.5&indirect-selection-mode=empty#indirect-selection): image ## 🎩 After the fix: image ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) and [About versioning](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/single-sourcing-content.md#adding-a-new-version) so my content adheres to these guidelines. --------- Co-authored-by: Ly Nguyen <107218380+nghi-ly@users.noreply.github.com> --- .../docs/reference/node-selection/test-selection-examples.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/reference/node-selection/test-selection-examples.md b/website/docs/reference/node-selection/test-selection-examples.md index 7e79754ed31..85141c8cd01 100644 --- a/website/docs/reference/node-selection/test-selection-examples.md +++ b/website/docs/reference/node-selection/test-selection-examples.md @@ -74,7 +74,7 @@ The "buildable" and "cautious" modes can be useful in environments when you're o -There are three modes to configure the behavior when performing indirect selection (with `eager` as the default): +These are the modes to configure the behavior when performing indirect selection (with `eager` as the default): 1. `eager` (default) - include ANY test that references the selected nodes 1. `cautious` - restrict to tests that ONLY refer to selected nodes From ea743024764044eb2492ec93ba23afc849cc180b Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 25 Jul 2023 14:47:44 -0400 Subject: [PATCH 293/703] Added table with commands --- .../migration/versions/02-upgrading-to-v1.5.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md index 98605e2ee0f..836b2373ef1 100644 --- a/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md +++ b/website/docs/guides/migration/versions/02-upgrading-to-v1.5.md @@ -56,16 +56,17 @@ models: tests: [] # todo! add tests later config: ... ``` -Some options that could previously be specified _before_ a sub-command can now only be specified afterward. For example, `dbt --profiles-dir . run` isn't valid anymore, and instead, you need to use `dbt run --profiles-dir .`. The list of affected commands are: -- -- - -Also, there are some options that could be previously specified _after_ a sub-command can now only be specified before. For example, `dbt run --log-path foo` isn't valid anymore, and instead, you need to use `dbt --log-path foo run`. The list of affected commands are: -- -- +Some options that could previously be specified _after_ a sub-command can now only be specified _before__. This includes the inverse of the command, `--write-json` and `--no-write-json`, for example. The list of affected commands are: +| --cache-selected-only | --debug | --deprecated-print | --enable-legacy-logger| --fail-fast | +|--------------|--------------|-----------------|-----------|---------------------------| +| --log-cache-events | --log-format | --log-level | --log-path | --macro-debugging | +| --partial-parse | --populate-cache | --print | --printer-width | --quiet | +| --record-timing-info | --send-anonymous-usage-stats | --single-threaded | --static-parser | --use-colors | +| --use-experimental-parser | --version | --version-check | --warn-error | --write-json | +Additionally, some options could be previously specified _before_ a sub-command can now only be specified _after_. Any command _not_ on the above list must appear _after_ the subcommand from v1.5 on. For example, `--profiles-dir`. The built-in [collect_freshness](https://github.com/dbt-labs/dbt-core/blob/1.5.latest/core/dbt/include/global_project/macros/adapters/freshness.sql) macro now returns the entire `response` object, instead of just the `table` result. If you're using a custom override for `collect_freshness`, make sure you're also returning the `response` object; otherwise, some of your dbt commands will never finish. For example: From d2785518d8ff282db187e6a63b7303d16114bedc Mon Sep 17 00:00:00 2001 From: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> Date: Tue, 25 Jul 2023 15:54:16 -0400 Subject: [PATCH 294/703] Update website/docs/docs/cloud/secure/snowflake-privatelink.md --- website/docs/docs/cloud/secure/snowflake-privatelink.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/secure/snowflake-privatelink.md b/website/docs/docs/cloud/secure/snowflake-privatelink.md index 6e82550e8d8..bbbdf04ddf0 100644 --- a/website/docs/docs/cloud/secure/snowflake-privatelink.md +++ b/website/docs/docs/cloud/secure/snowflake-privatelink.md @@ -10,7 +10,7 @@ The following steps will walk you through the setup of a Snowflake AWS PrivateLi :::note Snowflake SSO with PrivateLink Users connecting to Snowflake using SSO over a PrivateLink connection from dbt Cloud will also require access to a PrivateLink endpoint from their local workstation. ->Currently, for any given Snowflake account, SSO works with only one account URL at a time: either the public account URL or the URL associated with the private connectivity service +>Currently, for any given Snowflake account, SSO works with only one account URL at a time: either the public account URL or the URL associated with the private connectivity service. - [Snowflake SSO with Private Connectivity](https://docs.snowflake.com/en/user-guide/admin-security-fed-auth-overview#label-sso-private-connectivity) ::: From 50bf7de2928972e94d46299d7c178916d64eace8 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 14:46:33 -0700 Subject: [PATCH 295/703] Update steps sections and fold in PM feedback --- website/docs/docs/deploy/job-settings.md | 47 +++++++++++++++++++-- website/docs/docs/deploy/slim-ci-jobs.md | 52 +++++++++++++++++++++--- 2 files changed, 90 insertions(+), 9 deletions(-) diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 1f93e103873..6b38fd43501 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -19,12 +19,22 @@ You can create a job and configure it to run on [scheduled days and times](/docs - You must have a dbt Cloud account and [Developer seat license](/docs/cloud/manage-access/seats-and-users). If you don't, you can [sign up](https://www.getdbt.com/signup/) for a [free account](https://www.getdbt.com/pricing/). - You must have a dbt project connected to a [data platform](/docs/cloud/connect-data-platform/about-connections). -- You must [create and schedule a dbt Cloud job](#create-and-schedule-jobs). - You must have [access permission](/docs/cloud/manage-access/about-user-access) to view, create, modify, or run jobs. - You must set up a [deployment environment](/docs/deploy/deploy-environments). ## Create and schedule jobs {#create-and-schedule-jobs} +:::tip Join our beta + +dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, click on the beta tab below. + +If you're interested in joining our beta, please [contact us](mailto:support@getdbt.com). + +::: + + + + 1. Create a new job by clicking **Deploy** in the header, click **Jobs** and then **Create job**. 1. Provide a job name, for example "Hourly Customer Job". 1. Under **Environment**, add the following: @@ -57,6 +67,36 @@ You can create a job and configure it to run on [scheduled days and times](/docs 7. Select **Save**, then click **Run Now** to run your job. Click the run and watch its progress under **Run history**. + + + + +1. On your deployment environment page, click **Create Job** > **Deploy Job** to create a new deploy job. +2. Options in the **Job Description** section: + - **Job Name** — Specify the name for this deploy job. For example, `Daily build`. + - **Environment** — By default, it’s set to the deployment environment you created the deploy job from. +3. Options in the **Execution Settings** section: + - **Commands** — By default, it includes the `dbt build` command. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. + - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this deploy job runs. + - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this deploy job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. + - **Add API trigger** — Set up an [API](/docs/dbt-cloud-apis/overview) trigger to run this deploy job. +4. Options in the **Schedule** section: + - **Run on schedule** — Enable this option to run this deploy job on a set schedule. + - **Timing** and **Run at** — Specify whether to [schedule](#schedule-days) this deploy job using **Exact Intervals** that runs the job at specific times of day, **Intervals** that runs the job every specified number of hours, or to **Enter custom cron schedule (UTC)** that runs the job specified using [cron syntax](#custom-cron-schedule). + - **Days of the Week** — By default, it’s set to every day. +5. (optional) Options in the **Advanced Settings** section: + - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this deploy job runs. + - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this deploy job to the settings in your project. + - **Run Timeout** — Cancel this deploy job if the run time exceeds the timeout value. + - **Compare changes against an environment (Deferral)** option — By default, it’s set to **No deferral**. + - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. + - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. + + + + + + ### Schedule days You can schedule which days of the week and specify customized hours or intervals to run your deploy job with the option **Exact intervals** or **Intervals**. @@ -98,6 +138,5 @@ Some examples are: - [Artifacts](/docs/deploy/artifacts) - [Build and view your docs with dbt Cloud](/docs/collaborate/build-and-view-your-docs) -- [Source freshness](/docs/deploy/source-freshness) -- [Job commands](/docs/deploy/job-commands) -- [Webhooks for your jobs](/docs/deploy/webhooks) \ No newline at end of file +- [Webhooks](/docs/deploy/webhooks) +- [CI jobs](/docs/deploy/slim-ci-jobs) \ No newline at end of file diff --git a/website/docs/docs/deploy/slim-ci-jobs.md b/website/docs/docs/deploy/slim-ci-jobs.md index 35fa3eff46c..638de5b5d5e 100644 --- a/website/docs/docs/deploy/slim-ci-jobs.md +++ b/website/docs/docs/deploy/slim-ci-jobs.md @@ -1,10 +1,10 @@ --- -title: "Slim CI jobs in dbt Cloud" -sidebar_label: "Slim CI jobs" -description: "Learn how to create and set up Slim CI checks to test code changes before deploying to production." +title: "Continuous integration jobs in dbt Cloud" +sidebar_label: "Continuous integration jobs" +description: "Learn how to create and set up CI checks to test code changes before deploying to production." --- -You can set up Slim [continuous integration](/docs/deploy/continuous-integration) (CI) jobs to run when someone opens a new pull request in your dbt repository. By running and testing only _modified_ models — which is what _slim_ refers to — dbt Cloud ensures these jobs are as efficient and resource conscientious as possible on your data platform. +You can set up [continuous integration](/docs/deploy/continuous-integration) (CI) jobs to run when someone opens a new pull request in your dbt repository. By running and testing only _modified_ models &mdash, dbt Cloud ensures these jobs are as efficient and resource conscientious as possible on your data platform. ## Prerequisites @@ -14,10 +14,21 @@ You can set up Slim [continuous integration](/docs/deploy/continuous-integration - If you’re using GitLab, you must use a paid or self-hosted account which includes support for GitLab webhooks. - If you previously configured your dbt project by providing a generic git URL that clones using SSH, you must reconfigure the project to connect through dbt Cloud's native integration. -## Set up Slim CI jobs +## Set up CI jobs dbt Labs recommends that you create your Slim CI job in a dedicated dbt Cloud [deployment environment](/docs/deploy/deploy-environments#create-a-deployment-environment) that's connected to a staging database. Having a separate environment dedicated for CI will provide better isolation between your temporary CI schemas builds and your production data builds. Additionally, sometimes teams need their Slim CI jobs to be triggered when a PR is made to a branch other than main. If your team maintains a staging branch in your release process, having a separate environment will allow you to set a [custom branch](/faqs/environments/custom-branch-settings), and accordingly the CI job in that dedicated environment will be triggered only when PRs are made to the specified, custom branch. +:::tip Join our beta + +dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, click on the beta tab below. + +If you're interested in joining our beta, please [contact us](mailto:support@getdbt.com). + +::: + + + + 1. On your deployment environment page, click **Create One** to create a new CI job. 2. In the **Execution Settings** section: - For the option **Defer to a previous run state**, choose whichever production job that's set to run often. If you don't see any jobs to select from the dropdown, you first need to run a production job successfully. Deferral tells dbt Cloud to compare the manifest of the current CI job against the project representation that was materialized the last time the deferred job was run successfully. By setting this option, dbt Cloud only checks the modified code and compares the changes against what’s running in production, instead of building the full table or the entire DAG. @@ -29,6 +40,37 @@ dbt Labs recommends that you create your Slim CI job in a dedicated dbt Cloud [d 3. In the **Triggers** section, choose the **Continuous Integration** (CI) tab. Then, enable the **Run on Pull Requests** option. This configures pull requests and new commits to be a trigger for the Slim CI job. + + + + +To make CI job creation easier, many options on the **CI job** page are set to default values that dbt Labs recommends that you use. You can change some of these defaults and there are some that you can’t (which are greyed out). + +1. On your **Staging** environment page, click **Create Job** > **Continuous Integration Job** to create a new CI job. + +2. Options in the **Job Description** section: + - **Job Name** — Specify the name for this CI job. + - **Environment** — By default, it’s set to the environment you created the CI job from. + - **Triggered by pull requests** — By default, it’s enabled. + +3. Options in the **Execution Settings** section: + - **Compare changes against an environment (Deferral)** — By default, it’s set to the **Production** environment if you created one. This option allows dbt Cloud to check the state of the code in the PR against the code running in the deferred environment, so as to only check the modified code, instead of building the full table or the entire DAG. + - **Commands** — By default, it includes the `dbt build --select state:modified+` command. This informs dbt Cloud to build only new or changed models and their downstream dependents. Importantly, state comparison can only happen when there is a deferred job selected to compare state to. Click **Add command** to add more [commands](/docs/deploy/job-commands) that you want to be invoked when this job runs. + - **Generate docs on run** — Enable this option if you want to [generate project docs](/docs/collaborate/build-and-view-your-docs) when this job runs. This option is disabled by default since doc generation testing isn't typically performed for every CI check. + - **Add API trigger** — Set up an [API](/docs/dbt-cloud-apis/overview) trigger to run this CI job. In the POST request method, you must also include the pull request ID and `get_sha` value. + +4. (optional) Options in the **Advanced Settings** section: + - **Environment Variables** — Define [environment variables](/docs/build/environment-variables) to customize the behavior of your project when this CI job runs. You can specify that a CI job is running in a _Staging_ or _CI_ environment by setting an environment variable and modifying your project code to behave differently, depending on the context. + - **Target Name** — Define the [target name](/docs/build/custom-target-names) to correspond this CI job to the settings in your project. Similar to **Environment Variables**, this option lets you customize the behavior of the project. You can use this option to specify that a CI job is running in a _Staging_ or _CI_ environment by setting the target name and modifying your project code to behave differently, depending on the context. + - **Run Timeout** — Cancel this CI job if the run time exceeds the timeout value. You can use this option to help ensure that a CI check doesn't consume too many of your warehouse resources. + - **dbt Version** — By default, it’s set to inherit the [dbt version](/docs/dbt-versions/core) from the environment. + - **Threads** — By default, it’s set to 4 [threads](/docs/core/connect-data-platform/connection-profiles#understanding-threads). Increase the thread count to increase model execution concurrency. + - **Run source freshness** — Enable this option to invoke the `dbt source freshness` command before running this CI job. Refer to [Source freshness](/docs/deploy/source-freshness) for more details. + + + + + ## Example pull requests From af3cddfeeda20191a0835ed5181dd6daeab464cf Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 15:08:10 -0700 Subject: [PATCH 296/703] Revert "CI updates phase 2" This reverts commit 0363e20d206b09082719fe2f6cf32700b8ba26fa. --- website/docs/docs/deploy/job-settings.md | 44 --------------- website/docs/docs/deploy/job-triggers.md | 68 ++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 44 deletions(-) create mode 100644 website/docs/docs/deploy/job-triggers.md diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 6b38fd43501..3fcd6dabb76 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -96,47 +96,3 @@ If you're interested in joining our beta, please [contact us](mailto:support@get
- -### Schedule days - -You can schedule which days of the week and specify customized hours or intervals to run your deploy job with the option **Exact intervals** or **Intervals**. - -- **Exact Intervals** — Use this option to set specific times when your job should run. You can enter a comma-separated list of hours (in UTC) when you want the job to run. For example, if you set it to `0,12,23,` the job will run at midnight, noon, and 11 PM UTC. This option is useful if you want your jobs to run at specific times of day and don't need them to run more frequently than once a day. - -- **Intervals** — Use this option to set how often your job runs, in hours. Enter a number between 1 and 23 to represent the interval between job runs. For example, if you set it to **Every 2 hours**, the job will run every 2 hours from midnight UTC. This option is useful if you need to run jobs multiple times per day at regular intervals. - - -:::info - -dbt Cloud uses [Coordinated Universal Time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) (UTC) and does not account for translations to your specific timezone or take into consideration daylight savings time. For example: - -- 0 means 12am (midnight) UTC -- 12 means 12pm (afternoon) UTC -- 23 means 11pm UTC - -::: - -### Custom cron schedule - -You can fully customize the scheduling of your job with the **Enter custom cron schedule** option. Using cron syntax, you can specify the minute, hour, day of the month, month, and day of the week, allowing you to set up complex schedules like running a job on the first Monday of each month. - - - -Use tools such as [crontab.guru](https://crontab.guru/) to generate the correct cron syntax. This tool allows you to input cron snippets and returns their plain English translations. - -Some examples are: - -- `0 * * * *`: Every hour, at minute 0 -- `*/5 * * * *`: Every 5 minutes -- `5 4 * * *`: At exactly 4:05 AM UTC -- `30 */4 * * *`: At minute 30 past every 4th hour (e.g. 4:30AM, 8:30AM, 12:30PM, etc., all UTC) -- `0 0 */2 * *`: At midnight UTC every other day -- `0 0 * * 1`: At midnight UTC every Monday. - - -## Related docs - -- [Artifacts](/docs/deploy/artifacts) -- [Build and view your docs with dbt Cloud](/docs/collaborate/build-and-view-your-docs) -- [Webhooks](/docs/deploy/webhooks) -- [CI jobs](/docs/deploy/slim-ci-jobs) \ No newline at end of file diff --git a/website/docs/docs/deploy/job-triggers.md b/website/docs/docs/deploy/job-triggers.md new file mode 100644 index 00000000000..cb7a1a48088 --- /dev/null +++ b/website/docs/docs/deploy/job-triggers.md @@ -0,0 +1,68 @@ +--- +title: "Job triggers" +id: "job-triggers" +description: "You can configure when and how dbt should run your job" +--- + +In dbt Cloud, you can use the options under **Triggers** to configure when and how dbt should [run your job](/docs/deploy/job-triggers#schedule-job): + +- **Schedule** tab — Use the **Run on schedule** toggle to configure your job to run on either [scheduled days](#schedule-days) or [custom cron-powered schedule](#custom-cron-schedule) +- **Continuous Integration (CI)** tab — Configure [continuous integration](/docs/deploy/continuous-integration) to run when someone opens a new pull request in your dbt repository +- **API** tab — Use the [API](/docs/dbt-cloud-apis/admin-cloud-api) to trigger a job or send events to other systems + + + +## Schedule jobs + +To schedule your job to run at specific days, times, and intervals: +1. Go to the specific job settings, click **Edit**, then go to the **Triggers** section +2. Go to the **Schedule** tab, and toggle **Run on schedule** +3. Use either the [scheduled days](#schedule-days) or the [custom cron-powered schedule](#custom-cron-schedule) method to customize your desired days, times, and intervals. + +### Schedule days + +To set your job's schedule, use the **Schedule Days** option to choose specific days of the week, and select customized hours or intervals. + +Under **Timing**, you can either use customizable hours for jobs that need to run frequently throughout the day or exact intervals for jobs that need to run at specific times: + +- **Every n hours** — Use this option to set how often your job runs, in hours. Enter a number between 1 and 23 to represent the interval between job runs. For example, if you set it to "every 2 hours", the job will run every 2 hours from midnight UTC. This option is useful if you need to run jobs multiple times per day at regular intervals. + +- **At exact intervals** — Use this option to set specific times when your job should run. You can enter a comma-separated list of hours (in UTC) when you want the job to run. For example, if you set it to `0,12,23,` the job will run at midnight, noon, and 11 PM UTC. This option is useful if you want your jobs to run at specific times of day and don't need them to run more frequently than once a day. + +:::info + +dbt Cloud uses [Coordinated Universal Time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time) (UTC) and does not account for translations to your specific timezone or take into consideration daylight savings time. For example: + +- 0 means 12am (midnight) UTC +- 12 means 12pm (afternoon) UTC +- 23 means 11pm UTC + +::: + +### Custom cron schedule + +To fully customize the scheduling of your job, choose the **Custom cron schedule** option and use the "cron" syntax. With this syntax, you can specify the minute, hour, day of the month, month, and day of the week, allowing you to set up complex schedules like running a job on the first Monday of each month. + + + + +Use tools such as [crontab.guru](https://crontab.guru/) to generate the correct cron syntax. This tool allows you to input cron snippets and returns their plain English translations. + +Refer to the following example snippets: + + +- `0 * * * *`: Every hour, at minute 0 +- `*/5 * * * *`: Every 5 minutes +- `5 4 * * *`: At exactly 4:05 AM UTC +- `30 */4 * * *`: At minute 30 past every 4th hour (e.g. 4:30AM, 8:30AM, 12:30PM, etc., all UTC) +- `0 0 */2 * *`: At midnight UTC every other day +- `0 0 * * 1`: At midnight UTC every Monday. + + +## Related docs + +- [Artifacts](/docs/deploy/artifacts) +- [Build and view your docs with dbt Cloud](/docs/collaborate/build-and-view-your-docs) +- [Source freshness](/docs/deploy/source-freshness) +- [Job commands](/docs/deploy/job-commands) +- [Webhooks for your jobs](/docs/deploy/webhooks) \ No newline at end of file From 56538d407e2aa9a6ce4650faccb094f2cc4d3678 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 15:10:11 -0700 Subject: [PATCH 297/703] Revert "Update sidebar" This reverts commit 0341965d67a7b14a0fde2af75cb5a4a58399c66f. --- website/sidebars.js | 1 + 1 file changed, 1 insertion(+) diff --git a/website/sidebars.js b/website/sidebars.js index e52263c5e65..c09e7b784c4 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -337,6 +337,7 @@ const sidebarSettings = { items: [ "docs/deploy/job-settings", "docs/deploy/job-commands", + "docs/deploy/job-triggers", ], }, { From 580f971abe60a2001c5c493b51a51f47fc815358 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 15:15:37 -0700 Subject: [PATCH 298/703] Change filename, add redirect --- website/docs/docs/deploy/{slim-ci-jobs.md => ci-jobs.md} | 0 website/sidebars.js | 2 +- website/static/_redirects | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) rename website/docs/docs/deploy/{slim-ci-jobs.md => ci-jobs.md} (100%) diff --git a/website/docs/docs/deploy/slim-ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md similarity index 100% rename from website/docs/docs/deploy/slim-ci-jobs.md rename to website/docs/docs/deploy/ci-jobs.md diff --git a/website/sidebars.js b/website/sidebars.js index c09e7b784c4..66c52558189 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -345,7 +345,7 @@ const sidebarSettings = { label: "Continuous integration", link: { type: "doc", id: "docs/deploy/continuous-integration" }, items: [ - "docs/deploy/slim-ci-jobs", + "docs/deploy/ci-jobs", ], }, { diff --git a/website/static/_redirects b/website/static/_redirects index 27e30e83c9e..7e41abd7805 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,3 +1,4 @@ +/docs/docs/deploy/slim-ci-jobs /docs/docs/deploy/ci-jobs 301 ## refocus deploy page /docs/collaborate/environments/environments-in-dbt /docs/environments-in-dbt 301 From e275056025f022dc799029a393094ba9e75ba29c Mon Sep 17 00:00:00 2001 From: Jeremy Yeo Date: Wed, 26 Jul 2023 10:33:52 +1200 Subject: [PATCH 299/703] Update lint-format.md Clear up what we mean by root project directory. --- website/docs/docs/cloud/dbt-cloud-ide/lint-format.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md index c486ac8b69c..099641cc22f 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/lint-format.md @@ -67,7 +67,7 @@ SQLFluff is a configurable SQL linter, which means you can configure your own li To configure your own linting rules: -1. Create a new file in the root project directory (the parent or top-level directory for your files). +1. Create a new file in the root project directory (the parent or top-level directory for your files). Note: The root project directory is the directory where your `dbt_project.yml` file resides. 2. Name the file `.sqlfluff` (make sure you add the `.` before `sqlfluff`). 3. [Create](https://docs.sqlfluff.com/en/stable/configuration.html#new-project-configuration) and add your custom config code. 4. Save and commit your changes. From 63038976031e387ed1e55a7021f862955c73999f Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 16:26:35 -0700 Subject: [PATCH 300/703] Fix links bc of filename change --- .../release-notes/07-June-2023/ci-updates-phase1-rn.md | 2 +- website/docs/docs/deploy/ci-jobs.md | 4 ++-- website/docs/docs/deploy/continuous-integration.md | 6 +++--- website/docs/docs/deploy/job-settings.md | 4 ++-- .../environment-setup/2-one-deployment-environment.md | 2 +- .../productionizing-your-dbt-databricks-project.md | 2 +- website/docs/guides/legacy/best-practices.md | 2 +- .../custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md | 2 +- 8 files changed, 12 insertions(+), 12 deletions(-) diff --git a/website/docs/docs/dbt-versions/release-notes/07-June-2023/ci-updates-phase1-rn.md b/website/docs/docs/dbt-versions/release-notes/07-June-2023/ci-updates-phase1-rn.md index c4caf42f355..205049c908b 100644 --- a/website/docs/docs/dbt-versions/release-notes/07-June-2023/ci-updates-phase1-rn.md +++ b/website/docs/docs/dbt-versions/release-notes/07-June-2023/ci-updates-phase1-rn.md @@ -21,4 +21,4 @@ We're excited to introduce a few critical capabilities to dbt Cloud CI that will - **Run CI checks without blocking production runs**. CI checks will no longer consume run slots, meaning you can have as many CI checks running as you want, without impeding your production jobs. -To learn more, refer to [Continuous integration](/docs/deploy/continuous-integration) and [Slim CI jobs](/docs/deploy/slim-ci-jobs). +To learn more, refer to [Continuous integration](/docs/deploy/continuous-integration) and [CI jobs](/docs/deploy/ci-jobs). diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 638de5b5d5e..931da8465ff 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -27,7 +27,7 @@ If you're interested in joining our beta, please [contact us](mailto:support@get ::: - + 1. On your deployment environment page, click **Create One** to create a new CI job. 2. In the **Execution Settings** section: @@ -42,7 +42,7 @@ If you're interested in joining our beta, please [contact us](mailto:support@get - + To make CI job creation easier, many options on the **CI job** page are set to default values that dbt Labs recommends that you use. You can change some of these defaults and there are some that you can’t (which are greyed out). diff --git a/website/docs/docs/deploy/continuous-integration.md b/website/docs/docs/deploy/continuous-integration.md index fbe28173ff6..4f634d4caae 100644 --- a/website/docs/docs/deploy/continuous-integration.md +++ b/website/docs/docs/deploy/continuous-integration.md @@ -4,7 +4,7 @@ sidebar_label: "Continuous integration" description: "You can set up Slim continuous integration (CI) checks to test every single change prior to deploying the code to production just like in a software development workflow." --- -To implement a continuous integration (CI) workflow in dbt Cloud, you can set up automation that tests code changes by running [Slim CI jobs](/docs/deploy/slim-ci-jobs) before merging to production. dbt Cloud tracks the state of what’s running in your production environment so, when you run a Slim CI job, only the modified data assets in your pull request (PR) and their downstream dependencies are built and tested in a staging schema. You can also view the status of the CI checks (tests) directly from within the PR; this information is posted to your Git provider as soon as a Slim CI job completes. Additionally, you can enable settings in your Git provider that allow PRs only with successful CI checks be approved for merging. +To implement a continuous integration (CI) workflow in dbt Cloud, you can set up automation that tests code changes by running [CI jobs](/docs/deploy/ci-jobs) before merging to production. dbt Cloud tracks the state of what’s running in your production environment so, when you run a Slim CI job, only the modified data assets in your pull request (PR) and their downstream dependencies are built and tested in a staging schema. You can also view the status of the CI checks (tests) directly from within the PR; this information is posted to your Git provider as soon as a Slim CI job completes. Additionally, you can enable settings in your Git provider that allow PRs only with successful CI checks be approved for merging. @@ -16,7 +16,7 @@ Using Slim CI helps: ## How Slim CI works -When you [set up Slim CI jobs](/docs/deploy/slim-ci-jobs#set-up-slim-ci-jobs), dbt Cloud listens for webhooks from your Git provider indicating that a new PR has been opened or updated with new commits. When dbt Cloud receives one of these webhooks, it enqueues a new run of the Slim CI job. If you want CI checks to run on each new commit, you need to mark your PR as **Ready for review** in your Git provider — draft PRs _don't_ trigger CI jobs. +When you [set up CI jobs](/docs/deploy/ci-jobs#set-up-ci-jobs), dbt Cloud listens for webhooks from your Git provider indicating that a new PR has been opened or updated with new commits. When dbt Cloud receives one of these webhooks, it enqueues a new run of the Slim CI job. If you want CI checks to run on each new commit, you need to mark your PR as **Ready for review** in your Git provider — draft PRs _don't_ trigger CI jobs. dbt Cloud builds and tests the models affected by the code change in a temporary schema, unique to the PR. This process ensures that the code builds without error and that it matches the expectations as defined by the project's dbt tests. The unique schema name follows the naming convention `dbt_cloud_pr__` (for example, `dbt_cloud_pr_1862_1704`) and can be found in the run details for the given run, as shown in the following image: @@ -24,7 +24,7 @@ dbt Cloud builds and tests the models affected by the code change in a temporary When the Slim CI run completes, you can view the run status directly from within the pull request. dbt Cloud updates the pull request in GitHub, GitLab, or Azure DevOps with a status message indicating the results of the run. The status message states whether the models and tests ran successfully or not. -dbt Cloud deletes the temporary schema from your  when you close or merge the pull request. If your project has database or schema customization using the [generate_database_name](/docs/build/custom-databases#generate_database_name) or [generate_schema_name](/docs/build/custom-schemas#how-does-dbt-generate-a-models-schema-name) macros, dbt Cloud might not drop the temporary schema from your data warehouse. For more information, refer to [Temp PR schema limitations](/docs/deploy/slim-ci-jobs#temp-pr-schema-limitations). +dbt Cloud deletes the temporary schema from your  when you close or merge the pull request. If your project has database or schema customization using the [generate_database_name](/docs/build/custom-databases#generate_database_name) or [generate_schema_name](/docs/build/custom-schemas#how-does-dbt-generate-a-models-schema-name) macros, dbt Cloud might not drop the temporary schema from your data warehouse. For more information, refer to [Temp PR schema limitations](/docs/deploy/ci-jobs#temp-pr-schema-limitations). ## Differences between Slim CI jobs and other deployment jobs diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 3fcd6dabb76..629fe78f299 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -33,7 +33,7 @@ If you're interested in joining our beta, please [contact us](mailto:support@get ::: - + 1. Create a new job by clicking **Deploy** in the header, click **Jobs** and then **Create job**. 1. Provide a job name, for example "Hourly Customer Job". @@ -69,7 +69,7 @@ If you're interested in joining our beta, please [contact us](mailto:support@get - + 1. On your deployment environment page, click **Create Job** > **Deploy Job** to create a new deploy job. 2. Options in the **Job Description** section: diff --git a/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md b/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md index d7d64eda548..a1d500b1cba 100644 --- a/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md +++ b/website/docs/guides/best-practices/environment-setup/2-one-deployment-environment.md @@ -38,7 +38,7 @@ hoverSnippet: Learn how to configure a single deployment environment setup in db 2. Create your **[production deployment environment](/docs/deploy/deploy-environments)**. 3. Define your **dbt Cloud jobs** in the production deployment environment from step 2. 1. **Production job(s)**: You will need to set up **at least one scheduled job** that deploys your project to your production databases/schemas. You may create multiple jobs based on your business SLAs. - 2. **Slim CI Job**: Unlike the production jobs, which are triggered via the scheduler, this job will be triggered when PRs are opened in your repository. Refer to [Slim CI jobs](/docs/deploy/slim-ci-jobs) for details. + 2. **CI Job**: Unlike the production jobs, which are triggered via the scheduler, this job will be triggered when PRs are opened in your repository. Refer to [CI jobs](/docs/deploy/ci-jobs) for details. ### When this works well diff --git a/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md b/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md index 5da8cc6616b..bbda397eac2 100644 --- a/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md +++ b/website/docs/guides/dbt-ecosystem/databricks-guides/productionizing-your-dbt-databricks-project.md @@ -85,7 +85,7 @@ Your CI job will ensure that the models build properly and pass any tests applie - A service principal called *dbt_test_sp* - A new dbt Cloud environment called *test* that defaults to the *test* catalog and uses the *dbt_test_sp* token in the deployment credentials -We recommend setting up a dbt Cloud Slim CI job. This will decrease the job’s runtime by running and testing only modified models, which also reduces compute spend on the lakehouse. To create a Slim CI job, refer to [Set up Slim CI jobs](/docs/deploy/slim-ci-jobs) for details. +We recommend setting up a dbt Cloud Slim CI job. This will decrease the job’s runtime by running and testing only modified models, which also reduces compute spend on the lakehouse. To create a Slim CI job, refer to [Set up CI jobs](/docs/deploy/ci-jobs) for details. With dbt tests and SlimCI, you can feel confident that your production data will be timely and accurate even while delivering at high velocity. diff --git a/website/docs/guides/legacy/best-practices.md b/website/docs/guides/legacy/best-practices.md index 0aad86dd2bc..018d48ba181 100644 --- a/website/docs/guides/legacy/best-practices.md +++ b/website/docs/guides/legacy/best-practices.md @@ -108,7 +108,7 @@ We often: When developing, it often makes sense to only run the model you are actively working on and any downstream models. You can choose which models to run by using the [model selection syntax](/reference/node-selection/syntax). ### Run only modified models to test changes ("slim CI") -To merge code changes with confidence, you want to know that those changes will not cause breakages elsewhere in your project. For that reason, we recommend running models and tests in a sandboxed environment, separated from your production data, as an automatic check in your git workflow. (If you use GitHub and dbt Cloud, read about [how to set up CI jobs](/docs/deploy/slim-ci-jobs). +To merge code changes with confidence, you want to know that those changes will not cause breakages elsewhere in your project. For that reason, we recommend running models and tests in a sandboxed environment, separated from your production data, as an automatic check in your git workflow. (If you use GitHub and dbt Cloud, read about [how to set up CI jobs](/docs/deploy/ci-jobs). At the same time, it costs time (and money) to run and test all the models in your project. This inefficiency feels especially painful if your PR only proposes changes to a handful of models. diff --git a/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md b/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md index 8a6f8965b87..5ea07a1be96 100644 --- a/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md +++ b/website/docs/guides/orchestration/custom-cicd-pipelines/4-dbt-cloud-job-on-pr.md @@ -5,7 +5,7 @@ id: 4-dbt-cloud-job-on-pr :::info Run on PR -If your git provider has a native integration with dbt Cloud, you can take advantage of the setup instructions [here](/docs/deploy/slim-ci-jobs). +If your git provider has a native integration with dbt Cloud, you can take advantage of the setup instructions [here](/docs/deploy/ci-jobs). This section is only for those projects that connect to their git repository using an SSH key. ::: From beb31d270f37dee3dc53df031e24657d70e7685f Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 16:28:27 -0700 Subject: [PATCH 301/703] Update beta callouts --- website/docs/docs/deploy/ci-jobs.md | 2 +- website/docs/docs/deploy/job-settings.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index 931da8465ff..fe2286faab5 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -20,7 +20,7 @@ dbt Labs recommends that you create your Slim CI job in a dedicated dbt Cloud [d :::tip Join our beta -dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, click on the beta tab below. +dbt Labs is currently running a beta that provides improved UI updates for setting up CI jobs. For docs on this, click on the **Beta version** tab below. If you're interested in joining our beta, please [contact us](mailto:support@getdbt.com). diff --git a/website/docs/docs/deploy/job-settings.md b/website/docs/docs/deploy/job-settings.md index 629fe78f299..78561a363db 100644 --- a/website/docs/docs/deploy/job-settings.md +++ b/website/docs/docs/deploy/job-settings.md @@ -26,7 +26,7 @@ You can create a job and configure it to run on [scheduled days and times](/docs :::tip Join our beta -dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, click on the beta tab below. +dbt Labs is currently running a beta that provides improved UI updates for setting up deploy jobs. For docs on this, click on the **Beta version** tab below. If you're interested in joining our beta, please [contact us](mailto:support@getdbt.com). From b231909d3481badc423b2f28cc25569d3265028e Mon Sep 17 00:00:00 2001 From: Joel Labes Date: Wed, 26 Jul 2023 11:38:41 +1200 Subject: [PATCH 302/703] Outdent the user_signup semantic model key --- website/docs/docs/build/join-logic.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/join-logic.md b/website/docs/docs/build/join-logic.md index eb4e02ed423..548f03f236a 100644 --- a/website/docs/docs/build/join-logic.md +++ b/website/docs/docs/build/join-logic.md @@ -115,7 +115,7 @@ semantic_models: type: time type_params: is_primary: true - - name: user_signup + - name: user_signup entities: - name: user_id type: primary From 5c3faf5d5c46534e81fa41782076d5a49460a0c9 Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 16:39:42 -0700 Subject: [PATCH 303/703] Remove "Slim" from CI overview page --- .../docs/deploy/continuous-integration.md | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/website/docs/docs/deploy/continuous-integration.md b/website/docs/docs/deploy/continuous-integration.md index 4f634d4caae..b2f26af728e 100644 --- a/website/docs/docs/deploy/continuous-integration.md +++ b/website/docs/docs/deploy/continuous-integration.md @@ -1,57 +1,57 @@ --- title: "Continuous integration in dbt Cloud" sidebar_label: "Continuous integration" -description: "You can set up Slim continuous integration (CI) checks to test every single change prior to deploying the code to production just like in a software development workflow." +description: "You can set up continuous integration (CI) checks to test every single change prior to deploying the code to production just like in a software development workflow." --- -To implement a continuous integration (CI) workflow in dbt Cloud, you can set up automation that tests code changes by running [CI jobs](/docs/deploy/ci-jobs) before merging to production. dbt Cloud tracks the state of what’s running in your production environment so, when you run a Slim CI job, only the modified data assets in your pull request (PR) and their downstream dependencies are built and tested in a staging schema. You can also view the status of the CI checks (tests) directly from within the PR; this information is posted to your Git provider as soon as a Slim CI job completes. Additionally, you can enable settings in your Git provider that allow PRs only with successful CI checks be approved for merging. +To implement a continuous integration (CI) workflow in dbt Cloud, you can set up automation that tests code changes by running [CI jobs](/docs/deploy/ci-jobs) before merging to production. dbt Cloud tracks the state of what’s running in your production environment so, when you run a CI job, only the modified data assets in your pull request (PR) and their downstream dependencies are built and tested in a staging schema. You can also view the status of the CI checks (tests) directly from within the PR; this information is posted to your Git provider as soon as a CI job completes. Additionally, you can enable settings in your Git provider that allow PRs only with successful CI checks be approved for merging. -Using Slim CI helps: +Using CI helps: - Provide increased confidence and assurances that project changes will work as expected in production. - Reduce the time it takes to push code changes to production, through build and test automation, leading to better business outcomes. - Allow organizations to make code changes in a standardized and governed way that ensure code quality without sacrificing speed. -## How Slim CI works +## How CI works -When you [set up CI jobs](/docs/deploy/ci-jobs#set-up-ci-jobs), dbt Cloud listens for webhooks from your Git provider indicating that a new PR has been opened or updated with new commits. When dbt Cloud receives one of these webhooks, it enqueues a new run of the Slim CI job. If you want CI checks to run on each new commit, you need to mark your PR as **Ready for review** in your Git provider — draft PRs _don't_ trigger CI jobs. +When you [set up CI jobs](/docs/deploy/ci-jobs#set-up-ci-jobs), dbt Cloud listens for webhooks from your Git provider indicating that a new PR has been opened or updated with new commits. When dbt Cloud receives one of these webhooks, it enqueues a new run of the CI job. If you want CI checks to run on each new commit, you need to mark your PR as **Ready for review** in your Git provider — draft PRs _don't_ trigger CI jobs. dbt Cloud builds and tests the models affected by the code change in a temporary schema, unique to the PR. This process ensures that the code builds without error and that it matches the expectations as defined by the project's dbt tests. The unique schema name follows the naming convention `dbt_cloud_pr__` (for example, `dbt_cloud_pr_1862_1704`) and can be found in the run details for the given run, as shown in the following image: -When the Slim CI run completes, you can view the run status directly from within the pull request. dbt Cloud updates the pull request in GitHub, GitLab, or Azure DevOps with a status message indicating the results of the run. The status message states whether the models and tests ran successfully or not. +When the CI run completes, you can view the run status directly from within the pull request. dbt Cloud updates the pull request in GitHub, GitLab, or Azure DevOps with a status message indicating the results of the run. The status message states whether the models and tests ran successfully or not. dbt Cloud deletes the temporary schema from your  when you close or merge the pull request. If your project has database or schema customization using the [generate_database_name](/docs/build/custom-databases#generate_database_name) or [generate_schema_name](/docs/build/custom-schemas#how-does-dbt-generate-a-models-schema-name) macros, dbt Cloud might not drop the temporary schema from your data warehouse. For more information, refer to [Temp PR schema limitations](/docs/deploy/ci-jobs#temp-pr-schema-limitations). -## Differences between Slim CI jobs and other deployment jobs +## Differences between CI jobs and other deployment jobs -The [dbt Cloud scheduler](/docs/deploy/job-scheduler) executes Slim CI jobs differently from other deployment jobs in these important ways: +The [dbt Cloud scheduler](/docs/deploy/job-scheduler) executes CI jobs differently from other deployment jobs in these important ways: -- **Concurrent CI checks** — Slim CI runs triggered by the same dbt Cloud Slim CI job execute concurrently (in parallel), when appropriate -- **Smart cancellation of stale builds** — Automatically cancels stale, in-flight Slim CI runs when there are new commits to the PR -- **Run slot treatment** — Slim CI runs don't consume a run slot +- **Concurrent CI checks** — CI runs triggered by the same dbt Cloud CI job execute concurrently (in parallel), when appropriate +- **Smart cancellation of stale builds** — Automatically cancels stale, in-flight CI runs when there are new commits to the PR +- **Run slot treatment** — CI runs don't consume a run slot ### Concurrent CI checks -When you have teammates collaborating on the same dbt project creating pull requests on the same dbt repository, the same Slim CI job will get triggered. Since each run builds into a dedicated, temporary schema that’s tied to the pull request, dbt Cloud can safely execute Slim CI runs _concurrently_ instead of _sequentially_ (differing from what is done with deployment dbt Cloud jobs). Because no one needs to wait for one Slim CI run to finish before another one can start, with concurrent CI checks, your whole team can test and integrate dbt code faster. +When you have teammates collaborating on the same dbt project creating pull requests on the same dbt repository, the same CI job will get triggered. Since each run builds into a dedicated, temporary schema that’s tied to the pull request, dbt Cloud can safely execute CI runs _concurrently_ instead of _sequentially_ (differing from what is done with deployment dbt Cloud jobs). Because no one needs to wait for one CI run to finish before another one can start, with concurrent CI checks, your whole team can test and integrate dbt code faster. Below describes the conditions when CI checks are run concurrently and when they’re not: -- Slim CI runs with different PR numbers execute concurrently. -- Slim CI runs with the _same_ PR number and _different_ commit SHAs execute serially because they’re building into the same schema. dbt Cloud will run the latest commit and cancel any older, stale commits. For details, refer to [Smart cancellation of stale builds](#smart-cancellation). -- Slim CI runs with the same PR number and same commit SHA, originating from different dbt Cloud projects will execute jobs concurrently. This can happen when two CI jobs are set up in different dbt Cloud projects that share the same dbt repository. +- CI runs with different PR numbers execute concurrently. +- CI runs with the _same_ PR number and _different_ commit SHAs execute serially because they’re building into the same schema. dbt Cloud will run the latest commit and cancel any older, stale commits. For details, refer to [Smart cancellation of stale builds](#smart-cancellation). +- CI runs with the same PR number and same commit SHA, originating from different dbt Cloud projects will execute jobs concurrently. This can happen when two CI jobs are set up in different dbt Cloud projects that share the same dbt repository. ### Smart cancellation of stale builds {#smart-cancellation} -When you push a new commit to a PR, dbt Cloud enqueues a new Slim CI run for the latest commit and cancels any Slim CI run that is (now) stale and still in flight. This can happen when you’re pushing new commits while a CI build is still in process and not yet done. By cancelling runs in a safe and deliberate way, dbt Cloud helps improve productivity and reduce data platform spend on wasteful CI runs. +When you push a new commit to a PR, dbt Cloud enqueues a new CI run for the latest commit and cancels any CI run that is (now) stale and still in flight. This can happen when you’re pushing new commits while a CI build is still in process and not yet done. By cancelling runs in a safe and deliberate way, dbt Cloud helps improve productivity and reduce data platform spend on wasteful CI runs. ### Run slot treatment -Your Slim CI runs don't consume run slots so a CI check will never block a production run. +Your CI runs don't consume run slots so a CI check will never block a production run. From 4a41613080e182589d93c89bcc5dd3b38b5cf4db Mon Sep 17 00:00:00 2001 From: Ly Nguyen Date: Tue, 25 Jul 2023 16:40:26 -0700 Subject: [PATCH 304/703] Nit --- website/docs/docs/deploy/ci-jobs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/deploy/ci-jobs.md b/website/docs/docs/deploy/ci-jobs.md index fe2286faab5..00c9b729b44 100644 --- a/website/docs/docs/deploy/ci-jobs.md +++ b/website/docs/docs/deploy/ci-jobs.md @@ -4,7 +4,7 @@ sidebar_label: "Continuous integration jobs" description: "Learn how to create and set up CI checks to test code changes before deploying to production." --- -You can set up [continuous integration](/docs/deploy/continuous-integration) (CI) jobs to run when someone opens a new pull request in your dbt repository. By running and testing only _modified_ models &mdash, dbt Cloud ensures these jobs are as efficient and resource conscientious as possible on your data platform. +You can set up [continuous integration](/docs/deploy/continuous-integration) (CI) jobs to run when someone opens a new pull request in your dbt repository. By running and testing only _modified_ models, dbt Cloud ensures these jobs are as efficient and resource conscientious as possible on your data platform. ## Prerequisites From a035f7f812881712dd004781b0f45b153a33e982 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:42:59 +0100 Subject: [PATCH 305/703] Update website/docs/docs/build/build-metrics-intro.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 02674fba3df..daa64e1dfac 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -12,7 +12,7 @@ Use MetricFlow in dbt to centrally define your metrics. MetricFlow is a key comp Use familiar constructs like semantic models and metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. :::info -MetricFlow is currently available on dbt v1.6 or higher. MetricFlow, is a new way to define metrics in dbt and replaces the dbt_metrics package. +MetricFlow is currently available on dbt v1.6 or higher. MetricFlow provides a new way to define metrics in dbt and replaces the dbt_metrics package. To fully experience the dbt Semantic Layer, including the ability to query dbt metrics via external integrations, you'll need a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). ::: From 4762266aba895ddabbe2f7d00a1958048d6a3e79 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:43:33 +0100 Subject: [PATCH 306/703] Update website/docs/docs/build/build-metrics-intro.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index daa64e1dfac..2f6b40a873e 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -7,7 +7,7 @@ tags: [Metrics, Semantic Layer, Governance] hide_table_of_contents: true --- -Use MetricFlow in dbt to centrally define your metrics. MetricFlow is a key component of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and is responsible for SQL query construction and defining specifications for dbt semantic models and metrics. +Use MetricFlow in dbt to centrally define your metrics. As a key component of the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl), MetricFlow is responsible for SQL query construction and defining specifications for dbt semantic models and metrics. Use familiar constructs like semantic models and metrics to avoid duplicative coding, optimize your development workflow, ensure data governance for company metrics, and guarantee consistency for data consumers. From f457064f8e6e10af7c72434a6416759a160c9c8d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:44:39 +0100 Subject: [PATCH 307/703] Update website/docs/docs/build/build-metrics-intro.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 2f6b40a873e..316213f077f 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -14,7 +14,7 @@ Use familiar constructs like semantic models and metrics to avoid duplicative co :::info MetricFlow is currently available on dbt v1.6 or higher. MetricFlow provides a new way to define metrics in dbt and replaces the dbt_metrics package. -To fully experience the dbt Semantic Layer, including the ability to query dbt metrics via external integrations, you'll need a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). +To use the dbt Semantic Layer, you must have a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). ::: Before you start, keep the following considerations in mind: From 514b991cd73fb9dda21b7a0ff5ce80eea95b17b9 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:45:13 +0100 Subject: [PATCH 308/703] Update website/docs/docs/build/build-metrics-intro.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 316213f077f..21a32a350d6 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -19,7 +19,7 @@ To use the dbt Semantic Layer, you must have a [dbt Cloud Team or Enterprise acc Before you start, keep the following considerations in mind: -- Define metrics in YAML and query them using the [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). +- Define metrics in YAML and query them using these [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). - You must be on dbt v1.6 or higher to use MetricFlow. [Upgrade your dbt Cloud version](/docs/dbt-versions/upgrade-core-in-cloud) to get started. - MetricFlow currently supports Snowflake, Postgres, BigQuery, Databricks, and Redshift. - Unlock insights and query your metrics using the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and its diverse range of [available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). From b033129f33533e4626cabcb5aec5cdd1f2849217 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:45:22 +0100 Subject: [PATCH 309/703] Update website/docs/docs/build/build-metrics-intro.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 21a32a350d6..1d810dfac56 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -21,7 +21,7 @@ Before you start, keep the following considerations in mind: - Define metrics in YAML and query them using these [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). - You must be on dbt v1.6 or higher to use MetricFlow. [Upgrade your dbt Cloud version](/docs/dbt-versions/upgrade-core-in-cloud) to get started. -- MetricFlow currently supports Snowflake, Postgres, BigQuery, Databricks, and Redshift. +- Use MetricFlow with Snowflake, Postgres, BigQuery, Databricks, or Redshift. - Unlock insights and query your metrics using the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl) and its diverse range of [available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations). From 85195f203bfee330bd41798625760c01128fbdd1 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:45:33 +0100 Subject: [PATCH 310/703] Update website/docs/docs/build/build-metrics-intro.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/build/build-metrics-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/build-metrics-intro.md b/website/docs/docs/build/build-metrics-intro.md index 1d810dfac56..ed10a874a3c 100644 --- a/website/docs/docs/build/build-metrics-intro.md +++ b/website/docs/docs/build/build-metrics-intro.md @@ -17,7 +17,7 @@ MetricFlow is currently available on dbt v1.6 or higher. MetricFlow provides a n To use the dbt Semantic Layer, you must have a [dbt Cloud Team or Enterprise account](https://www.getdbt.com/pricing/). ::: -Before you start, keep the following considerations in mind: +Before you start, consider the following guidelines: - Define metrics in YAML and query them using these [new metric specifications](https://github.com/dbt-labs/dbt-core/discussions/7456). - You must be on dbt v1.6 or higher to use MetricFlow. [Upgrade your dbt Cloud version](/docs/dbt-versions/upgrade-core-in-cloud) to get started. From d6e0c61245e921db7264ed0ed509ecc24d40c77d Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:45:53 +0100 Subject: [PATCH 311/703] Update website/docs/docs/use-dbt-semantic-layer/sl-architecture.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/sl-architecture.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index f350ab6996c..8bcfb7ffbf0 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -2,7 +2,7 @@ title: "dbt Semantic Layer product architecture" id: sl-architecture description: "dbt Semantic Layer product architecture and related questions." -sidebar_label: "Product architecture" +sidebar_label: "Architecture" tags: [Semantic Layer] --- From 5a1b1349804f7bb821d0ad59c4a07cd0e4cf0f31 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:46:02 +0100 Subject: [PATCH 312/703] Update website/docs/docs/use-dbt-semantic-layer/sl-architecture.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/sl-architecture.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index 8bcfb7ffbf0..b78c0723a70 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -1,5 +1,5 @@ --- -title: "dbt Semantic Layer product architecture" +title: "dbt Semantic Layer architecture" id: sl-architecture description: "dbt Semantic Layer product architecture and related questions." sidebar_label: "Architecture" From a849444241c049e8d4a5e105b3dcb650145f5d43 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:47:01 +0100 Subject: [PATCH 313/703] Update website/docs/docs/use-dbt-semantic-layer/sl-architecture.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/sl-architecture.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index b78c0723a70..7bfa1fb4a20 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -8,7 +8,7 @@ tags: [Semantic Layer] -At a high level, the dbt Semantic Layer allows you to define metrics and query them using various interfaces. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). This is possible with the following components: +The dbt Semantic Layer allows you to define metrics and use various interfaces to query them. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). The Semantic Layer includes these components: | Components | Information | Developer plans | Team plans | Enterprise plans | License | From 5664af8a8bf94ea2f6ecc236dd007fa27b73b283 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 10:47:08 +0100 Subject: [PATCH 314/703] Update website/docs/docs/use-dbt-semantic-layer/sl-architecture.md Co-authored-by: Leona B. Campbell <3880403+runleonarun@users.noreply.github.com> --- website/docs/docs/use-dbt-semantic-layer/sl-architecture.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index 7bfa1fb4a20..86bea37b032 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -13,7 +13,7 @@ The dbt Semantic Layer allows you to define metrics and use various interfaces t | Components | Information | Developer plans | Team plans | Enterprise plans | License | | --- | --- | :---: | :---: | :---: | --- | -| **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with the YAML specifications. | ✅ | ✅ | ✅ | BSL package (code is source available) | +| **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with YAML specifications. | ✅ | ✅ | ✅ | BSL package (code is source available) | | **MetricFlow Server**| A proprietary server that takes metric requests and generates optimized SQL for the specific data platform. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| | **Semantic Layer Gateway** | A service that passes queries to MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

❌| ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | | **Semantic Layer API** | The interfaces that allow users to submit metric queries include the MetricFlow CLI and JDBC API. They also serve as the foundation for building first-class integrations with various tools. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| From cd41a64afc68f9d360e49d1e7164c3c1e1bdaf0a Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 11:08:43 +0100 Subject: [PATCH 315/703] Update join-logic.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What are you changing in this pull request and why? [Spotted by](https://getdbt.slack.com/archives/C046L0VTVR6/p1690326468319189?thread_ts=1690241401.197939&cid=C046L0VTVR6) @alexandrafetterman 🦅👀 user_signup was over-indented, this fixes it up --- website/docs/docs/build/join-logic.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/join-logic.md b/website/docs/docs/build/join-logic.md index 548f03f236a..96426424c87 100644 --- a/website/docs/docs/build/join-logic.md +++ b/website/docs/docs/build/join-logic.md @@ -60,7 +60,7 @@ semantic_models: - name: average_purchase_price agg: avg expr: purchase_price - - name: user_signup + - name: user_signup entities: - name: user type: primary From 2be37316983ae54bad81425038f8bc4eb9a0ee68 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 26 Jul 2023 11:32:28 +0100 Subject: [PATCH 316/703] removing jordan's platform sentence --- website/docs/docs/build/sl-getting-started.md | 15 +++++++-------- .../release-notes/06-July-2023/sl-revamp-beta.md | 5 +++-- .../use-dbt-semantic-layer/sl-architecture.md | 4 +++- website/snippets/_new-sl-setup.md | 4 +++- website/static/_redirects | 6 +++--- 5 files changed, 19 insertions(+), 15 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 52979e5c077..705635162b2 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -23,7 +23,7 @@ Use this guide to fully experience the power of a universal dbt Semantic Layer. - Have an understanding of key concepts in [MetricFlow](/docs/build/about-metricflow), which powers the revamped dbt Semantic Layer. - Have both your production and development environments running dbt version 1.6 or higher -- Use Snowflake, BigQuery, Databricks, and Redshift data platform +- Use Snowflake, BigQuery, Databricks, or Redshift data platform - A successful run in the environment where your Semantic Layer is configured - To query with dbt Cloud: * Have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America @@ -46,8 +46,6 @@ Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platfor - `pip install "dbt-metricflow[your_adapter_name]"` * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. -Currently, Snowflake and Postgres are the supported adapters for querying locally (BigQuery, Databricks, and Redshift will be available soon). If you use an adapter other than Snowflake, you can still create metrics, but you will need to test querying them through the [dbt Semantic Layer](/docs/use-dbt-semantic-layer/dbt-sl). - ## Create a semantic model This part of the guide will walk you through setting up semantic models in your dbt project, which consist of [entities](/docs/build/entities), [dimensions](/docs/build/dimensions), and [measures](/docs/build/measures). @@ -184,12 +182,13 @@ MetricFlow requires a time spine for certain metric types and join resolution pa ## Test and query metrics -:::note -For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. However, you can install the [MetricFlow CLI](/docs/build/metricflow-cli) to test and query metrics locally. - * dbt Core or Developer plan users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. -::: +This section will explain how you can test and query metrics locally. Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on how to install it and a reference for the CLI commands. -Before you begin, refer to [MetricFlow CLI](/docs/build/metricflow-cli) for instructions on how to install the CLI and a reference for the CLI commands. +:::tip +- dbt Cloud Team or Enterprise — For public beta, querying metrics in the dbt Cloud IDE isn't yet supported (Coming soon). You'll still be able to run semantic validation on your metrics in the IDE to ensure they are defined correctly. You can also use the MetricFlow CLI to test and query metrics locally. Alternative, you can test using SQL client tools like DataGrip, DBeaver, or RazorSQL. + +- dbt Core or Developer plan — Users can only test and query metrics manually using the CLI, but won't be able to use the dbt Semantic Layer to dynamically query metrics. +::: **Query and commit your metrics using the CLI:** diff --git a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md index d8bb7c71940..c29468199a8 100644 --- a/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md +++ b/website/docs/docs/dbt-versions/release-notes/06-July-2023/sl-revamp-beta.md @@ -54,7 +54,8 @@ The dbt Semantic Layer is currently available as a public beta, which means: To experience the universal dbt Semantic Layer and its enhanced beta capabilities, check out: -- [New dbt Semantic Layer documents](/docs/use-dbt-semantic-layer/dbt-sl) +- [Introducing the new dbt Semantic Layer](https://www.getdbt.com/blog/introducing-new-look-dbt-semantic-layer) +- [dbt Semantic Layer docs](/docs/use-dbt-semantic-layer/dbt-sl) - [dbt Semantic Layer get started guide](/docs/use-dbt-semantic-layer/quickstart-sl) - [Build your metrics with MetricFlow](/docs/build/build-metrics-intro) -- BLOG announcement link. + diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index 86bea37b032..da634a87b73 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -8,7 +8,9 @@ tags: [Semantic Layer] -The dbt Semantic Layer allows you to define metrics and use various interfaces to query them. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). The Semantic Layer includes these components: +The dbt Semantic Layer allows you to define metrics and use various interfaces to query them. The Semantic Layer does the heavy lifting to find where the queried data exists in your data platform and generates the SQL to make the request (including performing joins). + +The Semantic Layer includes these components: | Components | Information | Developer plans | Team plans | Enterprise plans | License | diff --git a/website/snippets/_new-sl-setup.md b/website/snippets/_new-sl-setup.md index 71488507fa1..6a01fd8bc86 100644 --- a/website/snippets/_new-sl-setup.md +++ b/website/snippets/_new-sl-setup.md @@ -1,4 +1,6 @@ -You can set up the dbt Semantic Layer in dbt Cloud at the environment and project level. To configure the new Semantic Layer, you must have a successful run in your new environment. +You can set up the dbt Semantic Layer in dbt Cloud at the environment and project level. Before you begin: +- You must have a dbt Cloud Team or Enterprise [multi-tenant](/docs/cloud/about-cloud/regions-ip-addresses) deployment, hosted in North America. +- You must have a successful run in your new environment. :::tip If you're using the legacy Semantic Layer, we **highly** recommend you [upgrade your dbt version](/docs/dbt-versions/upgrade-core-in-cloud) to dbt v1.6 or higher to use the new dbt Semantic Layer. Refer to the dedicated [migration guide](/guides/migration/sl-migration) for more info. diff --git a/website/static/_redirects b/website/static/_redirects index f72df13a7f0..ddb585f17b4 100644 --- a/website/static/_redirects +++ b/website/static/_redirects @@ -1,12 +1,12 @@ ## semantic layer -https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer https://www.getdbt.com/blog/new-dbt-semantic-layer-spec-dna/ 301 -https://docs.getdbt.com/blog/how-to-design-and-structure-metrics https://www.getdbt.com/blog/new-dbt-semantic-layer-spec-dna/ 301 - +https://docs.getdbt.com/blog/understanding-the-components-of-the-dbt-semantic-layer /docs/use-dbt-semantic-layer/dbt-sl?version=1.6 301 +https://docs.getdbt.com/blog/how-to-design-and-structure-metrics /docs/use-dbt-semantic-layer/dbt-sl?version=1.6 301 /guides/dbt-ecosystem/sl-partner-integration-guide /docs/use-dbt-semantic-layer/avail-sl-integrations 301 /docs/use-dbt-semantic-layer/dbt-semantic-layer /docs/use-dbt-semantic-layer/dbt-sl 301 /docs/use-dbt-semantic-layer/set-up-semantic-layer /docs/use-dbt-semantic-layer/setup-sl 301 /docs/use-dbt-semantic-layer/quickstart-semantic-layer /docs/use-dbt-semantic-layer/quickstart-sl 301 + ## refocus deploy page /docs/collaborate/environments/environments-in-dbt /docs/environments-in-dbt 301 /docs/collaborate/environments/dbt-cloud-environments /docs/deploy/dbt-cloud-environments 301 From 01967daf5f75d500c4534371fb0e335bce739547 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 26 Jul 2023 11:37:04 +0100 Subject: [PATCH 317/703] fix typo --- website/docs/docs/build/sl-getting-started.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 705635162b2..b052ba14eda 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -43,7 +43,7 @@ Before you begin, install the [MetricFlow CLI](/docs/build/metricflow-cli) as an Use pip install `metricflow` and your [dbt adapter](/docs/supported-data-platforms): - Create or activate your virtual environment. `python -m venv venv` or `source your-venv/bin/activate` -- `pip install "dbt-metricflow[your_adapter_name]"` +- Run `pip install "dbt-metricflow[your_adapter_name]"` * You must specify `[your_adapter_name]`. For example, run `pip install "dbt-metricflow[snowflake]"` if you use a Snowflake adapter. ## Create a semantic model @@ -178,7 +178,7 @@ To continue building out your metrics based on your organization's needs, refer ## Configure the MetricFlow time spine model -MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article](/docs/build/metricflow-time-spine) walks thorough how to add the `metricflow_time_spine` model to your project. +MetricFlow requires a time spine for certain metric types and join resolution patterns, like cumulative metrics. You will have to create this model in your dbt project. [This article](/docs/build/metricflow-time-spine) explains how to add the `metricflow_time_spine` model to your project. ## Test and query metrics From e0b6a49401e498aa274be717ba4952d5771b0d4c Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 26 Jul 2023 12:21:18 +0100 Subject: [PATCH 318/703] Update develop-in-the-cloud.md fix bullet spacing --- .../docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md index a128cbb9bd1..000723a933c 100644 --- a/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md +++ b/website/docs/docs/cloud/dbt-cloud-ide/develop-in-the-cloud.md @@ -37,7 +37,7 @@ The Cloud IDE is a powerful tool that can help streamline and govern your data p All of these [features](#cloud-ide-features) work together to create a powerful editing environment that can help you write and maintain high-quality SQL code in less time. Whether you're a seasoned developer or just starting out, the Cloud IDE has everything you need to be productive, collaborative, and efficient. - + ## Cloud IDE features @@ -76,7 +76,7 @@ There are three start-up states when using or launching the Cloud IDE: - **Creation start —** This is the state where you are starting the IDE for the first time. You can also view this as a *cold start* (see below), and you can expect this state to take longer because the git repository is being cloned. - **Cold start —** This is the process of starting a new develop session, which will be available for you for three hours. The environment automatically turns off three hours after the last activity with the rpc server. This includes compile, preview, or any dbt invocation, however, it *does not* include editing and saving a file. --** Hot start —** This is the state of resuming an existing or active develop session within three hours of the last activity. +- **Hot start —** This is the state of resuming an existing or active develop session within three hours of the last activity. ### Work retention @@ -152,7 +152,7 @@ The dbt Cloud IDE makes it possible to [build and view](/docs/collaborate/build-